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

Disassembly:
add ecx, 0x17df1
or ecx, 0x899d
jmp 0x406366
pop ecx
push ecx
push edi
add esp, 4
or ecx, 0x17976
pop ecx
mov dword [ebp - 0x2034], 0xffffffff
push ebx
push eax
add esp, 4
xor ebx, 0x107fa
jmp 0x406390
and ebx, 0x9812
and ebx, 0x149f6
pop ebx
push edx
push ecx
add esp, 4
xor edx, 0xca3f
and edx, 0x27e4
pop edx
mov edx, dword [ebp - 0x3f4]
mov dword [ebp - 0x4f8], edx
jmp 0x4063cc
mov eax, dword [ebp - 0x4f8]
add eax, 1
mov dword [ebp - 0x4f8], eax
push eax
jmp 0x4063d5
sub eax, 0xbc6f
add eax, 0xf07e
pop eax
push ebx
add ebx, 0x344
pop ebx
push esi
call 0x4063fa
add byte [edx], bh
cmp dword ss:[edx], edi
dec ebp
inc ebp
dec eax
inc ebp
cmp eax, 0x5e04c483
mov ecx, dword [ebp - 0x4f8]
sub ecx, dword [ebp - 0x3f4]
cmp ecx, 0xffffffff
jb 0x406446
push edi
push ecx
add esp, 4
sub edi, 0x6e23
sub edi, 0x6b06
pop edi
push ebx
add ebx, 0x1545e
and ebx, 0xf62c
xor ebx, 0xc81a
pop ebx
push ebx
push edx
add esp, 4
sub ebx, 0x36d2
pop ebx
jmp 0x406642
mov dword [ebp - 0xc90], 7
mov edx, dword [ebp - 0x4f8]
mov dword [ebp - 0xa64], edx
push edi
add edi, 0x68b3
xor edi, 0x96ef
or edi, 0x5639
or edi, 0xde38
pop edi
push eax
push ecx
add esp, 4
call 0x40648a
add byte [eax + 0x46], al
inc ecx
inc esi
dec eax
inc eax
cmp esi, dword [esi]
xor eax, 0x5804c483
mov eax, dword [ebp - 0x15c0]
mov dword [ebp - 0xae4], eax
mov dword [ebp - 0xc94], 0
mov ecx, dword [ebp - 0x4f8]
cmp ecx, dword [ebp - 0x15c0]
jne 0x4064c3
mov edx, dword [ebp - 0xc94]
mov dword [ebp - 0x15c8], edx
jmp 0x4065f4
cmp dword [ebp - 0xc90], 0
jle 0x4065e8
push ebx
xor ebx, 0x5061
pop ebx
push esi
push ebx
add esp, 4
and esi, 0x5c04
call 0x4064f2
add byte [esi], dh
cmp bh, byte [eax]
dec edx
dec ebx
dec eax
push eax
cmp al, byte [esi - 0x7d]
les eax, [ebx + ebp*8]
add al, 0x4f
cmp eax, 0xc6813c3f
xchg edx, eax
outsb dx, byte [esi]
add dword [eax], eax
pop esi
mov eax, dword [ebp - 0xa64]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xae4]
movzx eax, byte [edx]
cmp ecx, eax
je 0x406584
push eax
push eax
add esp, 4
and eax, 0x10a0a
and eax, 0x15458
pop eax
push edx
push ebx
add esp, 4
and edx, 0x1184e
pop edx
push ecx
xor ecx, 0x7be2
add ecx, 0x158d7
or ecx, 0x14bf5
pop ecx
mov ecx, dword [ebp - 0xa64]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0xae4]
movzx ecx, byte [eax]
cmp edx, ecx
jle 0x40656c
mov dword [ebp - 0x15c4], 1
jmp 0x406576
mov dword [ebp - 0x15c4], 0xffffffff
mov edx, dword [ebp - 0x15c4]
mov dword [ebp - 0xc94], edx
jmp 0x4065e8
push ebx
push ecx
add esp, 4
jmp 0x406591
add ebx, 0xe3a
pop ebx
push ebx
call 0x4065a6
add byte [ebx + 0x49], al
inc esp
xor al, 0x4f
cmp bh, byte [eax]
add esp, 4
pop ebx
push eax
push eax
add esp, 4
xor eax, 0x7dfa
pop eax
mov eax, dword [ebp - 0xc90]
sub eax, 1
mov dword [ebp - 0xc90], eax
mov ecx, dword [ebp - 0xa64]
add ecx, 1
mov dword [ebp - 0xa64], ecx
mov edx, dword [ebp - 0xae4]
add edx, 1
mov dword [ebp - 0xae4], edx
jmp 0x4064c3
mov eax, dword [ebp - 0xc94]
mov dword [ebp - 0x15c8], eax
cmp dword [ebp - 0x15c8], 0
jne 0x40663d
push esi
push ecx
add esp, 4
call 0x406610
add byte [ecx + 0x4b], cl
xor eax, 0x4e374950
cmp byte [ebx + 0x7e804c4], al
add byte [eax], al
add byte [eax], al
inc esi
cmp dword [esi], edi
xor al, 0x40
dec ebx
add esp, 4
xor esi, 0x257c
add esi, 0xa542
pop esi
mov ecx, dword [ebp - 0x4f8]
mov dword [ebp - 0x3fc], ecx
jmp 0x40667e
jmp 0x4063bd
push ecx
push ecx
add esp, 4
xor ecx, 0x54dc
sub ecx, 0x10a3e
pop ecx
push esi
or esi, 0x11fed
xor esi, 0x346b
sub esi, 0x1d48
pop esi
push ecx
push edi
add esp, 4
jmp 0x406673
pop ecx
mov dword [ebp - 0x3fc], 0
push eax
push ecx
add esp, 4
xor eax, 0x11ee4
pop eax
push edi
push edx
add esp, 4
add edi, 0x8ab5
sub edi, 0x155eb
xor edi, 0x16bf
and edi, 0x1e37
pop edi
push esi
xor esi, 0x9a1d
pop esi
push esi
push edx
add esp, 4
and esi, 0x4792
or esi, 0xc146
pop esi
push esi
or esi, 0x16514
pop esi
push edx
push ebx
add esp, 4
add edx, 0xd200
pop edx
push esi
push edx
add esp, 4
xor esi, 0x408d
pop esi
mov edx, 1
imul eax, edx, 0
lea ecx, [ebp + eax - 0xbf8]
mov dword [ebp - 0x15cc], ecx
push esi
or esi, 0x5006
add esi, 0x4fa5
pop esi
push esi
sub esi, 0x1145e
pop esi
push esi
push edx
add esp, 4
jmp 0x406718
call 0x406725
add byte [esi + 0x36], al
cmp dword [edi + 0x32], eax
xor al, 0x42
add esp, 4
pop esi
mov dword [ebp - 0x2038], 0xffffffff
push edx
xor edx, 0xe1fa
or edx, 0x162e8
xor edx, 0xe76
xor edx, 0xa564
pop edx
push edx
push edi
add esp, 4
xor edx, 0x13403
and edx, 0x1c5b
xor edx, 0xe952
pop edx
mov edx, dword [ebp - 0x3f4]
mov dword [ebp - 0x4fc], edx
jmp 0x406782
mov eax, dword [ebp - 0x4fc]
add eax, 1
mov dword [ebp - 0x4fc], eax
push esi
sub esi, 0xb21a
add esi, 0xc8ff
pop esi
push ebx
call 0x40679d
add byte [esi + eax*2 + 0x44], cl
dec esp
cmp dh, byte [ebx]
add esp, 4
jmp 0x4067a7
and ebx, 0x106c
or ebx, 0x547c
pop ebx
mov ecx, dword [ebp - 0x4fc]
sub ecx, dword [ebp - 0x3f4]
cmp ecx, 0xffffffff
jb 0x4067fc
push eax
push edx
add esp, 4
jmp 0x4067d2
add eax, 0x119cb
add eax, 0x2a6d
add eax, 0x3b66
pop eax
push ebx
push edi
add esp, 4
add ebx, 0x64c7
sub ebx, 0x14ff2
pop ebx
jmp 0x4069f8
mov dword [ebp - 0xc98], 7
mov edx, dword [ebp - 0x4fc]
mov dword [ebp - 0xae0], edx
push ecx
push edx
add esp, 4
xor ecx, 0x5b10
and ecx, 0x11915
sub ecx, 0x16ce9
or ecx, 0x3d2
pop ecx
push edi
or edi, 0xb86a
or edi, 0x14d4c
and edi, 0x12279
pop edi
mov eax, dword [ebp - 0x15cc]
mov dword [ebp - 0xadc], eax
mov dword [ebp - 0xc9c], 0
mov ecx, dword [ebp - 0x4fc]
cmp ecx, dword [ebp - 0x15cc]
jne 0x406879
mov edx, dword [ebp - 0xc9c]
mov dword [ebp - 0x15d4], edx
jmp 0x4069aa
cmp dword [ebp - 0xc98], 0
jle 0x40699e
push ebx
push esi
add esp, 4
call 0x406897
add byte [0x403b3b45], dh
xor eax, dword [ebx + 0x515b04c4]
call 0x4068a9
add byte [eax + 0x4c], dl
dec edx
dec esi
inc ebx
cmp al, byte [edi - 0x7d]
les eax, [ebx + ebp*8]
add edi, dword [esi]
push eax
inc edi
sub ecx, 0x790b
pop ecx
mov eax, dword [ebp - 0xae0]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xadc]
movzx eax, byte [edx]
cmp ecx, eax
je 0x40693a
push edi
sub edi, 0x1580e
xor edi, 0x7dfc
call 0x4068ea
add byte [esi + eax*2], bh
cmp al, 0x44
xor ecx, dword ss:[eax + 0x45]
cmp eax, 0xe804c483
or al, byte [eax]
add byte [eax], al
add byte [edx + 0x34], cl
cmp al, 0x49
dec esp
inc ebp
inc eax
inc ecx
add esp, 4
pop edi
mov ecx, dword [ebp - 0xae0]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0xadc]
movzx ecx, byte [eax]
cmp edx, ecx
jle 0x406922
mov dword [ebp - 0x15d0], 1
jmp 0x40692c
mov dword [ebp - 0x15d0], 0xffffffff
mov edx, dword [ebp - 0x15d0]
mov dword [ebp - 0xc9c], edx
jmp 0x40699e
push eax
push edi
add esp, 4
jmp 0x406948
jmp 0x40694f
call 0x40695c
add byte [eax + 0x34], al
dec ebx
inc esi
inc esi
dec edx
dec edi
add esp, 4
pop eax
push edi
push edx
add esp, 4
or edi, 0x1c2
pop edi
mov eax, dword [ebp - 0xc98]
sub eax, 1
mov dword [ebp - 0xc98], eax
mov ecx, dword [ebp - 0xae0]
add ecx, 1
mov dword [ebp - 0xae0], ecx
mov edx, dword [ebp - 0xadc]
add edx, 1
mov dword [ebp - 0xadc], edx
jmp 0x406879
mov eax, dword [ebp - 0xc9c]
mov dword [ebp - 0x15d4], eax
cmp dword [ebp - 0x15d4], 0
jne 0x4069f3
push ecx
add ecx, 0xd275
or ecx, 0xdee7
pop ecx
push ecx
push edi
add esp, 4
xor ecx, 0x1471
and ecx, 0x166ad
and ecx, 0xe216
pop ecx
push ecx
push ecx
add esp, 4
sub ecx, 0x193b
pop ecx
mov ecx, dword [ebp - 0x4fc]
mov dword [ebp - 0xad8], ecx
jmp 0x406a34
jmp 0x406773
push esi
xor esi, 0x1694d
sub esi, 0x1b3f
sub esi, 0x17432
pop esi
push esi
and esi, 0x23fe
call 0x406a20
add byte [ebp + 0x32], al
dec edi
inc edx
dec edi
dec esp
cmp byte [ebx - 0x117efb3c], al
popal
dec esi
add byte [eax], al
pop esi
mov dword [ebp - 0xad8], 0
push ecx
push ebx
add esp, 4
sub ecx, 0x11058
xor ecx, 0x13981
call 0x406a53
add byte [esi], bh
push eax
dec ebp
dec eax
inc eax
dec edx
cmp al, 0x49
add esp, 4
call 0x406a62
add byte [eax + 0x43], cl
cmp dword [ebp + 0x39], eax
cmp byte [ebx - 0x39a6fb3c], al
test dword [eax + 0x45fffff7], eax
mov byte [ebp - 0x87f], 0x78
mov byte [ebp - 0x87e], 0x69
mov byte [ebp - 0x87d], 0x74
mov byte [ebp - 0x87c], 0x50
mov byte [ebp - 0x87b], 0x72
mov byte [ebp - 0x87a], 0x6f
mov byte [ebp - 0x879], 0x63
mov byte [ebp - 0x878], 0x65
mov byte [ebp - 0x877], 0x73
mov byte [ebp - 0x876], 0x73
mov byte [ebp - 0x875], 0
push ebx
and ebx, 0x15fbb
pop ebx
push edi
push esi
add esp, 4
xor edi, 0x15e2b
sub edi, 0x10490
add edi, 0x5cee
pop edi
push eax
push edx
add esp, 4
and eax, 0xf702
add eax, 0x9ac1
pop eax
mov edx, 0x6b
mov word [ebp - 0x173c], dx
mov eax, 0x65
mov word [ebp - 0x173a], ax
mov ecx, 0x72
mov word [ebp - 0x1738], cx
mov edx, 0x6e
mov word [ebp - 0x1736], dx
mov eax, 0x65
mov word [ebp - 0x1734], ax
mov ecx, 0x6c
mov word [ebp - 0x1732], cx
mov edx, 0x33
mov word [ebp - 0x1730], dx
mov eax, 0x32
mov word [ebp - 0x172e], ax
mov ecx, 0x2e
mov word [ebp - 0x172c], cx
mov edx, 0x64
mov word [ebp - 0x172a], dx
mov eax, 0x6c
mov word [ebp - 0x1728], ax
mov ecx, 0x6c
mov word [ebp - 0x1726], cx
xor edx, edx
mov word [ebp - 0x1724], dx
push esi
or esi, 0x57a6
or esi, 0xa8e4
pop esi
push esi
xor esi, 0x8371
pop esi
push edi
jmp 0x406ba4
xor edi, 0x7e71
add edi, 0x7dfc
or edi, 0x41aa
pop edi
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1968], eax
mov ecx, dword [ebp - 0x1968]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x196c], edx
mov eax, dword [ebp - 0x196c]
mov dword [ebp - 0x159c], eax
push edx
push ebx
add esp, 4
and edx, 0x149c2
or edx, 0x7154
pop edx
push edi
xor edi, 0x561a
and edi, 0x36ed
call 0x406c0c
add byte [esi + 0x46], cl
xor al, 0x45
xor al, 0x4f
cmp dword [eax], edi
add esp, 4
pop edi
cmp dword [ebp - 0x159c], 0
jne 0x406c28
mov dword [ebp - 0x2f0], 0
jmp 0x406ee4
mov ecx, dword [ebp - 0x159c]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xca8], eax
push ebx
sub ebx, 0x15acc
pop ebx
push ecx
add ecx, 0x6beb
jmp 0x406c51
or ecx, 0x1386a
pop ecx
push eax
or eax, 0x964c
and eax, 0x2e62
or eax, 0x2682
pop eax
cmp dword [ebp - 0xca8], 0
jne 0x406c84
mov dword [ebp - 0x2f0], 0
jmp 0x406ee4
mov ecx, dword [ebp - 0xca8]
mov dword [ebp - 0x500], ecx
push edx
or edx, 0x11874
call 0x406ca3
add byte [esi], bh
inc esp
inc edx
dec esi
inc ebx
push eax
add esp, 4
jmp 0x406cab
pop edx
push esi
xor esi, 0x93d9
pop esi
push edx
or edx, 0xb50b
jmp 0x406cc1
pop edx
lea edx, [ebp - 0x173c]
mov dword [ebp - 0xca4], edx
invalid
invalid
dec dword [ebx - 0x4ff7b]
dec dword [ebx - 0x7276cfb8]
pushal
invalid
invalid
push dword [ebx]
shl byte [esi - 0x77], cl
xchg ebp, eax
aam 0xfd
invalid
push dword [ebx]
shl byte [esi - 0x77], 0x85
fdivr st(6)
invalid
invalid
push ebx
push ebx
add esp, 4
add ebx, 0xa940
call 0x406d0a
add byte [esp + esi + 0x48], al
push eax
cmp dword [0x454a3c3c], edi
add esp, 4
pop ebx
push edx
call 0x406d1d
add byte [esi + 0x35], cl
xor bh, byte [edi]
cmp dword [ecx*2 + 0x4c48339], edi
pop edx
mov ecx, dword [ebp - 0xca0]
mov dx, word [ecx]
mov word [ebp - 0x1042], dx
mov eax, dword [ebp - 0xca0]
add eax, 2
mov dword [ebp - 0xca0], eax
mov cx, word [ebp - 0x1042]
mov word [ebp - 0x22c], cx
mov edx, dword [ebp - 0xca4]
mov ax, word [edx]
mov word [ebp - 0x1044], ax
mov ecx, dword [ebp - 0xca4]
add ecx, 2
mov dword [ebp - 0xca4], ecx
mov dx, word [ebp - 0x1044]
mov word [ebp - 0x128], dx
push ebx
push edi
add esp, 4
and ebx, 0xd1e0
pop ebx
push ecx
sub ecx, 0xf76a
xor ecx, 0x14767
call 0x406da3
add byte [ebx], bh
dec ebp
dec esp
dec ebp
aaa
xor ecx, dword [esi + 0x49]
push eax
add esp, 4
or ecx, 0x43fa
pop ecx
movzx eax, word [ebp - 0x128]
test eax, eax
jne 0x406dd0
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x128]
sub ecx, edx
mov dword [ebp - 0x15dc], ecx
jmp 0x406e33
movzx eax, word [ebp - 0x22c]
movzx ecx, word [ebp - 0x128]
cmp eax, ecx
je 0x406cef
movzx edx, word [ebp - 0x22c]
xor edx, 0x20
movzx eax, word [ebp - 0x128]
cmp edx, eax
je 0x406cef
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x128]
cmp ecx, edx
jge 0x406e1d
mov dword [ebp - 0x15d8], 0xffffffff
jmp 0x406e27
mov dword [ebp - 0x15d8], 1
mov eax, dword [ebp - 0x15d8]
mov dword [ebp - 0x15dc], eax
cmp dword [ebp - 0x15dc], 0
jne 0x406e7c
push esi
xor esi, 0x1813e
call 0x406e52
add byte [ebx + 0x4d], cl
inc esi
inc ebp
inc edx
inc ecx
cmp eax, 0x4c48340
and esi, 0xf232
xor esi, 0x1807e
pop esi
push edi
push edx
add esp, 4
add edi, 0x13661
pop edi
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0x2f0], ecx
jmp 0x406ee4
push edi
push esi
add esp, 4
xor edi, 0xedcb
call 0x406e95
add byte [eax + 0x42], al
aas
cmp bh, byte [edi]
cmp bh, byte ss:[ecx]
add esp, 4
jmp 0x406e9d
call 0x406eaa
add byte [eax], bh
dec ebx
push eax
cmp byte [ecx + 0x46], cl
dec eax
add esp, 4
pop edi
mov edx, dword [ebp - 0x500]
mov eax, dword [edx]
mov dword [ebp - 0x500], eax
mov ecx, dword [ebp - 0x500]
cmp ecx, dword [ebp - 0xca8]
je 0x406eda
mov edx, dword [ebp - 0x500]
cmp dword [edx + 0x30], 0
jne 0x406c90
mov dword [ebp - 0x2f0], 0
push ecx
and ecx, 0x14cdf
jmp 0x406ef4
and ecx, 0xb650
xor ecx, 0x7c59
pop ecx
push eax
push eax
add esp, 4
call 0x406f12
add byte [edx], bh
dec ecx
inc edx
dec esi
aas
inc ebp
add esp, 4
pop eax
cmp dword [ebp - 0x2f0], 0
jne 0x4077e9
mov eax, 0x6b
mov word [ebp - 0x1778], ax
mov ecx, 0x65
mov word [ebp - 0x1776], cx
mov edx, 0x72
mov word [ebp - 0x1774], dx
mov eax, 0x6e
mov word [ebp - 0x1772], ax
mov ecx, 0x65
mov word [ebp - 0x1770], cx
mov edx, 0x6c
mov word [ebp - 0x176e], dx
mov eax, 0x33
mov word [ebp - 0x176c], ax
mov ecx, 0x32
mov word [ebp - 0x176a], cx
mov edx, 0x2e
mov word [ebp - 0x1768], dx
mov eax, 0x64
mov word [ebp - 0x1766], ax
mov ecx, 0x6c
mov word [ebp - 0x1764], cx
mov edx, 0x6c
mov word [ebp - 0x1762], dx
xor eax, eax
mov word [ebp - 0x1760], ax
push esi
push esi
add esp, 4
add esi, 0x9c01
xor esi, 0x5795
pop esi
push ebx
push esi
add esp, 4
sub ebx, 0x63c7
sub ebx, 0x9772
pop ebx
push eax
push edi
add esp, 4
jmp 0x406fed
pop eax
mov byte [ebp - 0x89c], 0x4c
mov byte [ebp - 0x89b], 0x6f
mov byte [ebp - 0x89a], 0x61
mov byte [ebp - 0x899], 0x64
mov byte [ebp - 0x898], 0x4c
mov byte [ebp - 0x897], 0x69
mov byte [ebp - 0x896], 0x62
mov byte [ebp - 0x895], 0x72
mov byte [ebp - 0x894], 0x61
mov byte [ebp - 0x893], 0x72
mov byte [ebp - 0x892], 0x79
mov byte [ebp - 0x891], 0x57
mov byte [ebp - 0x890], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x1970], ecx
mov edx, dword [ebp - 0x1970]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x1974], eax
mov ecx, dword [ebp - 0x1974]
mov dword [ebp - 0x15e0], ecx
push ebx
push ebx
add esp, 4
or ebx, 0x1085e
xor ebx, 0xec
pop ebx
push edi
push ebx
add esp, 4
add edi, 0x424d
pop edi
push edi
and edi, 0x3f9c
jmp 0x40709c
add edi, 0x150de
pop edi
cmp dword [ebp - 0x15e0], 0
jne 0x4070bb
mov dword [ebp - 0x758], 0
jmp 0x407362
mov edx, dword [ebp - 0x15e0]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcb4], ecx
push ebx
and ebx, 0x7b1c
jmp 0x4070d9
pop ebx
push ecx
or ecx, 0x8c8
xor ecx, 0x5717
jmp 0x4070f0
pop ecx
push edi
and edi, 0xa591
and edi, 0x7118
pop edi
cmp dword [ebp - 0xcb4], 0
jne 0x407117
mov dword [ebp - 0x758], 0
jmp 0x407362
mov edx, dword [ebp - 0xcb4]
mov dword [ebp - 0x504], edx
push ecx
xor ecx, 0x1663
add ecx, 0x1784e
and ecx, 0xe7ed
pop ecx
push esi
push edi
add esp, 4
or esi, 0xbc57
jmp 0x407148
and esi, 0xe620
xor esi, 0x129f6
pop esi
lea eax, [ebp - 0x1778]
mov dword [ebp - 0xcb0], eax
mov ecx, dword [ebp - 0x504]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcac], edx
xor eax, eax
mov word [ebp - 0x230], ax
xor ecx, ecx
mov word [ebp - 0x44], cx
push ebx
jmp 0x407186
and ebx, 0x13abe
and ebx, 0x11350
jmp 0x407199
pop ebx
push edi
push edi
add esp, 4
call 0x4071ad
add byte [eax + 0x43], al
dec esi
dec esp
cmp byte [ebp + eax*2 - 0x7d], cl
les eax, [edi + ebx*2]
mov edx, dword [ebp - 0xcac]
mov ax, word [edx]
mov word [ebp - 0x1046], ax
mov ecx, dword [ebp - 0xcac]
add ecx, 2
mov dword [ebp - 0xcac], ecx
mov dx, word [ebp - 0x1046]
mov word [ebp - 0x230], dx
mov eax, dword [ebp - 0xcb0]
mov cx, word [eax]
mov word [ebp - 0x1048], cx
mov edx, dword [ebp - 0xcb0]
add edx, 2
mov dword [ebp - 0xcb0], edx
mov ax, word [ebp - 0x1048]
mov word [ebp - 0x44], ax
push ebx
and ebx, 0x1a16
pop ebx
push edx
add edx, 0xa11d
sub edx, 0x2ac
pop edx
push eax
sub eax, 0x41d
pop eax
push edx
xor edx, 0x1508e
add edx, 0x17709
xor edx, 0x17424
pop edx
movzx ecx, word [ebp - 0x44]
test ecx, ecx
jne 0x407257
movzx edx, word [ebp - 0x230]
movzx eax, word [ebp - 0x44]
sub edx, eax
mov dword [ebp - 0x15e8], edx
jmp 0x4072b1
movzx ecx, word [ebp - 0x230]
movzx edx, word [ebp - 0x44]
cmp ecx, edx
je 0x40717f
movzx eax, word [ebp - 0x230]
xor eax, 0x20
movzx ecx, word [ebp - 0x44]
cmp eax, ecx
je 0x40717f
movzx edx, word [ebp - 0x230]
movzx eax, word [ebp - 0x44]
cmp edx, eax
jge 0x40729b
mov dword [ebp - 0x15e4], 0xffffffff
jmp 0x4072a5
mov dword [ebp - 0x15e4], 1
mov ecx, dword [ebp - 0x15e4]
mov dword [ebp - 0x15e8], ecx
cmp dword [ebp - 0x15e8], 0
jne 0x4072fa
push eax
push edx
add esp, 4
or eax, 0x14834
pop eax
push esi
add esi, 0x9f2e
pop esi
push ecx
push eax
add esp, 4
add ecx, 0x1370a
pop ecx
push ecx
push edi
add esp, 4
or ecx, 0xec5b
add ecx, 0x970b
pop ecx
mov edx, dword [ebp - 0x504]
mov dword [ebp - 0x758], edx
jmp 0x407362
push edx
push ecx
add esp, 4
add edx, 0x108e0
pop edx
push ecx
add ecx, 0x124cf
call 0x40731c
add byte [0x504a4b43], bh
xor bh, byte [eax]
aaa
add esp, 4
xor ecx, 0x1300e
and ecx, 0x11cd4
pop ecx
mov eax, dword [ebp - 0x504]
mov ecx, dword [eax]
mov dword [ebp - 0x504], ecx
mov edx, dword [ebp - 0x504]
cmp edx, dword [ebp - 0xcb4]
je 0x407358
mov eax, dword [ebp - 0x504]
cmp dword [eax + 0x30], 0
jne 0x407123
mov dword [ebp - 0x758], 0
cmp dword [ebp - 0x758], 0
jne 0x4073ac
push esi
push ecx
add esp, 4
sub esi, 0x8378
and esi, 0xbf1d
call 0x40738b
add byte [0x464f4735], bh
xor al, byte [ecx + eax*2 + 0x39]
add esp, 4
pop esi
push esi
sub esi, 0xde47
or esi, 0x17bc4
pop esi
mov dword [ebp - 0x7a4], 0
jmp 0x407ed4
push esi
add esi, 0x12129
xor esi, 0x8d26
pop esi
push ebx
push edi
add esp, 4
call 0x4073cc
add byte [edi], dh
aaa
dec edx
dec ebp
inc esp
xor eax, 0x4c48332
pop ebx
push eax
xor eax, 0x11802
add eax, 0xed8e
pop eax
mov ecx, dword [ebp - 0x758]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x3a4], edx
mov dword [ebp - 0x768], 0
mov eax, dword [ebp - 0x3a4]
mov dword [ebp - 0x15ec], eax
cmp dword [ebp - 0x15ec], 0
jne 0x40741d
mov ecx, dword [ebp - 0x768]
mov dword [ebp - 0x3e0], ecx
jmp 0x40770e
mov edx, dword [ebp - 0x15ec]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x15f0], eax
jne 0x407445
mov ecx, dword [ebp - 0x768]
mov dword [ebp - 0x3e0], ecx
jmp 0x40770e
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x15f0]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x15f4], edx
cmp dword [ebp - 0x15f4], 0
jne 0x407477
mov eax, dword [ebp - 0x768]
mov dword [ebp - 0x3e0], eax
jmp 0x40770e
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [ebp - 0x15f4]
mov dword [ebp - 0x75c], ecx
jne 0x40749c
mov edx, dword [ebp - 0x768]
mov dword [ebp - 0x3e0], edx
jmp 0x40770e
mov eax, dword [ebp - 0x75c]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x1978], ecx
mov edx, dword [ebp - 0x75c]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x197c], eax
mov ecx, dword [ebp - 0x75c]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1980], edx
mov dword [ebp - 0x760], 0
jmp 0x4074f6
mov eax, dword [ebp - 0x760]
add eax, 1
mov dword [ebp - 0x760], eax
mov ecx, dword [ebp - 0x75c]
mov edx, dword [ebp - 0x760]
cmp edx, dword [ecx + 0x18]
jae 0x407702
mov eax, dword [ebp - 0x760]
mov ecx, dword [ebp - 0x1978]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x764], edx
mov eax, dword [ebp - 0x760]
mov ecx, dword [ebp - 0x197c]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x1980]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1d08], ecx
mov dword [ebp - 0x1c8], 0
jmp 0x407566
mov edx, dword [ebp - 0x1c8]
add edx, 1
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x764]
add eax, dword [ebp - 0x1c8]
movsx ecx, byte [eax]
test ecx, ecx
je 0x407618
mov edx, dword [ebp - 0x1c8]
movsx eax, byte [ebp + edx - 0x89c]
test eax, eax
je 0x407618
push edi
sub edi, 0x12d91
xor edi, 0x17e5a
add edi, 0x5469
pop edi
push ebx
push edi
add esp, 4
sub ebx, 0x13b8b
and ebx, 0x105c2
xor ebx, 0x7fb3
jmp 0x4075c4
pop ebx
mov ecx, dword [ebp - 0x764]
add ecx, dword [ebp - 0x1c8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1c8]
movsx ecx, byte [ebp + eax - 0x89c]
cmp edx, ecx
je 0x40760a
mov edx, dword [ebp - 0x764]
add edx, dword [ebp - 0x1c8]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1c8]
movsx edx, byte [ebp + ecx - 0x89c]
cmp eax, edx
jne 0x407611
jmp 0x407557
jmp 0x407618
push edi
push eax
add esp, 4
xor edi, 0x71a
add edi, 0xf536
sub edi, 0x10e6d
pop edi
push ebx
push esi
add esp, 4
jmp 0x40763d
and ebx, 0x16b19
and ebx, 0xcc04
pop ebx
mov eax, dword [ebp - 0x764]
add eax, dword [ebp - 0x1c8]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1c8]
movsx eax, byte [ebp + edx - 0x89c]
cmp ecx, eax
jne 0x407677
mov dword [ebp - 0xcb8], 0
jmp 0x4076e6
push edi
push edx
add esp, 4
jmp 0x407682
pop edi
push esi
push ebx
add esp, 4
add esi, 0x15820
and esi, 0xc5f
sub esi, 0x13f48
or esi, 0x6513
pop esi
push esi
or esi, 0x14bec
pop esi
mov ecx, dword [ebp - 0x764]
add ecx, dword [ebp - 0x1c8]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1c8]
movsx ecx, byte [ebp + eax - 0x89c]
or ecx, 0x20
cmp edx, ecx
jge 0x4076dc
mov dword [ebp - 0xcb8], 0xffffffff
jmp 0x4076e6
mov dword [ebp - 0xcb8], 1
cmp dword [ebp - 0xcb8], 0
jne 0x4076fd
mov edx, dword [ebp - 0x1d08]
mov dword [ebp - 0x3e0], edx
jmp 0x40770e
jmp 0x4074e7
mov eax, dword [ebp - 0x768]
mov dword [ebp - 0x3e0], eax
cmp dword [ebp - 0x3e0], 0
je 0x4077e9
push eax
push ebx
add esp, 4
call 0x40772e
add byte [esi + 0x4e], al
inc esi
inc ecx
xor al, 0x42
inc eax
push eax
add esp, 4
or eax, 0x2119
sub eax, 0x135a
pop eax
push esi
push ebx
add esp, 4
jmp 0x40774c
pop esi
mov ecx, dword [ebp - 0x3e0]
mov dword [ebp - 0x1984], ecx
push edi
push ecx
add esp, 4
jmp 0x407767
pop edi
push edi
call 0x407775
add byte [edi + 0x39], cl
dec eax
inc edx
dec ebp
xor eax, 0x8104c483
invalid
push edx
push edi
add esp, 4
or edx, 0xcb01
add edx, 0x452a
sub edx, 0xcf6c
pop edx
push ebx
add ebx, 0x5909
and ebx, 0x14408
sub ebx, 0x12c83
push ecx
xor ecx, 0x150e1
pop ecx
push edi
push edi
add esp, 4
xor edi, 0xe702
and edi, 0x1774e
pop edi
push edx
push edi
add esp, 4
sub edx, 0x11e27
xor edx, 0x112b4
and edx, 0xaa9d
pop edx
mov edx, dword [ebp - 0x3fc]
add edx, 0xe
mov dword [ebp - 0x19f0], edx
push ecx
push edi
add esp, 4
or ecx, 0x17b8d
pop ecx
push eax
or eax, 0x384f
or eax, 0x58ab
sub eax, 0x15a64
pop eax
push ecx
push edx
add esp, 4
xor ecx, 0xc70d
add ecx, 0x132b5
pop ecx
cmp dword [ebp - 0x3fc], 0
je 0x407f59
cmp dword [ebp - 0xad8], 0
jne 0x407f9f
push edi
add edi, 0x8043
add edi, 0x14861
and edi, 0x7071
xor edi, 0x3377
pop edi
push ebx
push eax
add esp, 4
or ebx, 0x227b
and ebx, 0x865f
add ebx, 0x5c87
pop ebx
mov eax, dword [ebp - 0x7a4]
mov dword [ebp - 0x19a4], eax
push 0
call dword [ebp - 0x19a4]
mov dword [ebp - 0x203c], 0xa
push esi
push ebx
add esp, 4
call 0x407fbd
add byte [esi], bh
inc esi
dec ebx
inc eax
xor eax, 0x383c3749
add esp, 4
or esi, 0x1013
pop esi
push eax
jmp 0x407fce
or eax, 0xdf18
sub eax, 0x17655
pop eax
mov ecx, dword [ebp - 0x3fc]
mov dl, byte [ecx + 0xa]
mov byte [ebp - 0x3b0], dl
mov eax, dword [ebp - 0xad8]
sub eax, dword [ebp - 0x3fc]
mov dword [ebp - 0x1690], eax
mov dword [ebp - 0xcf8], 0
push edi
jmp 0x40800f
jmp 0x408014
xor edi, 0xf39d
pop edi
push ecx
sub ecx, 0x154ec
or ecx, 0x102a8
sub ecx, 0xa6da
jmp 0x408037
pop ecx
mov byte [ebp - 0x9dc], 0x56
mov byte [ebp - 0x9db], 0x69
mov byte [ebp - 0x9da], 0x72
mov byte [ebp - 0x9d9], 0x74
mov byte [ebp - 0x9d8], 0x75
mov byte [ebp - 0x9d7], 0x61
mov byte [ebp - 0x9d6], 0x6c
mov byte [ebp - 0x9d5], 0x50
mov byte [ebp - 0x9d4], 0x72
mov byte [ebp - 0x9d3], 0x6f
mov byte [ebp - 0x9d2], 0x74
mov byte [ebp - 0x9d1], 0x65
invalid
test dword [eax], esi
invalid