SYMBOLCOMMON_NAMEaka. SYNONYMS
win.dreambot (Back to overview)

DreamBot

VTCollection     URLhaus    

2010 Gozi v2.0, Gozi ISFB, ISFB, Pandemyia(*)
2014 Dreambot (Gozi ISFB variant)

In 2014, a variant of Gozi ISFB was developed. Mainly, the dropper performs additional anti-vm checks (vmware, vbox, qemu), while the actual bot-dll remains unchanged in most parts. New functionality, such as TOR support, was added though and often, the Fluxxy fast-flux network is used.

See win.gozi for additional historical information.

References
2022-08-08 ⋅ Medium CSIS Techblog ⋅ Benoît Ancel
An inside view of domain anonymization as-a-service — the BraZZZerSFF infrastructure
Riltok magecart Anubis Azorult BetaBot Buer CoalaBot CryptBot DiamondFox DreamBot GCleaner ISFB Loki Password Stealer (PWS) MedusaLocker MeguminTrojan Nemty PsiX RedLine Stealer SmokeLoader STOP TinyNuke Vidar Zloader
2021-01-28 ⋅ Youtube (Virus Bulletin) ⋅ Benoît Ancel
The Bagsu banker case
Azorult DreamBot Emotet Pony TrickBot ZeusAction
2020-09-02 ⋅ RiskIQ ⋅ Jordan Herman
The Inter Skimmer Kit
magecart DreamBot TeslaCrypt
2020-08-28 ⋅ Checkpoint ⋅ Check Point Research
Gozi: The Malware with a Thousand Faces
DreamBot ISFB LOLSnif SaiGon
2020-05-01 ⋅ CSIS ⋅ Benoît Ancel
The end of Dreambot? Obituary for a loved piece of Gozi.
DreamBot
2020-02-07 ⋅ Medium CSIS Techblog ⋅ Benoît Ancel
InstallCapital — When AdWare Becomes Pay-per-Install Cyber-Crime
DreamBot Glupteba
2017-05-29 ⋅ Lokalhost.pl ⋅ Maciej Kotowicz
Gozi Tree
DreamBot Gozi ISFB Powersniff
2016-08-29 ⋅ Proofpoint ⋅ Proofpoint Staff
Nightmare on Tor Street: Ursnif variant Dreambot adds Tor functionality
DreamBot
Yara Rules
[TLP:WHITE] win_dreambot_auto (20260917 | Detects win.dreambot.)
rule win_dreambot_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-09-17"
        version = "1"
        description = "Detects win.dreambot."
        info = "autogenerated rule brought to you by yara-signator"
        tool = "yara-signator v0.6.0"
        signator_config = "callsandjumps;datarefs;binvalue"
        malpedia_reference = "https://malpedia.caad.fkie.fraunhofer.de/details/win.dreambot"
        malpedia_rule_date = "20260916"
        malpedia_hash = "53a643781c18e08f4a50949af60172d837a0b6f6"
        malpedia_version = "20260917"
        malpedia_license = "CC BY-SA 4.0"
        malpedia_sharing = "TLP:WHITE"

    /* DISCLAIMER
     * The strings used in this rule have been automatically selected from the
     * disassembly of memory dumps and unpacked files, using YARA-Signator.
     * The code and documentation is published here:
     * https://github.com/fxb-cocacoding/yara-signator
     * As Malpedia is used as data source, please note that for a given
     * number of families, only single samples are documented.
     * This likely impacts the degree of generalization these rules will offer.
     * Take the described generation method also into consideration when you
     * apply the rules in your use cases and assign them confidence levels.
     */


    strings:
        $sequence_0 = { ff15???????? 85c0 7410 ff742410 33ff }
            // n = 5, score = 700
            //   ff15????????         |                     
            //   85c0                 | test                eax, eax
            //   7410                 | je                  0x12
            //   ff742410             | push                dword ptr [esp + 0x10]
            //   33ff                 | xor                 edi, edi

        $sequence_1 = { 83e140 0b4b18 83671800 894f30 }
            // n = 4, score = 700
            //   83e140               | and                 ecx, 0x40
            //   0b4b18               | or                  ecx, dword ptr [ebx + 0x18]
            //   83671800             | and                 dword ptr [edi + 0x18], 0
            //   894f30               | mov                 dword ptr [edi + 0x30], ecx

        $sequence_2 = { 897b20 6a00 68???????? ff7320 }
            // n = 4, score = 700
            //   897b20               | mov                 dword ptr [ebx + 0x20], edi
            //   6a00                 | push                0
            //   68????????           |                     
            //   ff7320               | push                dword ptr [ebx + 0x20]

        $sequence_3 = { e9???????? 834f3001 8b4720 2b4310 8b37 894724 e8???????? }
            // n = 7, score = 700
            //   e9????????           |                     
            //   834f3001             | or                  dword ptr [edi + 0x30], 1
            //   8b4720               | mov                 eax, dword ptr [edi + 0x20]
            //   2b4310               | sub                 eax, dword ptr [ebx + 0x10]
            //   8b37                 | mov                 esi, dword ptr [edi]
            //   894724               | mov                 dword ptr [edi + 0x24], eax
            //   e8????????           |                     

        $sequence_4 = { 8bd8 85db 0f8414020000 8b4320 be???????? 56 }
            // n = 6, score = 700
            //   8bd8                 | mov                 ebx, eax
            //   85db                 | test                ebx, ebx
            //   0f8414020000         | je                  0x21a
            //   8b4320               | mov                 eax, dword ptr [ebx + 0x20]
            //   be????????           |                     
            //   56                   | push                esi

        $sequence_5 = { ff75f8 e8???????? 8bf8 3bfb 754f }
            // n = 5, score = 700
            //   ff75f8               | push                dword ptr [ebp - 8]
            //   e8????????           |                     
            //   8bf8                 | mov                 edi, eax
            //   3bfb                 | cmp                 edi, ebx
            //   754f                 | jne                 0x51

        $sequence_6 = { 50 56 ff5214 8bfb }
            // n = 4, score = 700
            //   50                   | push                eax
            //   56                   | push                esi
            //   ff5214               | call                dword ptr [edx + 0x14]
            //   8bfb                 | mov                 edi, ebx

        $sequence_7 = { 752d 8b4618 e8???????? 85c0 }
            // n = 4, score = 700
            //   752d                 | jne                 0x2f
            //   8b4618               | mov                 eax, dword ptr [esi + 0x18]
            //   e8????????           |                     
            //   85c0                 | test                eax, eax

        $sequence_8 = { 0f8481000000 395d0c 747c 6a03 }
            // n = 4, score = 600
            //   0f8481000000         | dec                 ecx
            //   395d0c               | cmp                 edi, ebp
            //   747c                 | je                  0xac
            //   6a03                 | inc                 esp

        $sequence_9 = { 85c0 7520 3bf3 741c 837d0c04 7516 }
            // n = 6, score = 600
            //   85c0                 | mov                 edx, edi
            //   7520                 | jmp                 0x2e
            //   3bf3                 | call                esi
            //   741c                 | mov                 dword ptr [ebx + 0x20], edi
            //   837d0c04             | mov                 eax, dword ptr [ebx + 0x20]
            //   7516                 | mov                 byte ptr [eax + 7], 0x31

        $sequence_10 = { 7457 53 ff750c 8bfe }
            // n = 4, score = 600
            //   7457                 | mov                 eax, 7
            //   53                   | jmp                 0xffffffe8
            //   ff750c               | dec                 ecx
            //   8bfe                 | cmp                 edi, ebp

        $sequence_11 = { e9???????? 3bf3 0f84b7000000 395d0c 0f84ae000000 }
            // n = 5, score = 600
            //   e9????????           |                     
            //   3bf3                 | cmp                 esi, ebp
            //   0f84b7000000         | je                  0xb5
            //   395d0c               | inc                 ecx
            //   0f84ae000000         | mov                 eax, 7

        $sequence_12 = { ebdd 3bf3 0f8481000000 395d0c }
            // n = 4, score = 600
            //   ebdd                 | mov                 eax, esi
            //   3bf3                 | dec                 eax
            //   0f8481000000         | mov                 edx, edi
            //   395d0c               | jmp                 0x2e

        $sequence_13 = { 56 e8???????? e9???????? 3bf3 0f8496000000 }
            // n = 5, score = 600
            //   56                   | mov                 esi, dword ptr [esp + 0x14]
            //   e8????????           |                     
            //   e9????????           |                     
            //   3bf3                 | mov                 edi, dword ptr [esi]
            //   0f8496000000         | push                0

        $sequence_14 = { 837d0c04 7516 ff7510 ff36 68???????? e8???????? 8bf8 }
            // n = 7, score = 600
            //   837d0c04             | mov                 ecx, edi
            //   7516                 | mov                 ebx, 0x57
            //   ff7510               | inc                 esp
            //   ff36                 | mov                 eax, esi
            //   68????????           |                     
            //   e8????????           |                     
            //   8bf8                 | dec                 eax

        $sequence_15 = { 0f8496000000 395d0c 0f848d000000 6a07 }
            // n = 4, score = 600
            //   0f8496000000         | je                  0xb2
            //   395d0c               | inc                 ecx
            //   0f848d000000         | mov                 eax, 7
            //   6a07                 | jmp                 0xffffffdf

        $sequence_16 = { 4c8b18 488b542460 4533c9 488bc8 }
            // n = 4, score = 500
            //   4c8b18               | mov                 eax, esi
            //   488b542460           | dec                 eax
            //   4533c9               | mov                 ebx, eax
            //   488bc8               | dec                 ecx

        $sequence_17 = { 7528 493bfd 7423 41b904000000 413bf1 }
            // n = 5, score = 500
            //   7528                 | je                  0x7e
            //   493bfd               | inc                 ecx
            //   7423                 | mov                 eax, 0xd
            //   41b904000000         | jmp                 0xffffffa9
            //   413bf1               | xor                 edx, edx

        $sequence_18 = { 493bfd 0f8481000000 413bf5 747c 41b80d000000 }
            // n = 5, score = 500
            //   493bfd               | cmp                 edi, ebp
            //   0f8481000000         | je                  0x69
            //   413bf5               | inc                 ecx
            //   747c                 | cmp                 esi, ebp
            //   41b80d000000         | je                  0x64

        $sequence_19 = { e8???????? 4c8b1d???????? ba0d000000 41834b3401 }
            // n = 4, score = 500
            //   e8????????           |                     
            //   4c8b1d????????       |                     
            //   ba0d000000           | inc                 edi
            //   41834b3401           | inc                 ecx

        $sequence_20 = { 413bf5 0f84ac000000 41b807000000 ebd7 493bfd 0f849b000000 413bf5 }
            // n = 7, score = 500
            //   413bf5               | mov                 ecx, 4
            //   0f84ac000000         | inc                 ecx
            //   41b807000000         | cmp                 esi, ecx
            //   ebd7                 | inc                 ecx
            //   493bfd               | cmp                 eax, ebp
            //   0f849b000000         | jne                 0x2a
            //   413bf5               | dec                 ecx

        $sequence_21 = { 492bd0 4803542460 41ff5220 4c8b442460 }
            // n = 4, score = 500
            //   492bd0               | cmp                 eax, edi
            //   4803542460           | je                  0x10
            //   41ff5220             | dec                 eax
            //   4c8b442460           | lea                 eax, [esp + 0x40]

        $sequence_22 = { 488b9424a8000000 4533c9 4533c0 ff5028 }
            // n = 4, score = 500
            //   488b9424a8000000     | xor                 eax, 0x47da5929
            //   4533c9               | push                eax
            //   4533c0               | mov                 edx, esi
            //   ff5028               | jmp                 7

        $sequence_23 = { e8???????? e9???????? 493bfd 0f84b5000000 413bf5 }
            // n = 5, score = 500
            //   e8????????           |                     
            //   e9????????           |                     
            //   493bfd               | inc                 ecx
            //   0f84b5000000         | cmp                 eax, ebp
            //   413bf5               | jne                 0x2a

        $sequence_24 = { 488d5e10 4533f6 488b0b 2580000000 }
            // n = 4, score = 500
            //   488d5e10             | jne                 0x53
            //   4533f6               | push                dword ptr [ebx]
            //   488b0b               | push                eax
            //   2580000000           | push                0x410

        $sequence_25 = { eb5a 493bfd 7464 413bf5 745f 8bd6 }
            // n = 6, score = 500
            //   eb5a                 | jmp                 0x5c
            //   493bfd               | dec                 ecx
            //   7464                 | cmp                 edi, ebp
            //   413bf5               | je                  0x66
            //   745f                 | inc                 ecx
            //   8bd6                 | cmp                 esi, ebp

        $sequence_26 = { eb2c 8b05???????? 413bc5 7528 }
            // n = 4, score = 500
            //   eb2c                 | je                  0x61
            //   8b05????????         |                     
            //   413bc5               | mov                 edx, esi
            //   7528                 | jmp                 0x2e

        $sequence_27 = { 4c896c2420 e8???????? 4c8b442468 488b0d???????? }
            // n = 4, score = 500
            //   4c896c2420           | cmp                 eax, 0xa6eec7ec
            //   e8????????           |                     
            //   4c8b442468           | je                  0xee
            //   488b0d????????       |                     

        $sequence_28 = { 5f c3 4053 4883ec20 4c8b4108 488bd9 4d85c0 }
            // n = 7, score = 500
            //   5f                   | pop                 ebp
            //   c3                   | ret                 4
            //   4053                 | push                0
            //   4883ec20             | pop                 ebp
            //   4c8b4108             | ret                 4
            //   488bd9               | push                0
            //   4d85c0               | push                1

        $sequence_29 = { 418d5620 498bcf ff15???????? 4c8bf0 }
            // n = 4, score = 500
            //   418d5620             | inc                 esi
            //   498bcf               | mov                 dword ptr [ebp - 8], eax
            //   ff15????????         |                     
            //   4c8bf0               | test                eax, eax

        $sequence_30 = { 747c 41b80d000000 eba7 33d2 }
            // n = 4, score = 500
            //   747c                 | cmp                 esi, ecx
            //   41b80d000000         | jne                 0x1a
            //   eba7                 | mov                 edx, dword ptr [edi]
            //   33d2                 | dec                 ecx

        $sequence_31 = { 41b904000000 413bf1 7518 8b17 }
            // n = 4, score = 500
            //   41b904000000         | dec                 ecx
            //   413bf1               | cmp                 edi, ebp
            //   7518                 | je                  0xbe
            //   8b17                 | inc                 ecx

        $sequence_32 = { 817424105085b8ed 33ff 47 57 be???????? 56 8d542418 }
            // n = 7, score = 400
            //   817424105085b8ed     | mov                 edx, edi
            //   33ff                 | jmp                 0x2e
            //   47                   | push                3
            //   57                   | jmp                 0xffffffce
            //   be????????           |                     
            //   56                   | cmp                 esi, ebx
            //   8d542418             | je                  0x7a

        $sequence_33 = { 0f85bd000000 33c0 89942498000000 899424a8000000 8984249c000000 }
            // n = 5, score = 400
            //   0f85bd000000         | push                0x400000
            //   33c0                 | push                0
            //   89942498000000       | test                eax, eax
            //   899424a8000000       | ret                 
            //   8984249c000000       | push                0

        $sequence_34 = { 89750c 8d750c e8???????? 8bf0 3bf3 741a }
            // n = 6, score = 400
            //   89750c               | jmp                 0xffffffc3
            //   8d750c               | push                dword ptr [ebp + 0x10]
            //   e8????????           |                     
            //   8bf0                 | push                ebx
            //   3bf3                 | jne                 0x2a
            //   741a                 | dec                 ecx

        $sequence_35 = { 85c0 741a 6804010000 8d4f10 }
            // n = 4, score = 400
            //   85c0                 | test                eax, eax
            //   741a                 | pop                 edi
            //   6804010000           | ret                 
            //   8d4f10               | inc                 eax

        $sequence_36 = { 33d2 ff15???????? 8bc6 488b9c24c0000000 }
            // n = 4, score = 400
            //   33d2                 | xor                 edi, edi
            //   ff15????????         |                     
            //   8bc6                 | jmp                 5
            //   488b9c24c0000000     | mov                 esi, dword ptr [ebp + 0xc]

        $sequence_37 = { 3decc7eea6 0f84e8000000 3d0470a8c4 0f8486000000 }
            // n = 4, score = 400
            //   3decc7eea6           | push                eax
            //   0f84e8000000         | mov                 eax, dword ptr [ebp + 0xc]
            //   3d0470a8c4           | mov                 dword ptr [ebp - 8], eax
            //   0f8486000000         | xor                 edi, edi

        $sequence_38 = { 35fc5585cf 4533c9 4533c0 418bd6 33c9 8905???????? ff15???????? }
            // n = 7, score = 400
            //   35fc5585cf           | mov                 esp, ebp
            //   4533c9               | pop                 ebp
            //   4533c0               | ret                 4
            //   418bd6               | push                0
            //   33c9                 | pop                 ebx
            //   8905????????         |                     
            //   ff15????????         |                     

        $sequence_39 = { 415d 415c 5f c3 bb01000000 }
            // n = 5, score = 400
            //   415d                 | lea                 eax, [esp + 0x88]
            //   415c                 | dec                 eax
            //   5f                   | cmp                 eax, -1
            //   c3                   | dec                 eax
            //   bb01000000           | mov                 edi, eax

        $sequence_40 = { 81f97acff109 0f840f010000 81f9eb6bfb0d 0f84de000000 81f9281d9f16 0f84cb000000 }
            // n = 6, score = 400
            //   81f97acff109         | add                 esi, 0x3c6ef35f
            //   0f840f010000         | pop                 ebx
            //   81f9eb6bfb0d         | mov                 esp, ebp
            //   0f84de000000         | pop                 ebp
            //   81f9281d9f16         | ret                 4
            //   0f84cb000000         | pop                 ebp

        $sequence_41 = { c3 6a00 6800004000 6a00 ff15???????? a3???????? 85c0 }
            // n = 7, score = 400
            //   c3                   |                     
            //   6a00                 | dec                 eax
            //   6800004000           | add                 ecx, 0x2e
            //   6a00                 | lea                 edi, [ebx + 0x5b]
            //   ff15????????         |                     
            //   a3????????           |                     
            //   85c0                 | xor                 edx, edx

        $sequence_42 = { c1e010 56 8db4083089b9ed 57 8d45f4 50 8b450c }
            // n = 7, score = 400
            //   c1e010               | push                dword ptr [ebp - 8]
            //   56                   | imul                esi, esi, 0x19660d
            //   8db4083089b9ed       | push                dword ptr [ebp - 0xc]
            //   57                   | add                 esi, 0x3c6ef35f
            //   8d45f4               | mov                 dword ptr [ebp - 4], ebx
            //   50                   | mov                 dword ptr [ebp - 8], eax
            //   8b450c               | xor                 edi, edi

        $sequence_43 = { 8945f8 85c0 7551 ff33 50 6810040000 }
            // n = 6, score = 400
            //   8945f8               | cmp                 eax, esi
            //   85c0                 | je                  0x38e
            //   7551                 | inc                 ebp
            //   ff33                 | lea                 eax, [esi + 1]
            //   50                   | dec                 eax
            //   6810040000           | mov                 edx, esi

        $sequence_44 = { 33ff 3bc7 7528 83bc241001000003 740a 83bc241001000001 7514 }
            // n = 7, score = 400
            //   33ff                 | test                ebx, ebx
            //   3bc7                 | jl                  0x16
            //   7528                 | lea                 eax, [edx*4 + 0x10043430]
            //   83bc241001000003     | mov                 edi, dword ptr [eax]
            //   740a                 | inc                 edx
            //   83bc241001000001     | ret                 
            //   7514                 | push                0

        $sequence_45 = { ff15???????? 4883f8ff 488bf8 7445 488d842488000000 }
            // n = 5, score = 400
            //   ff15????????         |                     
            //   4883f8ff             | lea                 esi, [ebp + 0xc]
            //   488bf8               | mov                 esi, eax
            //   7445                 | push                dword ptr [ebp - 8]
            //   488d842488000000     | imul                esi, esi, 0x19660d

        $sequence_46 = { 492bd6 75f5 eb06 8b05???????? 35fc5585cf 4533c9 }
            // n = 6, score = 400
            //   492bd6               | ret                 4
            //   75f5                 | push                0
            //   eb06                 | push                1
            //   8b05????????         |                     
            //   35fc5585cf           | pop                 edi
            //   4533c9               | pop                 ebx

        $sequence_47 = { 4c8d8424d0000000 48c7c101000080 ff15???????? 85c0 }
            // n = 4, score = 400
            //   4c8d8424d0000000     | pop                 edi
            //   48c7c101000080       | pop                 ebx
            //   ff15????????         |                     
            //   85c0                 | mov                 esp, ebp

        $sequence_48 = { 33f6 46 8945f8 85c0 }
            // n = 4, score = 400
            //   33f6                 | mov                 ebx, ecx
            //   46                   | ret                 
            //   8945f8               | inc                 eax
            //   85c0                 | push                ebx

        $sequence_49 = { 85c0 753e 8b9424c8000000 85d2 }
            // n = 4, score = 400
            //   85c0                 | mov                 esp, ebp
            //   753e                 | pop                 ebp
            //   8b9424c8000000       | ret                 4
            //   85d2                 | push                0

        $sequence_50 = { 1bdb f7db 83c303 ebc4 }
            // n = 4, score = 400
            //   1bdb                 | dec                 esp
            //   f7db                 | mov                 eax, dword ptr [esp + 0x68]
            //   83c303               | xor                 edx, edx
            //   ebc4                 | dec                 eax

        $sequence_51 = { 8d8718020000 50 ff7310 ff15???????? 33d2 89b7184a0000 }
            // n = 6, score = 400
            //   8d8718020000         | inc                 eax
            //   50                   | push                ebx
            //   ff7310               | dec                 eax
            //   ff15????????         |                     
            //   33d2                 | sub                 esp, 0x20
            //   89b7184a0000         | dec                 esp

        $sequence_52 = { 488b4c2450 488d442440 4c8bc7 488bd6 48896c2428 4889442420 }
            // n = 6, score = 400
            //   488b4c2450           | dec                 esp
            //   488d442440           | mov                 dword ptr [esp + 0x20], ebp
            //   4c8bc7               | dec                 esp
            //   488bd6               | mov                 eax, dword ptr [esp + 0x68]
            //   48896c2428           | dec                 esp
            //   4889442420           | mov                 dword ptr [esp + 0x20], ebp

        $sequence_53 = { 50 6810040000 ff15???????? 8945fc 85c0 }
            // n = 5, score = 400
            //   50                   | mov                 eax, dword ptr [ecx + 8]
            //   6810040000           | dec                 eax
            //   ff15????????         |                     
            //   8945fc               | mov                 ebx, ecx
            //   85c0                 | ret                 

        $sequence_54 = { 4d8bc4 33d2 ff15???????? 488bf8 }
            // n = 4, score = 400
            //   4d8bc4               | dec                 eax
            //   33d2                 | add                 esp, 0x28
            //   ff15????????         |                     
            //   488bf8               | ret                 

        $sequence_55 = { ff75f8 69f60d661900 ff75f4 81c65ff36e3c 89750c 8d750c e8???????? }
            // n = 7, score = 400
            //   ff75f8               | je                  0x7a
            //   69f60d661900         | cmp                 dword ptr [ebp + 0xc], ebx
            //   ff75f4               | je                  0x7a
            //   81c65ff36e3c         | push                0xd
            //   89750c               | je                  0x59
            //   8d750c               | push                ebx
            //   e8????????           |                     

        $sequence_56 = { 33ff eb03 8b750c ff75f8 69f60d661900 }
            // n = 5, score = 400
            //   33ff                 | push                dword ptr [ebp + 0xc]
            //   eb03                 | mov                 edi, esi
            //   8b750c               | mov                 dword ptr [ebp + 8], 0x57
            //   ff75f8               | test                eax, eax
            //   69f60d661900         | push                0xd

        $sequence_57 = { 493bc6 0f847e030000 458d4601 488bd6 }
            // n = 4, score = 400
            //   493bc6               | je                  0xe3
            //   0f847e030000         | dec                 ecx
            //   458d4601             | sub                 edx, esi
            //   488bd6               | jne                 0xfffffffa

        $sequence_58 = { e8???????? 8945f8 33ff eb03 }
            // n = 4, score = 400
            //   e8????????           |                     
            //   8945f8               | push                3
            //   33ff                 | jmp                 0xffffffce
            //   eb03                 | cmp                 esi, ebx

        $sequence_59 = { 4889442438 488d442448 48897c2430 4889442428 4c8d4c2444 4c8bc6 }
            // n = 6, score = 400
            //   4889442438           | dec                 eax
            //   488d442448           | mov                 ecx, edi
            //   48897c2430           | mov                 ebx, 0x57
            //   4889442428           | inc                 ecx
            //   4c8d4c2444           | cmp                 eax, ebp
            //   4c8bc6               | je                  0x50

        $sequence_60 = { 4533c0 48894c2420 488d542420 418d4802 }
            // n = 4, score = 400
            //   4533c0               | push                esi
            //   48894c2420           | push                dword ptr [esp + 0x10]
            //   488d542420           | mov                 dword ptr [esp + 0x18], eax
            //   418d4802             | pop                 edi

        $sequence_61 = { 0f840b010000 395d10 0f8402010000 6a03 eb13 3bf3 0f84f6000000 }
            // n = 7, score = 300
            //   0f840b010000         | mov                 ecx, edi
            //   395d10               | dec                 esp
            //   0f8402010000         | mov                 esi, eax
            //   6a03                 | dec                 eax
            //   eb13                 | lea                 ebx, [esi + 0x10]
            //   3bf3                 | inc                 ebp
            //   0f84f6000000         | xor                 esi, esi

        $sequence_62 = { ff15???????? 8bf0 8d4601 50 8975f8 e8???????? }
            // n = 6, score = 300
            //   ff15????????         |                     
            //   8bf0                 | inc                 edi
            //   8d4601               | inc                 ecx
            //   50                   | lea                 edx, [esi + 0x20]
            //   8975f8               | dec                 ecx
            //   e8????????           |                     

        $sequence_63 = { 8945d0 3dea000000 7554 ff75fc 53 ff35???????? }
            // n = 6, score = 300
            //   8945d0               | dec                 eax
            //   3dea000000           | lea                 ebx, [esi + 0x10]
            //   7554                 | inc                 ebp
            //   ff75fc               | xor                 esi, esi
            //   53                   | dec                 eax
            //   ff35????????         |                     

        $sequence_64 = { 5b 8be5 5d c20400 8325????????00 }
            // n = 5, score = 300
            //   5b                   | push                dword ptr [ebp - 0xc]
            //   8be5                 | add                 esi, 0x3c6ef35f
            //   5d                   | mov                 dword ptr [ebp + 0xc], esi
            //   c20400               | xor                 ebx, ebx
            //   8325????????00       |                     

        $sequence_65 = { 895c2414 895c2410 895c240c 3bfe 0f86ea000000 }
            // n = 5, score = 300
            //   895c2414             | dec                 eax
            //   895c2410             | mov                 ecx, dword ptr [ebx]
            //   895c240c             | and                 eax, 0x80
            //   3bfe                 | inc                 ecx
            //   0f86ea000000         | lea                 edx, [esi + 0x20]

        $sequence_66 = { f605????????04 740e 44893d???????? 44893d???????? 488d442440 }
            // n = 5, score = 300
            //   f605????????04       |                     
            //   740e                 | push                0x104
            //   44893d????????       |                     
            //   44893d????????       |                     
            //   488d442440           | push                0x410

        $sequence_67 = { 4d3bef 7415 498bd5 4883c9ff ff15???????? }
            // n = 5, score = 300
            //   4d3bef               | push                0x410
            //   7415                 | mov                 dword ptr [ebp - 4], eax
            //   498bd5               | test                eax, eax
            //   4883c9ff             | je                  0x21
            //   ff15????????         |                     

        $sequence_68 = { 4c8bc6 ff15???????? 488bd8 493bc7 }
            // n = 4, score = 300
            //   4c8bc6               | lea                 eax, [edi + 0x218]
            //   ff15????????         |                     
            //   488bd8               | push                eax
            //   493bc7               | push                dword ptr [ebx + 0x10]

        $sequence_69 = { 493bc5 742f 488d4810 ff15???????? }
            // n = 4, score = 300
            //   493bc5               | jne                 0x55
            //   742f                 | push                dword ptr [ebx]
            //   488d4810             | push                eax
            //   ff15????????         |                     

        $sequence_70 = { 8b45fc 0fb700 8bc8 81e100f00000 }
            // n = 4, score = 300
            //   8b45fc               | push                esi
            //   0fb700               | lock xadd           dword ptr [eax], ecx
            //   8bc8                 | add                 eax, 0x1e
            //   81e100f00000         | push                eax

        $sequence_71 = { 8975f8 e8???????? 8945ec 3bc3 }
            // n = 4, score = 300
            //   8975f8               | dec                 eax
            //   e8????????           |                     
            //   8945ec               | test                eax, eax
            //   3bc3                 | dec                 ecx

        $sequence_72 = { 488b0d???????? 4885c9 7405 e8???????? 4883c428 c3 4053 }
            // n = 7, score = 300
            //   488b0d????????       |                     
            //   4885c9               | je                  0x1e
            //   7405                 | push                0x104
            //   e8????????           |                     
            //   4883c428             | lea                 ecx, [edi + 0x10]
            //   c3                   | mov                 dword ptr [ebp - 8], eax
            //   4053                 | test                eax, eax

        $sequence_73 = { 395d10 7423 6a01 ff75fc e8???????? 3bc3 7518 }
            // n = 7, score = 300
            //   395d10               | inc                 edi
            //   7423                 | inc                 ecx
            //   6a01                 | lea                 edx, [esi + 0x20]
            //   ff75fc               | dec                 ecx
            //   e8????????           |                     
            //   3bc3                 | mov                 ecx, edi
            //   7518                 | dec                 esp

        $sequence_74 = { 8d85a0fcffff 68???????? 50 ff15???????? 83c41c 53 }
            // n = 6, score = 300
            //   8d85a0fcffff         | mov                 esi, eax
            //   68????????           |                     
            //   50                   | dec                 eax
            //   ff15????????         |                     
            //   83c41c               | test                eax, eax
            //   53                   | dec                 ecx

        $sequence_75 = { c1ed03 0fb70442 6683e107 66898c4788000000 }
            // n = 4, score = 200
            //   c1ed03               | dec                 eax
            //   0fb70442             | lea                 ecx, [eax + 0x10]
            //   6683e107             | dec                 ebp
            //   66898c4788000000     | cmp                 ebp, edi

        $sequence_76 = { 88040a 8b8314170000 83432801 b910000000 2ac8 }
            // n = 5, score = 200
            //   88040a               | inc                 ecx
            //   8b8314170000         | lea                 edx, [esi + 0x20]
            //   83432801             | inc                 ecx
            //   b910000000           | mov                 eax, dword ptr [esp + 0x1c]
            //   2ac8                 | dec                 eax

        $sequence_77 = { 33d2 e8???????? 44892d???????? 33c9 44892d???????? e8???????? 488bcf }
            // n = 7, score = 200
            //   33d2                 | dec                 eax
            //   e8????????           |                     
            //   44892d????????       |                     
            //   33c9                 | lea                 ebx, [esi + 0x10]
            //   44892d????????       |                     
            //   e8????????           |                     
            //   488bcf               | inc                 ebp

        $sequence_78 = { 488b05???????? 89702a 48897d00 eb17 }
            // n = 4, score = 200
            //   488b05????????       |                     
            //   89702a               | jne                 0xfffffff0
            //   48897d00             | mov                 ecx, dword ptr [eax]
            //   eb17                 | test                ecx, ecx

        $sequence_79 = { a1???????? 83c01e 50 ff15???????? eb08 6a0a }
            // n = 6, score = 200
            //   a1????????           |                     
            //   83c01e               | push                eax
            //   50                   | push                0x410
            //   ff15????????         |                     
            //   eb08                 | mov                 dword ptr [ebp - 4], eax
            //   6a0a                 | jne                 0x53

        $sequence_80 = { 8b4036 85c0 75ec 8b06 }
            // n = 4, score = 200
            //   8b4036               | inc                 ecx
            //   85c0                 | lea                 edx, [esi + 0x20]
            //   75ec                 | inc                 ecx
            //   8b06                 | lea                 edx, [esi + 0x20]

        $sequence_81 = { 83c01e 50 ff15???????? c20400 a1???????? 56 83c004 }
            // n = 7, score = 200
            //   83c01e               | and                 eax, 0x80
            //   50                   | inc                 ecx
            //   ff15????????         |                     
            //   c20400               | lea                 edx, [esi + 0x20]
            //   a1????????           |                     
            //   56                   | dec                 ecx
            //   83c004               | inc                 edi

        $sequence_82 = { f0834156ff 85c0 7545 4c8b0d???????? 8b8424c0000000 448b442460 488b542468 }
            // n = 7, score = 200
            //   f0834156ff           | add                 eax, 0x1e
            //   85c0                 | push                eax
            //   7545                 | jmp                 0xb
            //   4c8b0d????????       |                     
            //   8b8424c0000000       | push                0xa
            //   448b442460           | pop                 ebx
            //   488b542468           | jmp                 0x16

        $sequence_83 = { be???????? e8???????? 5e c3 a1???????? 83c01e }
            // n = 6, score = 200
            //   be????????           |                     
            //   e8????????           |                     
            //   5e                   | dec                 ecx
            //   c3                   | mov                 ecx, edi
            //   a1????????           |                     
            //   83c01e               | dec                 esp

        $sequence_84 = { ffb72c080000 e8???????? 5e 5d 5b c3 eb10 }
            // n = 7, score = 200
            //   ffb72c080000         | lea                 ecx, [edi + 0x10]
            //   e8????????           |                     
            //   5e                   | mov                 dword ptr [ebp - 4], eax
            //   5d                   | test                eax, eax
            //   5b                   | je                  0x1e
            //   c3                   | push                0x104
            //   eb10                 | test                eax, eax

        $sequence_85 = { 83a78c00000000 33c0 c3 51 e8???????? }
            // n = 5, score = 200
            //   83a78c00000000       | mov                 dword ptr [ebp - 4], eax
            //   33c0                 | test                eax, eax
            //   c3                   | je                  0x27
            //   51                   | push                eax
            //   e8????????           |                     

        $sequence_86 = { ffd7 8b1d???????? 6a3a b8???????? 56 ff35???????? a3???????? }
            // n = 7, score = 200
            //   ffd7                 | mov                 ecx, dword ptr [ebx]
            //   8b1d????????         |                     
            //   6a3a                 | and                 eax, 0x80
            //   b8????????           |                     
            //   56                   | dec                 eax
            //   ff35????????         |                     
            //   a3????????           |                     

        $sequence_87 = { 488d0595d6ffff 4885c0 7428 8b7b10 4803fd }
            // n = 5, score = 200
            //   488d0595d6ffff       | mov                 dword ptr [ebp - 8], eax
            //   4885c0               | test                eax, eax
            //   7428                 | jne                 0x58
            //   8b7b10               | push                dword ptr [ebx]
            //   4803fd               | push                esi

        $sequence_88 = { 8b4778 034774 39477c 0f834effffff }
            // n = 4, score = 200
            //   8b4778               | lea                 ebx, [esi + 0x10]
            //   034774               | inc                 ebp
            //   39477c               | xor                 esi, esi
            //   0f834effffff         | dec                 eax

        $sequence_89 = { 66b90100 4889442420 e8???????? 3bc3 0f859b000000 }
            // n = 5, score = 200
            //   66b90100             | dec                 eax
            //   4889442420           | mov                 ecx, dword ptr [ebx]
            //   e8????????           |                     
            //   3bc3                 | inc                 ecx
            //   0f859b000000         | mov                 eax, dword ptr [esp + 0x1c]

        $sequence_90 = { eb0b b90a000000 ff15???????? 4c8b1d???????? 418b4356 85c0 }
            // n = 6, score = 200
            //   eb0b                 | mov                 dword ptr [eax + 0x1a], esi
            //   b90a000000           | mov                 eax, dword ptr [ebp + 8]
            //   ff15????????         |                     
            //   4c8b1d????????       |                     
            //   418b4356             | mov                 dword ptr [eax], edi
            //   85c0                 | jmp                 0x20

        $sequence_91 = { ff15???????? 8bf8 897e3f 3bfb 750c ff15???????? 8945fc }
            // n = 7, score = 200
            //   ff15????????         |                     
            //   8bf8                 | mov                 al, byte ptr [esi]
            //   897e3f               | cmp                 al, byte ptr [edi + 4]
            //   3bfb                 | add                 eax, 0x1e
            //   750c                 | push                eax
            //   ff15????????         |                     
            //   8945fc               | ret                 4

        $sequence_92 = { c1ed04 83c004 81f91e010000 894f74 }
            // n = 4, score = 200
            //   c1ed04               | add                 esp, 0x20
            //   83c004               | inc                 ecx
            //   81f91e010000         | pop                 ebp
            //   894f74               | inc                 ecx

        $sequence_93 = { 8b4778 034774 3bc8 0f86a4000000 }
            // n = 4, score = 200
            //   8b4778               | mov                 edx, ebp
            //   034774               | dec                 eax
            //   3bc8                 | or                  ecx, 0xffffffff
            //   0f86a4000000         | dec                 eax

        $sequence_94 = { 897004 5f 5e 5b c20800 51 53 }
            // n = 7, score = 200
            //   897004               | xor                 esi, esi
            //   5f                   | inc                 esi
            //   5e                   | mov                 dword ptr [ebp - 8], eax
            //   5b                   | test                eax, eax
            //   c20800               | push                eax
            //   51                   | push                dword ptr [ebx + 0x10]
            //   53                   | xor                 edx, edx

        $sequence_95 = { 488b0d???????? 488bfa 4883c12e ff15???????? eb0b }
            // n = 5, score = 200
            //   488b0d????????       |                     
            //   488bfa               | push                0x410
            //   4883c12e             | mov                 dword ptr [ebp - 4], eax
            //   ff15????????         |                     
            //   eb0b                 | test                eax, eax

        $sequence_96 = { 0f8e2a040000 8a05???????? 4238042b 7521 448bc2 4963ce }
            // n = 6, score = 200
            //   0f8e2a040000         | push                dword ptr [ebx]
            //   8a05????????         |                     
            //   4238042b             | push                eax
            //   7521                 | push                0x410
            //   448bc2               | mov                 dword ptr [ebp - 4], eax
            //   4963ce               | test                eax, eax

        $sequence_97 = { 4c8b1d???????? 418b4356 85c0 75e6 8a0f 41b1ff c6442420ff }
            // n = 7, score = 200
            //   4c8b1d????????       |                     
            //   418b4356             | add                 eax, 0x1e
            //   85c0                 | lock xadd           dword ptr [eax], ecx
            //   75e6                 | add                 eax, 0x1e
            //   8a0f                 | push                eax
            //   41b1ff               | mov                 eax, dword ptr [eax + 0x36]
            //   c6442420ff           | test                eax, eax

        $sequence_98 = { 488b0d???????? 4883c12e ff15???????? 488b15???????? 488b8c24b0000000 }
            // n = 5, score = 200
            //   488b0d????????       |                     
            //   4883c12e             | push                eax
            //   ff15????????         |                     
            //   488b15????????       |                     
            //   488b8c24b0000000     | push                0

        $sequence_99 = { 488b15???????? 4c8d442468 48c7c101000080 ff15???????? }
            // n = 4, score = 200
            //   488b15????????       |                     
            //   4c8d442468           | push                dword ptr [ebx]
            //   48c7c101000080       | push                eax
            //   ff15????????         |                     

        $sequence_100 = { 8be5 5d c3 0fb708 6683f902 751c 6683780200 }
            // n = 7, score = 200
            //   8be5                 | mov                 dword ptr [ebp - 8], eax
            //   5d                   | test                eax, eax
            //   c3                   | jne                 0x55
            //   0fb708               | push                dword ptr [ebx]
            //   6683f902             | push                dword ptr [ebx]
            //   751c                 | push                eax
            //   6683780200           | push                0x410

        $sequence_101 = { 83c01e 50 ff15???????? 8ac3 5b c20400 53 }
            // n = 7, score = 200
            //   83c01e               | mov                 ecx, edi
            //   50                   | inc                 ebp
            //   ff15????????         |                     
            //   8ac3                 | xor                 esi, esi
            //   5b                   | dec                 eax
            //   c20400               | mov                 ecx, dword ptr [ebx]
            //   53                   | and                 eax, 0x80

        $sequence_102 = { 8a8310170000 88040a 83432801 8a8311170000 }
            // n = 4, score = 200
            //   8a8310170000         | je                  0xa
            //   88040a               | dec                 eax
            //   83432801             | add                 esp, 0x28
            //   8a8311170000         | ret                 

        $sequence_103 = { c9 c20800 55 8bec 81ec1c010000 8d4807 83e1f8 }
            // n = 7, score = 200
            //   c9                   | jne                 0x5c
            //   c20800               | jne                 0x53
            //   55                   | push                dword ptr [ebx]
            //   8bec                 | push                eax
            //   81ec1c010000         | push                0x410
            //   8d4807               | mov                 dword ptr [ebp - 4], eax
            //   83e1f8               | test                eax, eax

        $sequence_104 = { 0fb705???????? 50 a1???????? 6a00 e8???????? a1???????? 83c01e }
            // n = 7, score = 200
            //   0fb705????????       |                     
            //   50                   | inc                 esi
            //   a1????????           |                     
            //   6a00                 | mov                 dword ptr [ebp - 8], eax
            //   e8????????           |                     
            //   a1????????           |                     
            //   83c01e               | test                eax, eax

        $sequence_105 = { 5b eb14 a1???????? 89701a 8b4508 8938 eb14 }
            // n = 7, score = 200
            //   5b                   | push                dword ptr [ebx]
            //   eb14                 | push                eax
            //   a1????????           |                     
            //   89701a               | push                0x410
            //   8b4508               | mov                 dword ptr [ebp - 4], eax
            //   8938                 | test                eax, eax
            //   eb14                 | xor                 esi, esi

        $sequence_106 = { 08ee 2ad2 50 3a1c07 }
            // n = 4, score = 100
            //   08ee                 | pop                 ebx
            //   2ad2                 | ret                 8
            //   50                   | push                ecx
            //   3a1c07               | push                ebx

        $sequence_107 = { 56 8b35???????? 6a00 ffd6 ff742414 ff742414 57 }
            // n = 7, score = 100
            //   56                   | push                ecx
            //   8b35????????         |                     
            //   6a00                 | add                 eax, 0x258
            //   ffd6                 | pop                 ebx
            //   ff742414             | mov                 esp, ebp
            //   ff742414             | pop                 ebp
            //   57                   | ret                 

        $sequence_108 = { 894dec c745e0e724be03 8945d8 751b f605????????01 7412 8b7e08 }
            // n = 7, score = 100
            //   894dec               | mov                 esp, ebp
            //   c745e0e724be03       | pop                 ebp
            //   8945d8               | ret                 
            //   751b                 | movzx               ecx, word ptr [eax]
            //   f605????????01       |                     
            //   7412                 | cmp                 cx, 2
            //   8b7e08               | jne                 0x30

        $sequence_109 = { 8b4508 8945e4 8b00 c745e820320410 }
            // n = 4, score = 100
            //   8b4508               | mov                 ecx, eax
            //   8945e4               | and                 ecx, 0xf000
            //   8b00                 | mov                 edi, eax
            //   c745e820320410       | mov                 dword ptr [esi + 0x3f], edi

        $sequence_110 = { c1e804 46 33048d1062be03 85ff 75cf }
            // n = 5, score = 100
            //   c1e804               | cmp                 word ptr [eax + 2], 0
            //   46                   | and                 dword ptr [edi + 0x8c], 0
            //   33048d1062be03       | xor                 eax, eax
            //   85ff                 | ret                 
            //   75cf                 | push                ecx

        $sequence_111 = { 8bd8 3bde 0f85df020000 e8???????? 8bd8 3bde }
            // n = 6, score = 100
            //   8bd8                 | cmp                 edi, ebx
            //   3bde                 | jne                 0x13
            //   0f85df020000         | mov                 dword ptr [ebp - 4], eax
            //   e8????????           |                     
            //   8bd8                 | xor                 edx, edx
            //   3bde                 | mov                 dword ptr [edi + 0x4a18], esi

        $sequence_112 = { e8???????? ff75ec 8b3d???????? 8bd8 ffd7 ff75e8 }
            // n = 6, score = 100
            //   e8????????           |                     
            //   ff75ec               | push                edi
            //   8b3d????????         |                     
            //   8bd8                 | push                0x84
            //   ffd7                 | pop                 ebx
            //   ff75e8               | mov                 esp, ebp

        $sequence_113 = { 48 55 395002 cd60 }
            // n = 4, score = 100
            //   48                   | cmp                 cx, 2
            //   55                   | and                 dword ptr [edi + 0x8c], 0
            //   395002               | xor                 eax, eax
            //   cd60                 | ret                 

        $sequence_114 = { ff15???????? a1???????? 8d480c 33ed 83c42c 3929 }
            // n = 6, score = 100
            //   ff15????????         |                     
            //   a1????????           |                     
            //   8d480c               | push                0x400000
            //   33ed                 | push                0
            //   83c42c               | mov                 eax, dword ptr [ebp - 4]
            //   3929                 | movzx               eax, word ptr [eax]

        $sequence_115 = { ff75e8 ffd7 eb08 ff15???????? }
            // n = 4, score = 100
            //   ff75e8               | pop                 ebp
            //   ffd7                 | ret                 
            //   eb08                 | movzx               ecx, word ptr [eax]
            //   ff15????????         |                     

        $sequence_116 = { ff742410 57 e8???????? 8bd8 83fb02 }
            // n = 5, score = 100
            //   ff742410             | mov                 esp, ebp
            //   57                   | pop                 ebp
            //   e8????????           |                     
            //   8bd8                 | ret                 
            //   83fb02               | movzx               ecx, word ptr [eax]

    condition:
        7 of them and filesize < 802816
}
Download all Yara Rules