Function at 0x40b640
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov edx, dword [ebp - 0x7c0]
add edx, 1
mov dword [ebp - 0x7c0], edx
mov eax, dword [ebp - 0x7bc]
mov ecx, dword [ebp - 0x7c0]
cmp ecx, dword [eax + 0x18]
jae 0x40b4d4
mov edx, dword [ebp - 0x7c0]
mov eax, dword [ebp - 0x1acc]
mov ecx, dword [ebp - 0x344]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x7c4], ecx
mov edx, dword [ebp - 0x7c0]
mov eax, dword [ebp - 0x1ad0]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x1ad4]
mov eax, dword [ebp - 0x344]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x1e88], eax
mov dword [ebp - 0x1b0], 0
jmp 0x40b338
mov ecx, dword [ebp - 0x1b0]
add ecx, 1
mov dword [ebp - 0x1b0], ecx
mov edx, dword [ebp - 0x7c4]
add edx, dword [ebp - 0x1b0]
movsx eax, byte [edx]
test eax, eax
je 0x40b3ea
mov ecx, dword [ebp - 0x1b0]
movsx edx, byte [ebp + ecx - 0x8e0]
test edx, edx
je 0x40b3ea
push ecx
add ecx, 0xcfd9
xor ecx, 0x12631
pop ecx
push edx
and edx, 0x13626
call 0x40b386
add byte [edi], dh
dec esi
inc edx
dec eax
inc edi
inc eax
add esp, 4
pop edx
push ecx
push ecx
add esp, 4
jmp 0x40b396
pop ecx
mov eax, dword [ebp - 0x7c4]
add eax, dword [ebp - 0x1b0]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1b0]
movsx eax, byte [ebp + edx - 0x8e0]
cmp ecx, eax
je 0x40b3dc
mov ecx, dword [ebp - 0x7c4]
add ecx, dword [ebp - 0x1b0]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x1b0]
movsx ecx, byte [ebp + eax - 0x8e0]
cmp edx, ecx
jne 0x40b3e3
jmp 0x40b329
jmp 0x40b3ea
push eax
or eax, 0x4d79
and eax, 0x13320
xor eax, 0x6e8e
pop eax
push eax
push ebx
add esp, 4
xor eax, 0x16ecc
add eax, 0xcf40
and eax, 0x140f3
loopne 0x40b405
inc eax
add dword [eax], eax
int3
loopne 0x40b405
inc eax
add dword [eax], eax
add eax, 0x1165b
pop eax
mov edx, dword [ebp - 0x7c4]
add edx, dword [ebp - 0x1b0]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x1b0]
dec dword [edi]
mov esi, 0xf7200d94
invalid
invalid
cmp eax, edx
jne 0x40b449
mov dword [ebp - 0xd6c], 0
jmp 0x40b4b8
push esi
call 0x40b459
add byte [esi + 0x34], al
inc ebp
push eax
inc esp
cmp al, 0x36
dec esp
add esp, 4
add esi, 0x525d
or esi, 0x13b3f
add esi, 0xe54a
pop esi
push ecx
push ecx
add esp, 4
sub ecx, 0xe1aa
pop ecx
mov eax, dword [ebp - 0x7c4]
add eax, dword [ebp - 0x1b0]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x1b0]
movsx eax, byte [ebp + edx - 0x8e0]
or eax, 0x20
cmp ecx, eax
jge 0x40b4ae
mov dword [ebp - 0xd6c], 0xffffffff
jmp 0x40b4b8
mov dword [ebp - 0xd6c], 1
cmp dword [ebp - 0xd6c], 0
jne 0x40b4cf
mov ecx, dword [ebp - 0x1e88]
mov dword [ebp - 0x550], ecx
jmp 0x40b4e0
jmp 0x40b2b9
mov edx, dword [ebp - 0x7c8]
mov dword [ebp - 0x550], edx
mov eax, dword [ebp - 0x550]
mov dword [ebp - 0x7f4], eax
push edi
push edx
add esp, 4
and edi, 0x7ec4
and edi, 0xea0c
xor edi, 0xf2a6
pop edi
push esi
sub esi, 0x9d
pop esi
push edi
push ebx
add esp, 4
xor edi, 0x1fdc
jmp 0x40b51d
pop edi
mov ecx, dword [ebp - 0x42c]
add ecx, 0xe
mov dword [ebp - 0x1b24], ecx
push ebx
push edx
add esp, 4
jmp 0x40b538
pop ebx
push ebx
push ecx
add esp, 4
and ebx, 0x17e98
and ebx, 0xec34
jmp 0x40b54f
call 0x40b55b
add byte [esi + 0x47], cl
dec esp
push eax
inc esi
cmp eax, dword [ebx - 0x7ca4fb3c]
mov ebp, 0xfffffbd4
add byte [ecx + ecx - 0x7d], dh
mov ebp, 0xfffff4b8
add byte [ebp + 0x46], dh
push edi
push edi
add esp, 4
call 0x40b585
add byte [edx + 0x42], cl
dec ebx
inc edi
inc esi
dec ecx
inc ecx
add esp, 4
sub edi, 0x12d91
pop edi
push esi
or esi, 0x123b3
and esi, 0xb687
or esi, 0xb03d
pop esi
mov edx, dword [ebp - 0x7f4]
mov dword [ebp - 0x1ad8], edx
push 0
call dword [ebp - 0x1ad8]
mov dword [ebp - 0x2244], 0xa
push ebx
push ecx
add esp, 4
and ebx, 0xa34f
or ebx, 0x6b64
pop ebx
push ebx
jmp 0x40b5dd
call 0x40b5e9
add byte [ebx], dh
aaa
cmp eax, dword [ebx + 0x3c]
inc edx
add esp, 4
sub ebx, 0x4506
pop ebx
mov eax, dword [ebp - 0x42c]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x3da], cl
mov edx, dword [ebp - 0xb48]
sub edx, dword [ebp - 0x42c]
mov dword [ebp - 0x1798], edx
mov dword [ebp - 0xd9c], 0
push ecx
add ecx, 0x3056
sub ecx, 0x11996
add ecx, 0x52
pop ecx
push edx
call 0x40b640
add byte [ebx + ecx*2], bh
inc ecx
xor al, 0x41
dec edx
add esp, 4
and edx, 0x17c81
add edx, 0x102b1
pop edx
mov byte [ebp - 0xa5c], 0x56
mov byte [ebp - 0xa5b], 0x69
mov byte [ebp - 0xa5a], 0x72
mov byte [ebp - 0xa59], 0x74
mov byte [ebp - 0xa58], 0x75
mov byte [ebp - 0xa57], 0x61
mov byte [ebp - 0xa56], 0x6c
mov byte [ebp - 0xa55], 0x50
mov byte [ebp - 0xa54], 0x72
mov byte [ebp - 0xa53], 0x6f
mov byte [ebp - 0xa52], 0x74
mov byte [ebp - 0xa51], 0x65
mov byte [ebp - 0xa50], 0x63
mov byte [ebp - 0xa4f], 0x74
mov byte [ebp - 0xa4e], 0
push esi
jmp 0x40b6bf
xor esi, 0xeb46
call 0x40b6d5
add byte [esi + esi + 0x33], al
inc edi
inc ebx
aaa
xor al, 0x3b
cmp al, 0x40
add esp, 4
pop esi
push eax
push esi
add esp, 4
sub eax, 0x1473a
xor eax, 0x1421
pop eax
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1adc], eax
mov ecx, dword [ebp - 0x1adc]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1ae0], edx
mov eax, dword [ebp - 0x1ae0]
mov dword [ebp - 0x1710], eax
push esi
push edx
add esp, 4
add esi, 0x1223b
xor esi, 0x14d3c
call 0x40b730
add byte [edx + esi + 0x3c], al
dec esi
xor edi, dword [eax]
add esp, 4
call 0x40b740
add byte [ebx + 0x4b], cl
xor al, byte [eax + 0x49]
dec eax
cmp byte [ebx - 0x7ca1fb3c], al
mov ebp, 0xffffe8f0
add byte [ebp + 0xf], dh
mov dword [ebp - 0x33c], 0
jmp 0x40ba03
push eax
sub eax, 0x4595
jmp 0x40ba10
pop eax
push ebx
jmp 0x40ba1a
pop ebx
push ecx
xor ecx, 0xe2ea
add ecx, 0x10736
pop ecx
push edx
push ecx
add esp, 4
jmp 0x40ba34
pop edx
cmp dword [ebp - 0x33c], 0
jne 0x40c33a
mov eax, 0x6b
mov word [ebp - 0x18cc], ax
mov ecx, 0x65
mov word [ebp - 0x18ca], cx
mov edx, 0x72
mov word [ebp - 0x18c8], dx
mov eax, 0x6e
mov word [ebp - 0x18c6], ax
mov ecx, 0x65
mov word [ebp - 0x18c4], cx
mov edx, 0x6c
mov word [ebp - 0x18c2], dx
mov eax, 0x33
mov word [ebp - 0x18c0], ax
mov ecx, 0x32
mov word [ebp - 0x18be], cx
mov edx, 0x2e
mov word [ebp - 0x18bc], dx
mov eax, 0x64
mov word [ebp - 0x18ba], ax
mov ecx, 0x6c
mov word [ebp - 0x18b8], cx
mov edx, 0x6c
mov word [ebp - 0x18b6], dx
xor eax, eax
mov word [ebp - 0x18b4], ax
push ecx
push eax
add esp, 4
call 0x40baec
add byte [ecx + 0x45], cl
inc esp
cmp ecx, dword [esi + 0x49]
add esp, 4
pop ecx
push esi
xor esi, 0xeaaa
and esi, 0xfea5
jmp 0x40bb06
sub esi, 0xe793
pop esi
mov byte [ebp - 0x90c], 0x4c
mov byte [ebp - 0x90b], 0x6f
mov byte [ebp - 0x90a], 0x61
mov byte [ebp - 0x909], 0x64
mov byte [ebp - 0x908], 0x4c
mov byte [ebp - 0x907], 0x69
mov byte [ebp - 0x906], 0x62
mov byte [ebp - 0x905], 0x72
mov byte [ebp - 0x904], 0x61
mov byte [ebp - 0x903], 0x72
mov byte [ebp - 0x902], 0x79
mov byte [ebp - 0x901], 0x57
mov byte [ebp - 0x900], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x1ae4], ecx
mov edx, dword [ebp - 0x1ae4]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x1ae8], eax
mov ecx, dword [ebp - 0x1ae8]
mov dword [ebp - 0x171c], ecx
push ecx
push ebx
add esp, 4
call 0x40bba2
add byte [edx], dh
cmp cl, byte [esi + 0x3d]
cmp dh, byte [ecx*2 - 0x7efb3b7d]
int1
popal
lock add byte [eax], al
add ecx, 0xb4c2
call 0x40bbbe
add byte [edi + 0x49], al
inc esi
cmp byte ss:[edi + 0x39], al
add esp, 4
pop ecx
cmp dword [ebp - 0x171c], 0
jne 0x40bbda
mov dword [ebp - 0x7cc], 0
jmp 0x40be81
mov edx, dword [ebp - 0x171c]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xd84], ecx
push eax
push esi
add esp, 4
add eax, 0x1711a
add eax, 0x8c43
pop eax
push ecx
push edx
add esp, 4
sub ecx, 0xf05a
pop ecx
push eax
push ebx
add esp, 4
jmp 0x40bc17
sub eax, 0xaa07
pop eax
cmp dword [ebp - 0xd84], 0
jne 0x40bc36
mov dword [ebp - 0x7cc], 0
jmp 0x40be81
mov edx, dword [ebp - 0xd84]
mov dword [ebp - 0x558], edx
push eax
push ecx
add esp, 4
call 0x40bc54
add byte [eax + 0x36], dl
inc ebx
inc ebp
dec edx
inc edi
inc edi
add esp, 4
jmp 0x40bc5f
jmp 0x40bc65
and eax, 0x71e
pop eax
push edx
or edx, 0xb6c1
pop edx
lea eax, [ebp - 0x18cc]
mov dword [ebp - 0xd80], eax
mov ecx, dword [ebp - 0x558]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xd7c], edx
xor eax, eax
mov word [ebp - 0x238], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
push ebx
push edi
add esp, 4
or ebx, 0x1339e
sub ebx, 0x123b1
sub ebx, 0x10e75
pop ebx
push edx
push ebx
add esp, 4
jmp 0x40bcc1
or edx, 0xd6c8
pop edx
push ebx
and ebx, 0x17795
pop ebx
mov edx, dword [ebp - 0xd7c]
mov ax, word [edx]
mov word [ebp - 0x1122], ax
mov ecx, dword [ebp - 0xd7c]
add ecx, 2
mov dword [ebp - 0xd7c], ecx
mov dx, word [ebp - 0x1122]
mov word [ebp - 0x238], dx
mov eax, dword [ebp - 0xd80]
mov cx, word [eax]
mov word [ebp - 0x1124], cx
mov edx, dword [ebp - 0xd80]
add edx, 2
mov dword [ebp - 0xd80], edx
mov ax, word [ebp - 0x1124]
mov word [ebp - 0x3c], ax
push ebx
push ecx
add esp, 4
and ebx, 0x24e8
pop ebx
push esi
and esi, 0x11956
or esi, 0xf5a0
add esi, 0xa3f0
call 0x40bd55
add byte [edi + 0x3e], al
inc esi
inc esi
dec eax
push eax
dec ebx
cmp eax, 0x4c4834b
pop esi
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x40bd76
movzx edx, word [ebp - 0x238]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x176c], edx
jmp 0x40bdd0
movzx ecx, word [ebp - 0x238]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x40bc9e
movzx eax, word [ebp - 0x238]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x40bc9e
movzx edx, word [ebp - 0x238]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x40bdba
mov dword [ebp - 0x1720], 0xffffffff
jmp 0x40bdc4
mov dword [ebp - 0x1720], 1
mov ecx, dword [ebp - 0x1720]
mov dword [ebp - 0x176c], ecx
cmp dword [ebp - 0x176c], 0
jne 0x40be19
push esi
push edx
add esp, 4
sub esi, 0x159fc
xor esi, 0x655d
pop esi
push ebx
sub ebx, 0xf37d
and ebx, 0x9b80
pop ebx
push ebx
push edi
add esp, 4
sub ebx, 0x11052
xor ebx, 0xef2e
pop ebx
mov edx, dword [ebp - 0x558]
mov dword [ebp - 0x7cc], edx
jmp 0x40be81
push eax
add eax, 0xb827
call 0x40be2d
add byte [esp + eax*2], bh
inc edx
cmp cl, byte [ebp + ecx*2 + 0x3d]
add esp, 4
and eax, 0xf2b7
add eax, 0x11377
pop eax
push ecx
or ecx, 0x17936
xor ecx, 0x6700
pop ecx
mov eax, dword [ebp - 0x558]
mov ecx, dword [eax]
mov dword [ebp - 0x558], ecx
mov edx, dword [ebp - 0x558]
cmp edx, dword [ebp - 0xd84]
je 0x40be77
mov eax, dword [ebp - 0x558]
cmp dword [eax + 0x30], 0
jne 0x40bc42
mov dword [ebp - 0x7cc], 0
push esi
push ebx
add esp, 4
or esi, 0x5ca0
call 0x40be9c
add byte [esi + 0x3e], al
dec ebp
dec eax
inc ecx
inc ebx
inc edi
dec esi
inc esi
inc ecx
add esp, 4
call 0x40beaf
add byte [eax + 0x37], dl
xor al, 0x4d
inc ebp
dec ebx
aaa
inc edx
xor al, byte [ebx - 0x7ca1fb3c]
mov ebp, 0xfffff834
add byte [ebp + 0x41], dh
push edx
xor edx, 0x161f3
call 0x40bed2
add byte [ecx + 0x38], al
cmp esi, dword [ebx]
inc eax
inc ebp
cmp dword [esi + ecx*2], edi
add esp, 4
or edx, 0x6746
call 0x40beea
add byte [eax + 0x4e], al
inc esp
inc edx
aaa
xor cl, byte [ebp + 0x44]
inc esp
add esp, 4
pop edx
mov dword [ebp - 0xb44], 0
jmp 0x40ca25
push ecx
push ecx
add esp, 4
xor ecx, 0x7271
pop ecx
push ecx
sub ecx, 0x27d9
pop ecx
push eax
push eax
add esp, 4
and eax, 0x12385
and eax, 0x10e1c
and eax, 0x103f7
or eax, 0x1b7d
pop eax
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x1b04], ecx
mov edx, dword [ebp - 0x1b04]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x1b08], eax
mov ecx, dword [ebp - 0x1b08]
mov dword [ebp - 0x1780], ecx
push ecx
push edx
add esp, 4
add ecx, 0xb2fd
pop ecx
push ecx
jmp 0x40c3a8
and ecx, 0x18178
pop ecx
push edi
or edi, 0x171b2
call 0x40c3c2
add byte [edi], bh
cmp ecx, dword [edi + 0x35]
dec edi
xor eax, 0x5f04c483
cmp dword [ebp - 0x1780], 0
jne 0x40c3de
mov dword [ebp - 0x33c], 0
jmp 0x40c685
mov edx, dword [ebp - 0x1780]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xd94], ecx
push ecx
push ebx
add esp, 4
or ecx, 0x17bef
sub ecx, 0x82a0
pop ecx
push esi
push edx
add esp, 4
or esi, 0xf6bf
add esi, 0x97b5
pop esi
push ecx
or ecx, 0x171ad
and ecx, 0x8df7
pop ecx
cmp dword [ebp - 0xd94], 0
jne 0x40c43a
mov dword [ebp - 0x33c], 0
jmp 0x40c685
mov edx, dword [ebp - 0xd94]
mov dword [ebp - 0x55c], edx
push ecx
push ebx
add esp, 4
and ecx, 0x29f3
add ecx, 0x19c7
add ecx, 0xe553
pop ecx
push ebx
xor ebx, 0x10c88
sub ebx, 0xda2b
and ebx, 0x13374
and ebx, 0x3509
pop ebx
lea eax, [ebp - 0x1844]
mov dword [ebp - 0xd90], eax
mov ecx, dword [ebp - 0x55c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xd8c], edx
xor eax, eax
mov word [ebp - 0x23c], ax
xor ecx, ecx
mov word [ebp - 0x40], cx
push ecx
push eax
add esp, 4
jmp 0x40c4ad
sub ecx, 0xdd97
pop ecx
push edx
add edx, 0x14b15
and edx, 0x714e
pop edx
push ecx
push eax
add esp, 4
and ecx, 0x46b7
xor ecx, 0x16f7b
pop ecx
mov edx, dword [ebp - 0xd8c]
mov ax, word [edx]
mov word [ebp - 0x1126], ax
mov ecx, dword [ebp - 0xd8c]
add ecx, 2
mov dword [ebp - 0xd8c], ecx
mov dx, word [ebp - 0x1126]
mov word [ebp - 0x23c], dx
mov eax, dword [ebp - 0xd90]
mov cx, word [eax]
mov word [ebp - 0x1128], cx
mov edx, dword [ebp - 0xd90]
add edx, 2
mov dword [ebp - 0xd90], edx
mov ax, word [ebp - 0x1128]
mov word [ebp - 0x40], ax
push esi
push edi
add esp, 4
xor esi, 0x5d80
pop esi
push edi
push ecx
add esp, 4
and edi, 0x1ff1
sub edi, 0x9ee7
or edi, 0x1323
and edi, 0x15163
pop edi
push esi
and esi, 0x12340
pop esi
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x40c57a
movzx edx, word [ebp - 0x23c]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x1788], edx
jmp 0x40c5d4
movzx ecx, word [ebp - 0x23c]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x40c4a2
movzx eax, word [ebp - 0x23c]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x40c4a2
movzx edx, word [ebp - 0x23c]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x40c5be
mov dword [ebp - 0x1784], 0xffffffff
jmp 0x40c5c8
mov dword [ebp - 0x1784], 1
mov ecx, dword [ebp - 0x1784]
mov dword [ebp - 0x1788], ecx
cmp dword [ebp - 0x1788], 0
jne 0x40c61d
push ebx
push ecx
add esp, 4
jmp 0x40c5e9
pop ebx
push edi
and edi, 0x14a29
call 0x40c5ff
add byte [eax + 0x32], al
xor eax, 0x4b434a37
inc ebp
add esp, 4
add edi, 0x15f50
xor edi, 0x13480
pop edi
mov edx, dword [ebp - 0x55c]
mov dword [ebp - 0x33c], edx
jmp 0x40c685
push esi
jmp 0x40c623
or esi, 0xca2f
and esi, 0xa3ff
xor esi, 0x3a87
pop esi
push ecx
sub ecx, 0x16d94
or ecx, 0xec68
jmp 0x40c648
add ecx, 0x9c27
pop ecx
mov eax, dword [ebp - 0x55c]
mov ecx, dword [eax]
mov dword [ebp - 0x55c], ecx
mov edx, dword [ebp - 0x55c]
cmp edx, dword [ebp - 0xd94]
je 0x40c67b
mov eax, dword [ebp - 0x55c]
cmp dword [eax + 0x30], 0
jne 0x40c446
mov dword [ebp - 0x33c], 0
push edi
push ecx
add esp, 4
add edi, 0x8934
sub edi, 0xa551
xor edi, 0x1808
pop edi
push ebx
or ebx, 0x98f4
and ebx, 0xbe34
or ebx, 0x7240
add ebx, 0x6842
pop ebx
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x34c], edx
push eax
push eax
add esp, 4
xor eax, 0x17e3a
sub eax, 0x1560e
pop eax
push ecx
xor ecx, 0x81c
pop ecx
push esi
push edi
add esp, 4
sub esi, 0x3d7
jmp 0x40c6f1
xor esi, 0xe6f9
pop esi
mov dword [ebp - 0x7ec], 0
mov eax, dword [ebp - 0x34c]
mov dword [ebp - 0x178c], eax
cmp dword [ebp - 0x178c], 0
jne 0x40c728
mov ecx, dword [ebp - 0x7ec]
mov dword [ebp - 0x560], ecx
jmp 0x40ca19
mov edx, dword [ebp - 0x178c]
mov eax, dword [ebp - 0x34c]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1790], eax
jne 0x40c750
mov ecx, dword [ebp - 0x7ec]
mov dword [ebp - 0x560], ecx
jmp 0x40ca19
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1790]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1794], edx
cmp dword [ebp - 0x1794], 0
jne 0x40c782
mov eax, dword [ebp - 0x7ec]
mov dword [ebp - 0x560], eax
jmp 0x40ca19
mov ecx, dword [ebp - 0x34c]
add ecx, dword [ebp - 0x1794]
mov dword [ebp - 0x7e0], ecx
jne 0x40c7a7
mov edx, dword [ebp - 0x7ec]
mov dword [ebp - 0x560], edx
jmp 0x40ca19
mov eax, dword [ebp - 0x7e0]
mov ecx, dword [ebp - 0x34c]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x1b0c], ecx
mov edx, dword [ebp - 0x7e0]
mov eax, dword [ebp - 0x34c]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x1b10], eax
mov ecx, dword [ebp - 0x7e0]
mov edx, dword [ebp - 0x34c]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1b14], edx
mov dword [ebp - 0x7e4], 0
jmp 0x40c801
mov eax, dword [ebp - 0x7e4]
add eax, 1
mov dword [ebp - 0x7e4], eax
mov ecx, dword [ebp - 0x7e0]
mov edx, dword [ebp - 0x7e4]
cmp edx, dword [ecx + 0x18]
jae 0x40ca0d
mov eax, dword [ebp - 0x7e4]
mov ecx, dword [ebp - 0x1b0c]
mov edx, dword [ebp - 0x34c]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x7e8], edx
mov eax, dword [ebp - 0x7e4]
mov ecx, dword [ebp - 0x1b10]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x1b14]
mov ecx, dword [ebp - 0x34c]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1b18], ecx
mov dword [ebp - 0x1b8], 0
jmp 0x40c871
mov edx, dword [ebp - 0x1b8]
add edx, 1
mov dword [ebp - 0x1b8], edx
mov eax, dword [ebp - 0x7e8]
add eax, dword [ebp - 0x1b8]
movsx ecx, byte [eax]
test ecx, ecx
je 0x40c923
mov edx, dword [ebp - 0x1b8]
movsx eax, byte [ebp + edx - 0xa5c]
test eax, eax
je 0x40c923
push esi
sub esi, 0x12a04
call 0x40c8b4
add byte [esi + 0x45], cl
dec edi
cmp al, 0x33
dec esp
cmp eax, 0x4c48350
pop esi
push esi
push edi
add esp, 4
or esi, 0x12c6c
add esi, 0x12145
sub esi, 0x736b
pop esi
mov ecx, dword [ebp - 0x7e8]
add ecx, dword [ebp - 0x1b8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1b8]
movsx ecx, byte [ebp + eax - 0xa5c]
cmp edx, ecx
je 0x40c915
mov edx, dword [ebp - 0x7e8]
add edx, dword [ebp - 0x1b8]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1b8]
movsx edx, byte [ebp + ecx - 0xa5c]
cmp eax, edx
jne 0x40c91c
jmp 0x40c862
jmp 0x40c923
push eax
add eax, 0x4862
and eax, 0x6722
add eax, 0x14567
and eax, 0x146a
pop eax
push ebx
push edx
add esp, 4
or ebx, 0x925e
or ebx, 0xab7a
add ebx, 0x10d68
pop ebx
mov eax, dword [ebp - 0x7e8]
add eax, dword [ebp - 0x1b8]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1b8]
movsx eax, byte [ebp + edx - 0xa5c]
cmp ecx, eax
jne 0x40c982
mov dword [ebp - 0xd98], 0
jmp 0x40c9f1
push eax
push edx
add esp, 4
add eax, 0xa6c5
or eax, 0x1848b
pop eax
push esi
push edx
add esp, 4
jmp 0x40c9a2
call 0x40c9b0
add byte [ebp + 0x43], al
inc edi
inc ecx
push eax
dec eax
aaa
add esp, 4
pop esi
mov ecx, dword [ebp - 0x7e8]
add ecx, dword [ebp - 0x1b8]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1b8]
movsx ecx, byte [ebp + eax - 0xa5c]
or ecx, 0x20
cmp edx, ecx
jge 0x40c9e7
mov dword [ebp - 0xd98], 0xffffffff
jmp 0x40c9f1
mov dword [ebp - 0xd98], 1
cmp dword [ebp - 0xd98], 0
jne 0x40ca08
mov edx, dword [ebp - 0x1b18]
mov dword [ebp - 0x560], edx
jmp 0x40ca19
jmp 0x40c7f2
mov eax, dword [ebp - 0x7ec]
mov dword [ebp - 0x560], eax
mov ecx, dword [ebp - 0x560]
mov dword [ebp - 0xb44], ecx
push ecx
sub ecx, 0xeada
xor ecx, 0xca23
and ecx, 0x185aa
pop ecx
push ecx
push ebx
add esp, 4
xor ecx, 0x16e99
sub ecx, 0xb0c4
xor ecx, 0x44cb
xor ecx, 0xd197
pop ecx
mov edx, dword [ebp - 0xb44]
mov dword [ebp - 0x1b1c], edx
lea eax, [ebp - 0xd9c]
push eax
push 0x40
mov ecx, dword [ebp - 0x1798]
push ecx
mov edx, dword [ebp - 0x42c]
push edx
call dword [ebp - 0x1b1c]
test eax, eax
jne 0x40caca
push edx
push edx
add esp, 4
add edx, 0x75ed
sub edx, 0x7b38
and edx, 0xdf2c
sub edx, 0x2ac
pop edx
push edx
and edx, 0x6663
sub edx, 0x13cf0
or edx, 0x2d65
pop edx
mov eax, dword [ebp - 0x7f4]
mov dword [ebp - 0x1b20], eax
push 0
call dword [ebp - 0x1b20]
mov ecx, dword [ebp - 0x1b24]
mov dword [ebp - 0x7f0], ecx
jmp 0x40cae7
mov edx, dword [ebp - 0x7f0]
add edx, 1
mov dword [ebp - 0x7f0], edx
mov eax, dword [ebp - 0x7f0]
cmp eax, dword [ebp - 0xb48]
jae 0x40cb43
push edi
push ecx
add esp, 4
call 0x40cb09
add byte [ecx + 0x45], al
dec ebx
dec edx
dec edi
dec esi
xor al, byte [esi + ecx*2 - 0x7d]
les eax, [ecx + eax*4]
out 0x51, eax
stc
add byte [eax], al
sub edi, 0x4797
pop edi
push edi
sub edi, 0x7a4d
sub edi, 0x98c4
pop edi
movzx ecx, byte [ebp - 0x3da]
mov edx, dword [ebp - 0x7f0]
movsx eax, byte [edx]
sub eax, ecx
mov ecx, dword [ebp - 0x7f0]
mov byte [ecx], al
jmp 0x40cad8
mov edx, dword [ebp - 0xb44]
mov dword [ebp - 0x1b28], edx
lea eax, [ebp - 0xd9c]
push eax
mov ecx, dword [ebp - 0xd9c]
push ecx
mov edx, dword [ebp - 0x1798]
push edx
mov eax, dword [ebp - 0x42c]
push eax
call dword [ebp - 0x1b28]
test eax, eax
jne 0x40cbbb
push edx
add edx, 0x132f0
sub edx, 0x17cca
sub edx, 0x11aa4
pop edx
push esi
push ecx
add esp, 4
xor esi, 0x6df8
add esi, 0x17b85
sub esi, 0x9d63
and esi, 0x1750
pop esi
mov ecx, dword [ebp - 0x7f4]
mov dword [ebp - 0x1b2c], ecx
push 0
call dword [ebp - 0x1b2c]
push ecx
push ebx
add esp, 4
call 0x40cbcf
add byte [edx + 0x46], cl
dec eax
dec esp
aas
cmp dword [ebx], edi
cmp al, 0x4b
add esp, 4
pop ecx
push edx
xor edx, 0x4e8f
xor edx, 0xb402
add edx, 0x148c7
or edx, 0x9fe6
pop edx
push edx
mov ecx, 0x10101010
pop edx
push ecx
mov ecx, 0xffff04ff
pop ecx
pop edx
test edx, esi
nop
sbb byte [0xd4ca8504], al
xor eax, dword [0x40cec04]
add al, 4
add al, 0x4f
push ebx
push eax
dec ecx
aas
push esp
cmp dword [edi - 0x2d7af738], eax
dec eax
add eax, 0x855a6204
cli
sub al, byte [esp + eax - 0x17357afc]
jmp 0xcaa2d032