Function at 0x404fb0
Capabilities:
Get number of processors

Disassembly:
mov edx, dword [ebp - 0x500]
add edx, 1
mov dword [ebp - 0x500], edx
push edi
sub edi, 0x3d69
sub edi, 0x6c03
or edi, 0x10c33
pop edi
push edx
push ecx
add esp, 4
add edx, 0x10f28
xor edx, 0x5fb0
add edx, 0xa230
or edx, 0x7365
pop edx
mov eax, dword [ebp - 0x500]
sub eax, dword [ebp - 0x3f0]
cmp eax, 0xffffffff
jb 0x404a8f
push ecx
push edx
add esp, 4
xor ecx, 0xf731
pop ecx
push ecx
push edi
add esp, 4
or ecx, 0x10e7d
or ecx, 0x4aaa
pop ecx
push edx
add edx, 0x87b3
or edx, 0x107ec
or edx, 0x121f3
pop edx
jmp 0x404cbd
mov dword [ebp - 0xc88], 7
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0xac0], ecx
push eax
or eax, 0x13f2e
call fcn.00404ab9
add byte [ebx + 0x36], cl
dec ebx
inc esp
cmp dword [edx + 0x4c], eax
add esp, 4
and eax, 0x107e
sub eax, 0x7e9c
pop eax
push eax
and eax, 0x229c
sub eax, 0x8507
pop eax
mov edx, dword [ebp - 0x15d0]
mov dword [ebp - 0xabc], edx
mov dword [ebp - 0xc8c], 0
mov eax, dword [ebp - 0x500]
cmp eax, dword [ebp - 0x15d0]
jne 0x404b3e
push edx
add edx, 0x13efd
sub edx, 0x90d5
or edx, 0x17e79
pop edx
push eax
push ecx
add esp, 4
call 0x404b23
add byte [edx + 0x44], al
cmp cl, byte [edi + 0x35]
inc ecx
cmp al, byte [eax + 0x38]
add esp, 4
and eax, 0x654d
pop eax
mov ecx, dword [ebp - 0xc8c]
mov dword [ebp - 0x15d4], ecx
jmp 0x404c6f
cmp dword [ebp - 0xc88], 0
jle 0x404c63
push esi
push esi
add esp, 4
jmp 0x404b56
xor esi, 0x112b4
pop esi
push ebx
and ebx, 0xc6f9
pop ebx
push edi
push ecx
add esp, 4
sub edi, 0x3039
or edi, 0xfdd0
sub edi, 0xec6d
pop edi
mov edx, dword [ebp - 0xac0]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0xabc]
movzx edx, byte [ecx]
cmp eax, edx
je 0x404bff
push edi
push ecx
add esp, 4
sub edi, 0x14c47
or edi, 0x4ad5
sub edi, 0x10884
pop edi
push ecx
sub ecx, 0x16551
xor ecx, 0x12d7a
and ecx, 0x14582
add ecx, 0x1455e
pop ecx
mov eax, dword [ebp - 0xac0]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xabc]
movzx eax, byte [edx]
cmp ecx, eax
jle 0x404be7
mov dword [ebp - 0x15a0], 1
jmp 0x404bf1
mov dword [ebp - 0x15a0], 0xffffffff
mov ecx, dword [ebp - 0x15a0]
mov dword [ebp - 0xc8c], ecx
jmp 0x404c63
push ebx
push eax
add esp, 4
and ebx, 0x104d7
pop ebx
push ebx
push ecx
add esp, 4
add ebx, 0xaa4d
jmp 0x404c1b
sub ebx, 0x14681
jmp 0x404c28
pop ebx
push ecx
and ecx, 0xade6
pop ecx
mov edx, dword [ebp - 0xc88]
sub edx, 1
mov dword [ebp - 0xc88], edx
mov eax, dword [ebp - 0xac0]
add eax, 1
mov dword [ebp - 0xac0], eax
mov ecx, dword [ebp - 0xabc]
add ecx, 1
mov dword [ebp - 0xabc], ecx
jmp 0x404b3e
mov edx, dword [ebp - 0xc8c]
mov dword [ebp - 0x15d4], edx
cmp dword [ebp - 0x15d4], 0
jne 0x404cb8
push ecx
push ecx
add esp, 4
add ecx, 0xe7a5
pop ecx
push esi
jmp 0x404c8c
call 0x404c98
add byte [ecx + 0x3e], al
inc eax
dec edx
inc esp
dec esi
add esp, 4
pop esi
push ecx
and ecx, 0xc8de
xor ecx, 0x13ca0
pop ecx
mov eax, dword [ebp - 0x500]
mov dword [ebp - 0xab8], eax
jmp 0x404cf9
jmp 0x404a06
push edi
and edi, 0x16a0
add edi, 0x12591
sub edi, 0x176da
pop edi
push edi
push ecx
add esp, 4
sub edi, 0xfaf4
add edi, 0xd879
and edi, 0x3814
and edi, 0x10cef
pop edi
mov dword [ebp - 0xab8], 0
push edi
xor edi, 0x44cd
jmp 0x404d07
pop edi
push esi
push ecx
add esp, 4
sub esi, 0x18009
call 0x404d21
add byte [eax + 0x46], cl
cmp al, byte [ecx + 0x4f]
dec esp
inc edx
inc edi
add esp, 4
and esi, 0xe197
pop esi
mov byte [ebp - 0x878], 0x45
mov byte [ebp - 0x877], 0x78
mov byte [ebp - 0x876], 0x69
mov byte [ebp - 0x875], 0x74
mov byte [ebp - 0x874], 0x50
mov byte [ebp - 0x873], 0x72
mov byte [ebp - 0x872], 0x6f
mov byte [ebp - 0x871], 0x63
mov byte [ebp - 0x870], 0x65
mov byte [ebp - 0x86f], 0x73
mov byte [ebp - 0x86e], 0x73
mov byte [ebp - 0x86d], 0
push esi
push eax
add esp, 4
jmp 0x404d8a
xor esi, 0x99e2
xor esi, 0x8bcc
pop esi
push esi
call 0x404da7
add byte [edx], bh
inc ecx
dec esp
cmp dh, byte [ebx]
dec edi
dec edx
xor al, 0x36
add esp, 4
xor esi, 0x5d93
pop esi
mov ecx, 0x6b
mov word [ebp - 0x1738], cx
mov edx, 0x65
mov word [ebp - 0x1736], dx
mov eax, 0x72
mov word [ebp - 0x1734], ax
mov ecx, 0x6e
mov word [ebp - 0x1732], cx
mov edx, 0x65
mov word [ebp - 0x1730], dx
mov eax, 0x6c
mov word [ebp - 0x172e], ax
mov ecx, 0x33
mov word [ebp - 0x172c], cx
mov edx, 0x32
mov word [ebp - 0x172a], dx
mov eax, 0x2e
mov word [ebp - 0x1728], ax
mov ecx, 0x64
mov word [ebp - 0x1726], cx
mov edx, 0x6c
mov word [ebp - 0x1724], dx
mov eax, 0x6c
mov word [ebp - 0x1722], ax
xor ecx, ecx
mov word [ebp - 0x1720], cx
push eax
call 0x404e5b
add byte [edi], bh
dec edx
xor eax, 0x4a3d504c
xor bh, byte [edi]
dec ebx
add esp, 4
pop eax
push eax
xor eax, 0x2e45
or eax, 0xbf00
jmp 0x404e75
add eax, 0x6915
pop eax
push eax
push eax
add esp, 4
add eax, 0x30bb
pop eax
push edi
push ebx
add esp, 4
call 0x404e9c
add byte [ebp + 0x4d], cl
cmp al, 0x33
cmp byte [ecx], bh
xor al, 0x37
inc ecx
add esp, 4
or edi, 0xf1e4
pop edi
push eax
and eax, 0x1509e
pop eax
mov edx, dword fs:[0x18]
mov dword [ebp - 0x1954], edx
mov eax, dword [ebp - 0x1954]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x1958], ecx
mov edx, dword [ebp - 0x1958]
mov dword [ebp - 0x15d8], edx
push eax
push ecx
add esp, 4
or eax, 0x490e
jmp 0x404ee6
pop eax
push esi
push eax
add esp, 4
or esi, 0x145c1
jmp 0x404efb
pop esi
push eax
push ebx
add esp, 4
sub eax, 0x20b5
pop eax
cmp dword [ebp - 0x15d8], 0
jne 0x404f20
mov dword [ebp - 0x31c], 0
jmp 0x4051dc
mov eax, dword [ebp - 0x15d8]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xc98], edx
push eax
push esi
add esp, 4
call 0x404f45
add byte [edx], bh
dec eax
dec ebx
inc eax
xor al, 0x4a
inc ecx
inc ebp
add esp, 4
and eax, 0xb819
pop eax
push edi
push ecx
add esp, 4
and edi, 0x15799
jmp 0x404f63
pop edi
cmp dword [ebp - 0xc98], 0
jne 0x404f7c
mov dword [ebp - 0x31c], 0
jmp 0x4051dc
mov eax, dword [ebp - 0xc98]
mov dword [ebp - 0x504], eax
push edi
call 0x404f98
add byte [esi + 0x3e], al
cmp cl, byte [eax + edx*2 + 0x3e]
inc ebp
aaa
inc esi
add esp, 4
and edi, 0x11f1a
call 0x404fb0
add byte [ebp + 0x3d], cl
inc ebp
inc ecx
dec esp
inc esp
inc ebx
aaa
add esp, 4
add edi, 0x25ae
pop edi
lea ecx, [ebp - 0x1738]
mov dword [ebp - 0xc94], ecx
mov edx, dword [ebp - 0x504]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0xc90], eax
xor ecx, ecx
mov word [ebp - 0x210], cx
xor edx, edx
mov word [ebp - 0x10c], dx
push edi
add edi, 0xaab
pop edi
push eax
jmp 0x404ff5
xor eax, 0x3de2
pop eax
push edx
or edx, 0x15054
or edx, 0xd2d8
jmp 0x405012
add edx, 0x113ba
pop edx
mov eax, dword [ebp - 0xc90]
mov cx, word [eax]
mov word [ebp - 0x1032], cx
mov edx, dword [ebp - 0xc90]
add edx, 2
mov dword [ebp - 0xc90], edx
mov ax, word [ebp - 0x1032]
mov word [ebp - 0x210], ax
mov ecx, dword [ebp - 0xc94]
mov dx, word [ecx]
mov word [ebp - 0x1034], dx
mov eax, dword [ebp - 0xc94]
add eax, 2
mov dword [ebp - 0xc94], eax
mov cx, word [ebp - 0x1034]
mov word [ebp - 0x10c], cx
push ebx
push eax
add esp, 4
add ebx, 0x15b74
or ebx, 0x15a4a
and ebx, 0x12e20
and ebx, 0xdb0c
pop ebx
push ecx
or ecx, 0x514b
pop ecx
push eax
push esi
add esp, 4
sub eax, 0xb5c7
pop eax
movzx edx, word [ebp - 0x10c]
test edx, edx
jne 0x4050c8
movzx eax, word [ebp - 0x210]
movzx ecx, word [ebp - 0x10c]
sub eax, ecx
mov dword [ebp - 0x15e0], eax
jmp 0x40512b
movzx edx, word [ebp - 0x210]
movzx eax, word [ebp - 0x10c]
cmp edx, eax
je 0x404fe7
movzx ecx, word [ebp - 0x210]
xor ecx, 0x20
movzx edx, word [ebp - 0x10c]
cmp ecx, edx
je 0x404fe7
movzx eax, word [ebp - 0x210]
movzx ecx, word [ebp - 0x10c]
cmp eax, ecx
jge 0x405115
mov dword [ebp - 0x15dc], 0xffffffff
jmp 0x40511f
mov dword [ebp - 0x15dc], 1
mov edx, dword [ebp - 0x15dc]
mov dword [ebp - 0x15e0], edx
cmp dword [ebp - 0x15e0], 0
jne 0x405174
push ecx
push esi
add esp, 4
sub ecx, 0x9d99
call 0x40514e
add byte [edi], bh
inc esp
dec eax
dec ebx
dec ebp
dec edx
cmp byte [eax + 0x41], dl
add esp, 4
sub ecx, 0x151e1
sub ecx, 0x151c8
pop ecx
push edx
jmp 0x405165
pop edx
mov eax, dword [ebp - 0x504]
mov dword [ebp - 0x31c], eax
jmp 0x4051dc
push edx
push eax
add esp, 4
add edx, 0x184f8
or edx, 0x139f
xor edx, 0x15cc0
pop edx
push edx
push eax
add esp, 4
sub edx, 0xc394
pop edx
push eax
xor eax, 0x113f2
add eax, 0xb147
pop eax
mov ecx, dword [ebp - 0x504]
mov edx, dword [ecx]
mov dword [ebp - 0x504], edx
mov eax, dword [ebp - 0x504]
cmp eax, dword [ebp - 0xc98]
je 0x4051d2
mov ecx, dword [ebp - 0x504]
cmp dword [ecx + 0x30], 0
jne 0x404f88
mov dword [ebp - 0x31c], 0
push ebx
and ebx, 0x7fa9
and ebx, 0x16f24
pop ebx
push edi
sub edi, 0x1809a
add edi, 0x10b63
pop edi
push eax
jmp 0x405201
and eax, 0x8fc6
xor eax, 0x10a7a
pop eax
cmp dword [ebp - 0x31c], 0
jne 0x405b27
mov edx, 0x6b
mov word [ebp - 0x1774], dx
mov eax, 0x65
mov word [ebp - 0x1772], ax
mov ecx, 0x72
mov word [ebp - 0x1770], cx
mov edx, 0x6e
mov word [ebp - 0x176e], dx
mov eax, 0x65
mov word [ebp - 0x176c], ax
mov ecx, 0x6c
mov word [ebp - 0x176a], cx
mov edx, 0x33
mov word [ebp - 0x1768], dx
mov eax, 0x32
mov word [ebp - 0x1766], ax
mov ecx, 0x2e
mov word [ebp - 0x1764], cx
mov edx, 0x64
mov word [ebp - 0x1762], dx
mov eax, 0x6c
mov word [ebp - 0x1760], ax
mov ecx, 0x6c
mov word [ebp - 0x175e], cx
xor edx, edx
mov word [ebp - 0x175c], dx
push eax
or eax, 0x1621
pop eax
push edx
push edx
add esp, 4
sub edx, 0x699b
call 0x4052d3
add byte [esi], bh
dec eax
inc ebx
xor eax, 0xc4834b4c
add al, 0xeb
pop es
dec esp
aas
inc edx
cmp edi, dword [edx]
inc esp
dec ecx
or edx, 0x17f5f
pop edx
mov byte [ebp - 0x894], 0x4c
mov byte [ebp - 0x893], 0x6f
mov byte [ebp - 0x892], 0x61
mov byte [ebp - 0x891], 0x64
mov byte [ebp - 0x890], 0x4c
mov byte [ebp - 0x88f], 0x69
mov byte [ebp - 0x88e], 0x62
mov byte [ebp - 0x88d], 0x72
mov byte [ebp - 0x88c], 0x61
mov byte [ebp - 0x88b], 0x72
mov byte [ebp - 0x88a], 0x79
mov byte [ebp - 0x889], 0x57
mov byte [ebp - 0x888], 0
mov eax, dword fs:[0x18]
mov dword [ebp - 0x195c], eax
mov ecx, dword [ebp - 0x195c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1960], edx
mov eax, dword [ebp - 0x1960]
mov dword [ebp - 0x15e4], eax
push edx
push edx
add esp, 4
sub edx, 0x162a6
and edx, 0x5c79
pop edx
push eax
push esi
add esp, 4
add eax, 0x5291
add eax, 0xb365
sub eax, 0x246e
pop eax
push eax
sub eax, 0x1606c
pop eax
cmp dword [ebp - 0x15e4], 0
jne 0x4053b2
mov dword [ebp - 0x750], 0
jmp 0x40566e
mov ecx, dword [ebp - 0x15e4]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xca4], eax
push eax
push edx
add esp, 4
call 0x4053d7
add byte [esi + esi], dh
cmp eax, dword [edx + 0x3c]
aaa
xor eax, 0x4c48344
jmp 0x4053e1
and eax, 0x1376e
pop eax
push eax
add eax, 0x7740
add eax, 0x78bb
pop eax
cmp dword [ebp - 0xca4], 0
jne 0x40540e
mov dword [ebp - 0x750], 0
jmp 0x40566e
mov ecx, dword [ebp - 0xca4]
mov dword [ebp - 0x508], ecx
push eax
and eax, 0x8665
xor eax, 0x16620
call 0x405437
add byte [edx], bh
inc esi
aas
aaa
dec edx
inc eax
inc ebx
aas
dec ecx
add esp, 4
call 0x405448
add byte [edx + 0x3d], al
dec ebx
inc esp
dec esi
cmp byte [edx], bh
add esp, 4
pop eax
lea edx, [ebp - 0x1774]
mov dword [ebp - 0xca0], edx
mov eax, dword [ebp - 0x508]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc9c], ecx
xor edx, edx
mov word [ebp - 0x214], dx
xor eax, eax
mov word [ebp - 0x110], ax
push eax
push ebx
add esp, 4
sub eax, 0x4813
xor eax, 0x15a95
or eax, 0x229b
pop eax
push edi
push esi
add esp, 4
sub edi, 0xded7
pop edi
push edx
xor edx, 0x7e54
xor edx, 0xdfda
pop edx
mov ecx, dword [ebp - 0xc9c]
mov dx, word [ecx]
mov word [ebp - 0x1036], dx
mov eax, dword [ebp - 0xc9c]
add eax, 2
mov dword [ebp - 0xc9c], eax
mov cx, word [ebp - 0x1036]
mov word [ebp - 0x214], cx
mov edx, dword [ebp - 0xca0]
mov ax, word [edx]
mov word [ebp - 0x1038], ax
mov ecx, dword [ebp - 0xca0]
add ecx, 2
mov dword [ebp - 0xca0], ecx
mov dx, word [ebp - 0x1038]
mov word [ebp - 0x110], dx
push ecx
xor ecx, 0x13fe9
jmp 0x405514
and ecx, 0x14842
pop ecx
push esi
push eax
add esp, 4
xor esi, 0x25bb
jmp 0x40552e
pop esi
push edx
xor edx, 0xb72f
pop edx
movzx eax, word [ebp - 0x110]
test eax, eax
jne 0x40555a
movzx ecx, word [ebp - 0x214]
movzx edx, word [ebp - 0x110]
sub ecx, edx
mov dword [ebp - 0x15ec], ecx
jmp 0x4055bd
movzx eax, word [ebp - 0x214]
movzx ecx, word [ebp - 0x110]
cmp eax, ecx
je 0x405479
movzx edx, word [ebp - 0x214]
xor edx, 0x20
movzx eax, word [ebp - 0x110]
cmp edx, eax
je 0x405479
movzx ecx, word [ebp - 0x214]
movzx edx, word [ebp - 0x110]
cmp ecx, edx
jge 0x4055a7
mov dword [ebp - 0x15e8], 0xffffffff
jmp 0x4055b1
mov dword [ebp - 0x15e8], 1
mov eax, dword [ebp - 0x15e8]
mov dword [ebp - 0x15ec], eax
cmp dword [ebp - 0x15ec], 0
jne 0x405606
push esi
push edx
add esp, 4
call 0x4055da
add byte [esi], bh
inc ebp
aas
inc ecx
dec eax
dec eax
cmp dword ss:[ebx - 0x117efb3c], eax
std
aas
add byte [eax], al
xor esi, 0x17fde
pop esi
push edi
xor edi, 0xb70b
and edi, 0x14c9a
pop edi
mov ecx, dword [ebp - 0x508]
mov dword [ebp - 0x750], ecx
jmp 0x40566e
push esi
and esi, 0x23f5
pop esi
push esi
push edx
add esp, 4
add esi, 0x5919
or esi, 0x17230
or esi, 0xf425
pop esi
push edx
push eax
add esp, 4
add edx, 0x1804a
and edx, 0x13a5
pop edx
mov edx, dword [ebp - 0x508]
mov eax, dword [edx]
mov dword [ebp - 0x508], eax
mov ecx, dword [ebp - 0x508]
cmp ecx, dword [ebp - 0xca4]
je 0x405664
mov edx, dword [ebp - 0x508]
cmp dword [edx + 0x30], 0
jne 0x40541a
mov dword [ebp - 0x750], 0
push eax
xor eax, 0xfcbb
and eax, 0x30c9
or eax, 0x55bc
add eax, 0x13365
pop eax
push edi
push eax
add esp, 4
add edi, 0x1a3
and edi, 0x13fde
add edi, 0x16a6c
pop edi
cmp dword [ebp - 0x750], 0
jne 0x4056ea
push edi
call 0x4056b6
add byte [ebx], dh
inc ebp
xor eax, dword [ebp + 0x3d]
cmp eax, dword [ebx - 0x387efb3c]
invalid
push ebx
push edi
add esp, 4
add ebx, 0x6516
pop ebx
push ebx
jmp 0x405700
add ebx, 0x9e7e
and ebx, 0x1959
call 0x405718
add byte [eax + 0x50], cl
dec ebx
xor al, 0x3e
dec edi
add esp, 4
pop ebx
mov eax, dword [ebp - 0x750]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x320], ecx
mov dword [ebp - 0x760], 0
mov edx, dword [ebp - 0x320]
mov dword [ebp - 0x15f0], edx
cmp dword [ebp - 0x15f0], 0
jne 0x40575b
mov eax, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], eax
jmp 0x405a4c
mov ecx, dword [ebp - 0x15f0]
mov edx, dword [ebp - 0x320]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x15f4], edx
jne 0x405783
mov eax, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], eax
jmp 0x405a4c
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x15f4]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x15f8], ecx
cmp dword [ebp - 0x15f8], 0
jne 0x4057b5
mov edx, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], edx
jmp 0x405a4c
mov eax, dword [ebp - 0x320]
add eax, dword [ebp - 0x15f8]
mov dword [ebp - 0x754], eax
jne 0x4057da
mov ecx, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], ecx
jmp 0x405a4c
mov edx, dword [ebp - 0x754]
mov eax, dword [ebp - 0x320]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x1964], eax
mov ecx, dword [ebp - 0x754]
mov edx, dword [ebp - 0x320]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x1968], edx
mov eax, dword [ebp - 0x754]
mov ecx, dword [ebp - 0x320]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x196c], ecx
mov dword [ebp - 0x758], 0
jmp 0x405834
mov edx, dword [ebp - 0x758]
add edx, 1
mov dword [ebp - 0x758], edx
mov eax, dword [ebp - 0x754]
mov ecx, dword [ebp - 0x758]
cmp ecx, dword [eax + 0x18]
jae 0x405a40
mov edx, dword [ebp - 0x758]
mov eax, dword [ebp - 0x1964]
mov ecx, dword [ebp - 0x320]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x75c], ecx
mov edx, dword [ebp - 0x758]
mov eax, dword [ebp - 0x1968]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x196c]
mov eax, dword [ebp - 0x320]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x1970], eax
mov dword [ebp - 0x198], 0
jmp 0x4058a4
mov ecx, dword [ebp - 0x198]
add ecx, 1
mov dword [ebp - 0x198], ecx
mov edx, dword [ebp - 0x75c]
add edx, dword [ebp - 0x198]
movsx eax, byte [edx]
test eax, eax
je 0x405956
mov ecx, dword [ebp - 0x198]
movsx edx, byte [ebp + ecx - 0x894]
test edx, edx
je 0x405956
push ebx
push ebx
add esp, 4
sub ebx, 0x8f40
pop ebx
push ecx
and ecx, 0x138ab
jmp 0x4058e9
and ecx, 0xf1db
pop ecx
push eax
push ecx
add esp, 4
sub eax, 0x1033e
jmp 0x405902
pop eax
mov eax, dword [ebp - 0x75c]
add eax, dword [ebp - 0x198]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x198]
movsx eax, byte [ebp + edx - 0x894]
cmp ecx, eax
je 0x405948
mov ecx, dword [ebp - 0x75c]
add ecx, dword [ebp - 0x198]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x198]
movsx ecx, byte [ebp + eax - 0x894]
cmp edx, ecx
jne 0x40594f
jmp 0x405895
jmp 0x405956
push ecx
push eax
add esp, 4
add ecx, 0x16a91
xor ecx, 0x6ec8
sub ecx, 0x13013
pop ecx
push ebx
and ebx, 0x16be0
xor ebx, 0x10003
sub ebx, 0x14eed
or ebx, 0x842d
pop ebx
mov edx, dword [ebp - 0x75c]
add edx, dword [ebp - 0x198]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x198]
movsx edx, byte [ebp + ecx - 0x894]
cmp eax, edx
jne 0x4059b5
mov dword [ebp - 0xca8], 0
jmp 0x405a24
push ebx
push eax
add esp, 4
or ebx, 0x338a
jmp 0x4059c8
or ebx, 0x138f6
pop ebx
push ebx
push ecx
add esp, 4
sub ebx, 0xec99
pop ebx
push ecx
push ecx
add esp, 4
and ecx, 0x4fbc
pop ecx
mov eax, dword [ebp - 0x75c]
add eax, dword [ebp - 0x198]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x198]
movsx eax, byte [ebp + edx - 0x894]
or eax, 0x20
cmp ecx, eax
jge 0x405a1a
mov dword [ebp - 0xca8], 0xffffffff
jmp 0x405a24
mov dword [ebp - 0xca8], 1
cmp dword [ebp - 0xca8], 0
jne 0x405a3b
mov ecx, dword [ebp - 0x1970]
mov dword [ebp - 0x3f4], ecx
jmp 0x405a4c
jmp 0x405825
mov edx, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], edx
cmp dword [ebp - 0x3f4], 0
je 0x405b27
push esi
call 0x405a67
add byte [ebx], bh
xor al, 0x3f
dec edi
cmp al, 0x4a
cmp al, 0x83
les eax, [esi + ebx*2]
push edx
push edi
add esp, 4
and edx, 0x12f96
pop edx
push ecx
push ebx
add esp, 4
add ecx, 0x15775
pop ecx
push ecx
and ecx, 0x4ee8
pop ecx
mov eax, dword [ebp - 0x3f4]
mov dword [ebp - 0x1974], eax
push ecx
push ecx
add esp, 4
or ecx, 0x26d9
pop ecx
push ebx
push esi
add esp, 4
or ebx, 0x65ff
jmp 0x405ab3
add ebx, 0x2094
call 0x405ac5
add byte [esp + ecx*2 + 0x4b], cl
dec esp
inc ebx
cmp dword [ebx - 0x74a4fb3c], eax
lea ecx, [esi - 0x72760001]
mov dh, ah
invalid
push edi
push esi
add esp, 4
sub edi, 0x1655e
add edi, 0x15430
add edi, 0x18386
pop edi
push esi
and esi, 0xff6f
xor esi, 0x28a2
sub esi, 0x13c23
add esi, 0x176a2
pop esi
mov eax, dword fs:[0x18]
mov dword [ebp - 0x197c], eax
mov ecx, dword [ebp - 0x197c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1980], edx
mov eax, dword [ebp - 0x1980]
mov dword [ebp - 0x15fc], eax
push ebx
and ebx, 0x1528c
call 0x405b96
add byte [esi], dh
dec ebx
cmp byte [ecx + 0x40], cl
dec ecx
push eax
inc edi
dec esi
add esp, 4
or ebx, 0x1158d
pop ebx
push edi
push ebx
add esp, 4
xor edi, 0x1d70
and edi, 0x7e97
pop edi
cmp dword [ebp - 0x15fc], 0
jne 0x405bca
mov dword [ebp - 0x31c], 0
jmp 0x405e71
mov ecx, dword [ebp - 0x15fc]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xcb4], eax
push edi
push edx
add esp, 4
and edi, 0xe3a8
add edi, 0xa78c
or edi, 0xaec6
add edi, 0x1508
pop edi
push esi
or esi, 0xa022
xor esi, 0x10154
add esi, 0xbd48
pop esi
cmp dword [ebp - 0xcb4], 0
jne 0x405c26
mov dword [ebp - 0x31c], 0
jmp 0x405e71
mov ecx, dword [ebp - 0xcb4]
mov dword [ebp - 0x50c], ecx
push edx
push esi
add esp, 4
add edx, 0x11f99
pop edx
push edx
or edx, 0xbd0
xor edx, 0x4d58
call 0x405c5a
add byte [ecx + 0x3a], cl
dec ebp
dec esp
cmp eax, 0x354e3840
add esp, 4
sub edx, 0xd35f
pop edx
lea edx, [ebp - 0x1738]
mov dword [ebp - 0xcb0], edx
mov eax, dword [ebp - 0x50c]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xcac], ecx
xor edx, edx
mov word [ebp - 0x218], dx
xor eax, eax
mov word [ebp - 0x34], ax
push edi
push esi
add esp, 4
add edi, 0x7fb4
or edi, 0x16c7b
add edi, 0x126b0
pop edi
push eax
call 0x405cb4
add byte [edx + 0x41], al
xor al, 0x34
inc edx
cmp edi, dword [ebx]
add esp, 4
pop eax
push edx
sub edx, 0x232b
pop edx
mov ecx, dword [ebp - 0xcac]
mov dx, word [ecx]
mov word [ebp - 0x103a], dx
mov eax, dword [ebp - 0xcac]
add eax, 2
mov dword [ebp - 0xcac], eax
mov cx, word [ebp - 0x103a]
mov word [ebp - 0x218], cx
mov edx, dword [ebp - 0xcb0]
mov ax, word [edx]
mov word [ebp - 0x103c], ax
mov ecx, dword [ebp - 0xcb0]
add ecx, 2
mov dword [ebp - 0xcb0], ecx
mov dx, word [ebp - 0x103c]
mov word [ebp - 0x34], dx
push eax
push edi
add esp, 4
call 0x405d29
add byte [0x4b483636], dh
inc esp
inc esi
add esp, 4
add eax, 0x20cf
and eax, 0x4c75
call 0x405d45
add byte [edx + 0x36], cl
cmp dword [ebx], esi
dec ebp
inc edx
inc eax
add esp, 4
pop eax
movzx eax, word [ebp - 0x34]
test eax, eax
jne 0x405d66
movzx ecx, word [ebp - 0x218]
movzx edx, word [ebp - 0x34]
sub ecx, edx
mov dword [ebp - 0x1604], ecx
jmp 0x405dc0
movzx eax, word [ebp - 0x218]
movzx ecx, word [ebp - 0x34]
cmp eax, ecx
je 0x405c8e
movzx edx, word [ebp - 0x218]
xor edx, 0x20
movzx eax, word [ebp - 0x34]
cmp edx, eax
je 0x405c8e
movzx ecx, word [ebp - 0x218]
movzx edx, word [ebp - 0x34]
cmp ecx, edx
jge 0x405daa
mov dword [ebp - 0x1600], 0xffffffff
jmp 0x405db4
mov dword [ebp - 0x1600], 1
mov eax, dword [ebp - 0x1600]
mov dword [ebp - 0x1604], eax
cmp dword [ebp - 0x1604], 0
jne 0x405e09
push edx
sub edx, 0x1133e
and edx, 0x1472a
pop edx
push eax
push eax
add esp, 4
jmp 0x405de5
add eax, 0x568
call 0x405df7
add byte [edx], dh
cmp byte [edi], dh
inc edx
dec ebp
cmp dword [ebx - 0x74a7fb3c], eax
invalid
push ecx
or ecx, 0x91cb
or ecx, 0x920f
pop ecx
push ebx
and ebx, 0x5444
sub ebx, 0x17954
xor ebx, 0xc140
add ebx, 0xa621
pop ebx
push ebx
jmp 0x405e3a
pop ebx
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx]
mov dword [ebp - 0x50c], eax
mov ecx, dword [ebp - 0x50c]
cmp ecx, dword [ebp - 0xcb4]
je 0x405e67
mov edx, dword [ebp - 0x50c]
cmp dword [edx + 0x30], 0
jne 0x405c32
mov dword [ebp - 0x31c], 0
push esi
jmp 0x405e77
pop esi
push eax
add eax, 0xfc24
pop eax
push edi
jmp 0x405e88
jmp 0x405e8e
sub edi, 0x3c02
pop edi
push esi
push ebx
add esp, 4
jmp 0x405ea2
pop esi
mov eax, dword [ebp - 0x31c]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x324], ecx
push ecx
sub ecx, 0x588a
and ecx, 0x7e30
and ecx, 0xba2b
sub ecx, 0xf749
pop ecx
push ecx
push esi
add esp, 4
and ecx, 0x109ce
or ecx, 0x79a6
xor ecx, 0x14cb0
pop ecx
mov dword [ebp - 0x770], 0
mov edx, dword [ebp - 0x324]
mov dword [ebp - 0x1608], edx
cmp dword [ebp - 0x1608], 0
jne 0x405f14
mov eax, dword [ebp - 0x770]
mov dword [ebp - 0x510], eax
jmp 0x406205
mov ecx, dword [ebp - 0x1608]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x160c], edx
jne 0x405f3c
mov eax, dword [ebp - 0x770]
mov dword [ebp - 0x510], eax
jmp 0x406205
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x160c]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x1610], ecx
cmp dword [ebp - 0x1610], 0
jne 0x405f6e
mov edx, dword [ebp - 0x770]
mov dword [ebp - 0x510], edx
jmp 0x406205
mov eax, dword [ebp - 0x324]
add eax, dword [ebp - 0x1610]
mov dword [ebp - 0x764], eax
jne 0x405f93
mov ecx, dword [ebp - 0x770]
mov dword [ebp - 0x510], ecx
jmp 0x406205
mov edx, dword [ebp - 0x764]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x1984], eax
mov ecx, dword [ebp - 0x764]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x1988], edx
mov eax, dword [ebp - 0x764]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x1d10], ecx
mov dword [ebp - 0x768], 0
jmp 0x405fed
mov edx, dword [ebp - 0x768]
add edx, 1
mov dword [ebp - 0x768], edx
mov eax, dword [ebp - 0x764]
mov ecx, dword [ebp - 0x768]
cmp ecx, dword [eax + 0x18]
jae 0x4061f9
mov edx, dword [ebp - 0x768]
mov eax, dword [ebp - 0x1984]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x76c], ecx
mov edx, dword [ebp - 0x768]
mov eax, dword [ebp - 0x1988]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x1d10]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x198c], eax
mov dword [ebp - 0x19c], 0
jmp 0x40605d
mov ecx, dword [ebp - 0x19c]
add ecx, 1
mov dword [ebp - 0x19c], ecx
mov edx, dword [ebp - 0x76c]
add edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
test eax, eax
je 0x40610f
mov ecx, dword [ebp - 0x19c]
movsx edx, byte [ebp + ecx - 0x878]
test edx, edx
je 0x40610f
push edi
or edi, 0x1526c
or edi, 0x7ad
pop edi
push edi
push eax
add esp, 4
call 0x4060a9
add byte [eax + 0x50], al
xor eax, dword [ebx + edi + 0x44]
add esp, 4
and edi, 0x109aa
jmp 0x4060bb
pop edi
mov eax, dword [ebp - 0x76c]
add eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x19c]
movsx eax, byte [ebp + edx - 0x878]
cmp ecx, eax
je 0x406101
mov ecx, dword [ebp - 0x76c]
add ecx, dword [ebp - 0x19c]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x19c]
movsx ecx, byte [ebp + eax - 0x878]
cmp edx, ecx
jne 0x406108
jmp 0x40604e
jmp 0x40610f
push ebx
or ebx, 0x7c22
or ebx, 0x16ed3
pop ebx
push esi
push ecx
add esp, 4
add esi, 0xa042
or esi, 0xd0e6
sub esi, 0x3ea
pop esi
push edi
push edi
add esp, 4
and edi, 0x130af
pop edi
mov edx, dword [ebp - 0x76c]
add edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x19c]
movsx edx, byte [ebp + ecx - 0x878]
cmp eax, edx
jne 0x40616e
mov dword [ebp - 0xcb8], 0
jmp 0x4061dd
push eax
push ecx
add esp, 4
sub eax, 0x112fe
jmp 0x406182
jmp 0x406187
pop eax
push edx
jmp 0x40618e
xor edx, 0x9766
jmp 0x406199
and edx, 0x168
pop edx
mov eax, dword [ebp - 0x76c]
add eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x19c]
movsx eax, byte [ebp + edx - 0x878]
or eax, 0x20
cmp ecx, eax
jge 0x4061d3
mov dword [ebp - 0xcb8], 0xffffffff
jmp 0x4061dd
mov dword [ebp - 0xcb8], 1
cmp dword [ebp - 0xcb8], 0
jne 0x4061f4
mov ecx, dword [ebp - 0x198c]
mov dword [ebp - 0x510], ecx
jmp 0x406205
jmp 0x405fde
mov edx, dword [ebp - 0x770]
mov dword [ebp - 0x510], edx
mov eax, dword [ebp - 0x510]
mov dword [ebp - 0x79c], eax
push edi
push eax
add esp, 4
add edi, 0x140b2
and edi, 0x3408
and edi, 0x409a
or edi, 0x11a31
pop edi
push ecx
xor ecx, 0x11ce0
xor ecx, 0x45d1
and ecx, 0xb2ad
pop ecx
mov ecx, dword [ebp - 0x3e8]
add ecx, 0xe
mov dword [ebp - 0x19dc], ecx
push eax
call 0x406262
add byte [esp + esi + 0x45], cl
dec edx
inc ebx
dec esp
dec ebp
cmp dword [ebp - 0x7d], ecx
les eax, [eax + ebx*2]
push edi
push edx
add esp, 4
xor edi, 0x3c0f
sub edi, 0x7eef
and edi, 0x1909
xor edi, 0x15bad
pop edi
cmp dword [ebp - 0x3e8], 0
je 0x406296
cmp dword [ebp - 0xab8], 0
jne 0x4062dc
push eax
call 0x4062a7
add byte [ecx + 0x4c], al
xor edx, dword [eax + 0x48]
dec ecx
xor dh, byte [edi]
xor eax, dword [ebx + eax*4 - 0x3c]
add al, 0xeb
pop es
inc edi
inc ebx
dec ebx
dec ebx
inc eax
inc ebx
dec ebp
jmp 0x4062b9
pop eax
push edi
sub edi, 0xac0a
sub edi, 0x174e5
pop edi
mov edx, dword [ebp - 0x79c]
mov dword [ebp - 0x1990], edx
push 0
call dword [ebp - 0x1990]
mov dword [ebp - 0x20a8], 0xa
push ebx
call 0x4062f5
add byte [edx + 0x49], al
aaa
xor al, 0x43
dec ebx
aas
dec edx
add esp, 4
pop ebx
push edx
push ecx
add esp, 4
call 0x40630e
add byte [eax + 0x32], dl
dec ecx
dec ebx
dec ebx
aaa
dec esi
add esp, 4
xor edx, 0x9d8
pop edx
mov eax, dword [ebp - 0x3e8]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x3ae], cl
mov edx, dword [ebp - 0xab8]
sub edx, dword [ebp - 0x3e8]
mov dword [ebp - 0x1694], edx
mov dword [ebp - 0xce8], 0
push edx
push ecx
add esp, 4
and edx, 0x4e0b
add edx, 0xa180
and edx, 0x16569
or edx, 0x15777
pop edx
push ecx
call 0x406371
add byte [ebx + 0x3b], cl
dec ecx
dec ebx
aaa
push eax
cmp byte [edi + 0x32], cl
add esp, 4
pop ecx
mov byte [ebp - 0x9d4], 0x56
mov byte [ebp - 0x9d3], 0x69
mov byte [ebp - 0x9d2], 0x72
mov byte [ebp - 0x9d1], 0x74
mov byte [ebp - 0x9d0], 0x75
mov byte [ebp - 0x9cf], 0x61
mov byte [ebp - 0x9ce], 0x6c
mov byte [ebp - 0x9cd], 0x50
mov byte [ebp - 0x9cc], 0x72
mov byte [ebp - 0x9cb], 0x6f
mov byte [ebp - 0x9ca], 0x74
mov byte [ebp - 0x9c9], 0x65
mov byte [ebp - 0x9c8], 0x63
mov byte [ebp - 0x9c7], 0x74
mov byte [ebp - 0x9c6], 0
push edx
push edi
add esp, 4
and edx, 0x14c20
and edx, 0xf01e
add edx, 0x43b7
pop edx
push ebx
or ebx, 0x10b08
jmp 0x406403
add ebx, 0x9ac9
xor ebx, 0xb907
pop ebx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1994], eax
mov ecx, dword [ebp - 0x1994]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1998], edx
mov eax, dword [ebp - 0x1998]
mov dword [ebp - 0x1614], eax
push edi
push ecx
add esp, 4
sub edi, 0x29b4
sub edi, 0x10ef4
add edi, 0xfe0a
jmp 0x406454
pop edi
push edx
push esi
add esp, 4
or edx, 0xfc82
pop edx
push edx
sub edx, 0x7876
pop edx
cmp dword [ebp - 0x1614], 0
jne 0x406481
mov dword [ebp - 0x2fc], 0
jmp 0x406728
mov ecx, dword [ebp - 0x1614]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xcc4], eax
push esi
push ebx
add esp, 4
or esi, 0x137b5
or esi, 0xaca6
xor esi, 0x43e4
pop esi
push esi
or esi, 0x47da
and esi, 0x32ed
and esi, 0xd3b9
sub esi, 0x1310d
pop esi
cmp dword [ebp - 0xcc4], 0
jne 0x4064dd
mov dword [ebp - 0x2fc], 0
jmp 0x406728
mov ecx, dword [ebp - 0xcc4]
mov dword [ebp - 0x514], ecx
push eax
or eax, 0x13659
pop eax
push edx
push ecx
add esp, 4
and edx, 0x1842
or edx, 0x5b3e
call 0x406511
add byte [esi], bh
aaa
cmp eax, 0x43384736
dec edx
add esp, 4
sub edx, 0x8761
pop edx
lea edx, [ebp - 0x1738]
mov dword [ebp - 0xcc0], edx
mov eax, dword [ebp - 0x514]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xcbc], ecx
xor edx, edx
mov word [ebp - 0x21c], dx
xor eax, eax
mov word [ebp - 0x38], ax
push ebx
sub ebx, 0x11433
xor ebx, 0x15f7
add ebx, 0x30a0
add ebx, 0x4288
pop ebx
push edi
push esi
add esp, 4
add edi, 0x161e9
sub edi, 0xb976
and edi, 0x13b74
pop edi
mov ecx, dword [ebp - 0xcbc]
mov dx, word [ecx]
mov word [ebp - 0x103e], dx
mov eax, dword [ebp - 0xcbc]
add eax, 2
mov dword [ebp - 0xcbc], eax
mov cx, word [ebp - 0x103e]
mov word [ebp - 0x21c], cx
mov edx, dword [ebp - 0xcc0]
mov ax, word [edx]
mov word [ebp - 0x1040], ax
mov ecx, dword [ebp - 0xcc0]
add ecx, 2
mov dword [ebp - 0xcc0], ecx
mov dx, word [ebp - 0x1040]
mov word [ebp - 0x38], dx
push eax
push esi
add esp, 4
add eax, 0x1348c
sub eax, 0x6759
sub eax, 0x5178
pop eax
push eax
xor eax, 0x5630
pop eax
push edi
push eax
add esp, 4
sub edi, 0xc342
and edi, 0x12222
pop edi
movzx eax, word [ebp - 0x38]
test eax, eax
jne 0x40661d
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
sub ecx, edx
mov dword [ebp - 0x161c], ecx
jmp 0x406677
movzx eax, word [ebp - 0x21c]
movzx ecx, word [ebp - 0x38]
cmp eax, ecx
je 0x406545
movzx edx, word [ebp - 0x21c]
xor edx, 0x20
movzx eax, word [ebp - 0x38]
cmp edx, eax
je 0x406545
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
cmp ecx, edx
jge 0x406661
mov dword [ebp - 0x1618], 0xffffffff
jmp 0x40666b
mov dword [ebp - 0x1618], 1
mov eax, dword [ebp - 0x1618]
mov dword [ebp - 0x161c], eax
cmp dword [ebp - 0x161c], 0
jne 0x4066c0
push edx
push edx
add esp, 4
add edx, 0x3523
pop edx
push eax
xor eax, 0xf657
pop eax
push ebx
push eax
add esp, 4
xor ebx, 0x10ca3
and ebx, 0x2011
pop ebx
push esi
push edi
add esp, 4
add esi, 0xbff6
pop esi
mov ecx, dword [ebp - 0x514]
mov dword [ebp - 0x2fc], ecx
jmp 0x406728
push ebx
push ebx
add esp, 4
add ebx, 0x6997
or ebx, 0xf51c
xor ebx, 0xd23b
sub ebx, 0xe764
pop ebx
push esi
xor esi, 0x1437
add esi, 0xac5
or esi, 0xd140
pop esi
mov edx, dword [ebp - 0x514]
mov eax, dword [edx]
mov dword [ebp - 0x514], eax
mov ecx, dword [ebp - 0x514]
cmp ecx, dword [ebp - 0xcc4]
je 0x40671e
mov edx, dword [ebp - 0x514]
cmp dword [edx + 0x30], 0
jne 0x4064e9
mov dword [ebp - 0x2fc], 0
push ecx
add ecx, 0x14597
xor ecx, 0x4806
pop ecx
push edx
push edx
add esp, 4
add edx, 0x332c
add edx, 0x35f6
pop edx
push ebx
push ebx
add esp, 4
xor ebx, 0x2aff
add ebx, 0x1369f
pop ebx
cmp dword [ebp - 0x2fc], 0
jne 0x40705f
mov eax, 0x6b
mov word [ebp - 0x1790], ax
mov ecx, 0x65
mov word [ebp - 0x178e], cx
mov edx, 0x72
mov word [ebp - 0x178c], dx
mov eax, 0x6e
mov word [ebp - 0x178a], ax
mov ecx, 0x65
mov word [ebp - 0x1788], cx
mov edx, 0x6c
mov word [ebp - 0x1786], dx
mov eax, 0x33
mov word [ebp - 0x1784], ax
mov ecx, 0x32
mov word [ebp - 0x1782], cx
mov edx, 0x2e
mov word [ebp - 0x1780], dx
mov eax, 0x64
mov word [ebp - 0x177e], ax
mov ecx, 0x6c
mov word [ebp - 0x177c], cx
mov edx, 0x6c
mov word [ebp - 0x177a], dx
xor eax, eax
mov word [ebp - 0x1778], ax
push ecx
jmp 0x406806
sub ecx, 0xa262
pop ecx
push edx
jmp 0x406815
pop edx
push edx
xor edx, 0x7edf
pop edx
push edi
and edi, 0x14971
pop edi
push ebx
push edi
add esp, 4
or ebx, 0xe6ba
pop ebx
mov byte [ebp - 0x8a4], 0x4c
mov byte [ebp - 0x8a3], 0x6f
mov byte [ebp - 0x8a2], 0x61
mov byte [ebp - 0x8a1], 0x64
mov byte [ebp - 0x8a0], 0x4c
mov byte [ebp - 0x89f], 0x69
mov byte [ebp - 0x89e], 0x62
mov byte [ebp - 0x89d], 0x72
mov byte [ebp - 0x89c], 0x61
mov byte [ebp - 0x89b], 0x72
mov byte [ebp - 0x89a], 0x79
mov byte [ebp - 0x899], 0x57
mov byte [ebp - 0x898], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x199c], ecx
mov edx, dword [ebp - 0x199c]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19a0], eax
mov ecx, dword [ebp - 0x19a0]
mov dword [ebp - 0x1620], ecx
push edi
push ebx
add esp, 4
sub edi, 0x85ac
and edi, 0x1617f
sub edi, 0x1253c
call 0x4068d8
add byte [ecx], bh
dec esi
aaa
push eax
dec ebx
xor al, byte [ebx + 0x505f04c4]
push edi
add esp, 4
jmp 0x4068e6
pop eax
cmp dword [ebp - 0x1620], 0
jne 0x4068ff
mov dword [ebp - 0x774], 0
jmp 0x406ba6
mov edx, dword [ebp - 0x1620]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcd0], ecx
push ecx
push eax
add esp, 4
add ecx, 0x5f02
sub ecx, 0x8238
sub ecx, 0x1bee
pop ecx
push edi
push esi
add esp, 4
or edi, 0xcdf5
pop edi
push edi
add edi, 0xe68e
xor edi, 0x1718d
pop edi
cmp dword [ebp - 0xcd0], 0
jne 0x40695b
mov dword [ebp - 0x774], 0
jmp 0x406ba6
mov edx, dword [ebp - 0xcd0]
mov dword [ebp - 0x518], edx
push esi
jmp 0x406970
and esi, 0x651d
xor esi, 0x1005a
jmp 0x406984
pop esi
push ebx
add ebx, 0xbe60
sub ebx, 0x11abf
or ebx, 0xb9f7
pop ebx
lea eax, [ebp - 0x1790]
mov dword [ebp - 0xccc], eax
mov ecx, dword [ebp - 0x518]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcc8], edx
xor eax, eax
mov word [ebp - 0x220], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
push ecx
push esi
add esp, 4
and ecx, 0x83c4
add ecx, 0x1332d
add ecx, 0xa722
pop ecx
push edi
add edi, 0xa097
or edi, 0xf3ed
or edi, 0x70f3
add edi, 0xea91
pop edi
mov edx, dword [ebp - 0xcc8]
mov ax, word [edx]
mov word [ebp - 0x1042], ax
mov ecx, dword [ebp - 0xcc8]
add ecx, 2
mov dword [ebp - 0xcc8], ecx
mov dx, word [ebp - 0x1042]
mov word [ebp - 0x220], dx
mov eax, dword [ebp - 0xccc]
mov cx, word [eax]
mov word [ebp - 0x1044], cx
mov edx, dword [ebp - 0xccc]
add edx, 2
mov dword [ebp - 0xccc], edx
mov ax, word [ebp - 0x1044]
mov word [ebp - 0x3c], ax
push eax
push ecx
add esp, 4
or eax, 0xe62c
or eax, 0xc33c
add eax, 0xa34a
and eax, 0x15b12
pop eax
push esi
push ecx
add esp, 4
jmp 0x406a77
add esi, 0xe135
pop esi
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x406a9b
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1668], edx
jmp 0x406af5
movzx ecx, word [ebp - 0x220]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x4069c3
movzx eax, word [ebp - 0x220]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x4069c3
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x406adf
mov dword [ebp - 0x1624], 0xffffffff
jmp 0x406ae9
mov dword [ebp - 0x1624], 1
mov ecx, dword [ebp - 0x1624]
mov dword [ebp - 0x1668], ecx
cmp dword [ebp - 0x1668], 0
jne 0x406b3e
push esi
push eax
add esp, 4
sub esi, 0x7530
pop esi
push edi
push ecx
add esp, 4
sub edi, 0x1120a
xor edi, 0xb8ef
xor edi, 0xa8ea
and edi, 0x38b5
pop edi
push edx
or edx, 0x12347
pop edx
mov edx, dword [ebp - 0x518]
mov dword [ebp - 0x774], edx
jmp 0x406ba6
push ecx
push edx
add esp, 4
add ecx, 0x162f6
add ecx, 0xf034
add ecx, 0x35f9
pop ecx
push edx
and edx, 0x32bd
or edx, 0xbdf9
xor edx, 0xc45e
or edx, 0x17e4f
pop edx
mov eax, dword [ebp - 0x518]
mov ecx, dword [eax]
mov dword [ebp - 0x518], ecx
mov edx, dword [ebp - 0x518]
cmp edx, dword [ebp - 0xcd0]
je 0x406b9c
mov eax, dword [ebp - 0x518]
cmp dword [eax + 0x30], 0
jne 0x406967
mov dword [ebp - 0x774], 0
push esi
push ebx
add esp, 4
and esi, 0x61cb
pop esi
push edx
push edx
add esp, 4
and edx, 0x5507
and edx, 0x4016
sub edx, 0x10b38
and edx, 0xcfd0
pop edx
push ecx
sub ecx, 0x1468b
pop ecx
cmp dword [ebp - 0x774], 0
jne 0x406c22
push eax
push edi
add esp, 4
and eax, 0x13b29
add eax, 0x3cff
add eax, 0x11cb6
pop eax
push eax
xor eax, 0x173b4
add eax, 0xe9bc
xor eax, 0x8e6d
add eax, 0xa25e
pop eax
mov dword [ebp - 0xab4], 0
jmp 0x40774a
push ebx
push ecx
add esp, 4
call 0x406c35
add byte [0x473d3a44], bh
cmp eax, 0xc4834142
add al, 0x5b
push edi
sub edi, 0x18675
call 0x406c50
add byte [ecx*2 + 0x3c3e463d], bh
cmp al, byte [ebx + eax*2 + 0x38]
add esp, 4
pop edi
mov ecx, dword [ebp - 0x774]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x3a4], edx
mov dword [ebp - 0x784], 0
mov eax, dword [ebp - 0x3a4]
mov dword [ebp - 0x166c], eax
cmp dword [ebp - 0x166c], 0
jne 0x406c93
mov ecx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], ecx
jmp 0x406f84
mov edx, dword [ebp - 0x166c]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1670], eax
jne 0x406cbb
mov ecx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], ecx
jmp 0x406f84
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1670]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1678], edx
cmp dword [ebp - 0x1678], 0
jne 0x406ced
mov eax, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], eax
jmp 0x406f84
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [ebp - 0x1678]
mov dword [ebp - 0x778], ecx
jne 0x406d12
mov edx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], edx
jmp 0x406f84
mov eax, dword [ebp - 0x778]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19a4], ecx
mov edx, dword [ebp - 0x778]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19a8], eax
mov ecx, dword [ebp - 0x778]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x19ac], edx
mov dword [ebp - 0x77c], 0
jmp 0x406d6c
mov eax, dword [ebp - 0x77c]
add eax, 1
mov dword [ebp - 0x77c], eax
mov ecx, dword [ebp - 0x778]
mov edx, dword [ebp - 0x77c]
cmp edx, dword [ecx + 0x18]
jae 0x406f78
mov eax, dword [ebp - 0x77c]
mov ecx, dword [ebp - 0x19a4]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x780], edx
mov eax, dword [ebp - 0x77c]
mov ecx, dword [ebp - 0x19a8]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x19ac]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x19b0], ecx
mov dword [ebp - 0x1a0], 0
jmp 0x406ddc
mov edx, dword [ebp - 0x1a0]
add edx, 1
mov dword [ebp - 0x1a0], edx
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x1a0]
movsx ecx, byte [eax]
test ecx, ecx
je 0x406e8e
mov edx, dword [ebp - 0x1a0]
movsx eax, byte [ebp + edx - 0x8a4]
test eax, eax
je 0x406e8e
push ecx
sub ecx, 0x1b59
xor ecx, 0x136f3
jmp 0x406e1b
or ecx, 0x17cd6
pop ecx
push esi
and esi, 0xab7c
call 0x406e37
add byte [ebx + 0x3a], cl
xor al, 0x37
inc esp
inc edx
inc ebx
push eax
add esp, 4
pop esi
mov ecx, dword [ebp - 0x780]
add ecx, dword [ebp - 0x1a0]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1a0]
movsx ecx, byte [ebp + eax - 0x8a4]
cmp edx, ecx
je 0x406e80
mov edx, dword [ebp - 0x780]
add edx, dword [ebp - 0x1a0]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1a0]
movsx edx, byte [ebp + ecx - 0x8a4]
cmp eax, edx
jne 0x406e87
jmp 0x406dcd
jmp 0x406e8e
push esi
sub esi, 0xa843
sub esi, 0x15750
sub esi, 0x10de5
sub esi, 0x7b70
pop esi
push ebx
push edi
add esp, 4
xor ebx, 0x700b
and ebx, 0x932a
and ebx, 0x75c1
pop ebx
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x1a0]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1a0]
movsx eax, byte [ebp + edx - 0x8a4]
cmp ecx, eax
jne 0x406eed
mov dword [ebp - 0xcd4], 0
jmp 0x406f5c
push ebx
sub ebx, 0x16588
add ebx, 0x1447e
and ebx, 0x1f6b
add ebx, 0x2e6
pop ebx
push ebx
push esi
add esp, 4
or ebx, 0x4659
add ebx, 0x673c
sub ebx, 0x6ee9
pop ebx
mov ecx, dword [ebp - 0x780]
add ecx, dword [ebp - 0x1a0]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1a0]
movsx ecx, byte [ebp + eax - 0x8a4]
or ecx, 0x20
cmp edx, ecx
jge 0x406f52
mov dword [ebp - 0xcd4], 0xffffffff
jmp 0x406f5c
mov dword [ebp - 0xcd4], 1
cmp dword [ebp - 0xcd4], 0
jne 0x406f73
mov edx, dword [ebp - 0x19b0]
mov dword [ebp - 0x3f8], edx
jmp 0x406f84
jmp 0x406d5d
mov eax, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], eax
cmp dword [ebp - 0x3f8], 0
je 0x40705f
push edi
push edi
add esp, 4
add edi, 0x13d4d
and edi, 0x13d18
jmp 0x406fa8
pop edi
push edx
add edx, 0xc030
and edx, 0x16a05
pop edx
push ecx
push eax
add esp, 4
or ecx, 0xb072
pop ecx
mov ecx, dword [ebp - 0x3f8]
mov dword [ebp - 0x19b4], ecx
push ebx
jmp 0x406fd9
jmp 0x406fe2
pop ebx
push edi
push edi
add esp, 4
xor edi, 0x3f5c
and edi, 0x6f49
xor edi, 0xd58c
and edi, 0x5edc
pop edi
mov edx, dword [ebp - 0x19b4]
mov dword [ebp - 0x19b8], edx
lea eax, [ebp - 0x1738]
push eax
call dword [ebp - 0x19b8]
test eax, eax
jne 0x40705f
push esi
push esi
add esp, 4
add esi, 0x4a07
add esi, 0x12e06
pop esi
push eax
push eax
add esp, 4
or eax, 0xf0e9
pop eax
push edi
sub edi, 0x16f3e
and edi, 0x1447d
sub edi, 0x10ed5
pop edi
mov dword [ebp - 0xab4], 0
jmp 0x40774a
push edi
call 0x407070
add byte [edi + 0x3d], cl
xor al, 0x4d
aaa
xor ecx, dword [edx + 0x32]
aaa
add esp, 4
pop edi
push edx
push ecx
add esp, 4
add edx, 0x1053a
jmp 0x407088
pop edx
push eax
xor eax, 0x4c8e
pop eax
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x19bc], ecx
mov edx, dword [ebp - 0x19bc]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19c0], eax
mov ecx, dword [ebp - 0x19c0]
mov dword [ebp - 0x167c], ecx
push eax
call 0x4070c9
add byte [ebp + 0x3b], al
dec ebp
inc edx
inc eax
push eax
xor eax, 0xc4833e4b
add al, 0x81
sar ah, 0xd1
add byte [eax], al
add eax, 0xbbe1
call 0x4070e7
add byte [edx + 0x3d], al
inc eax
cmp byte [0x4a383d49], dh
add esp, 4
pop eax
cmp dword [ebp - 0x167c], 0
jne 0x407103
mov dword [ebp - 0x2fc], 0
jmp 0x4073aa
mov edx, dword [ebp - 0x167c]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xce0], ecx
push ecx
sub ecx, 0xb957
sub ecx, 0x797b
add ecx, 0x3a62
add ecx, 0xb257
pop ecx
push esi
jmp 0x407135
sub esi, 0xdee7
jmp 0x407140
and esi, 0x47a2
pop esi
cmp dword [ebp - 0xce0], 0
jne 0x40715f
mov dword [ebp - 0x2fc], 0
jmp 0x4073aa
mov edx, dword [ebp - 0xce0]
mov dword [ebp - 0x51c], edx
push esi
push esi
add esp, 4
add esi, 0x52d0
pop esi
push ebx
xor ebx, 0x5eb1
and ebx, 0xef83
sub ebx, 0x9008
or ebx, 0xfa5f
pop ebx
push esi
push edx
add esp, 4
or esi, 0x32ed
pop esi
lea eax, [ebp - 0x1738]
mov dword [ebp - 0xcdc], eax
mov ecx, dword [ebp - 0x51c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcd8], edx
xor eax, eax
mov word [ebp - 0x224], ax
xor ecx, ecx
mov word [ebp - 0x40], cx
push eax
push eax
add esp, 4
add eax, 0x14e0c
add eax, 0xa485
add eax, 0x8bde
sub eax, 0xb6f7
pop eax
push esi
sub esi, 0x125
sub esi, 0x16bfa
or esi, 0x16eb3
pop esi
mov edx, dword [ebp - 0xcd8]
mov ax, word [edx]
mov word [ebp - 0x1046], ax
mov ecx, dword [ebp - 0xcd8]
add ecx, 2
mov dword [ebp - 0xcd8], ecx
mov dx, word [ebp - 0x1046]
mov word [ebp - 0x224], dx
mov eax, dword [ebp - 0xcdc]
mov cx, word [eax]
mov word [ebp - 0x1048], cx
mov edx, dword [ebp - 0xcdc]
add edx, 2
mov dword [ebp - 0xcdc], edx
mov ax, word [ebp - 0x1048]
mov word [ebp - 0x40], ax
push ebx
xor ebx, 0x892f
add ebx, 0x132e4
pop ebx
push esi
add esi, 0xe4b5
or esi, 0x125ca
call 0x407278
add byte [ebx + 0x42], al
aas
dec ebx
aas
aaa
dec esp
add esp, 4
or esi, 0x14c76
pop esi
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x40729f
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x1684], edx
jmp 0x4072f9
movzx ecx, word [ebp - 0x224]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x4071c7
movzx eax, word [ebp - 0x224]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x4071c7
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x4072e3
mov dword [ebp - 0x1680], 0xffffffff
jmp 0x4072ed
mov dword [ebp - 0x1680], 1
mov ecx, dword [ebp - 0x1680]
mov dword [ebp - 0x1684], ecx
cmp dword [ebp - 0x1684], 0
jne 0x407342
push edi
and edi, 0xca48
or edi, 0x2ffe
add edi, 0x2965
sub edi, 0x14a80
pop edi
push ebx
push ecx
add esp, 4
add ebx, 0xe0cb
or ebx, 0x6694
add ebx, 0xdd26
pop ebx
mov edx, dword [ebp - 0x51c]
mov dword [ebp - 0x2fc], edx
jmp 0x4073aa
push ecx
add ecx, 0xc2b3
jmp 0x407352
jmp 0x407358
xor ecx, 0x13031
pop ecx
push edi
jmp 0x407365
pop edi
push edi
and edi, 0x296d
xor edi, 0x4ca8
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 - 0xce0]
je 0x4073a0
mov eax, dword [ebp - 0x51c]
cmp dword [eax + 0x30], 0
jne 0x40716b
mov dword [ebp - 0x2fc], 0
push ecx
push eax
add esp, 4
and ecx, 0x1143b
sub ecx, 0x10050
and ecx, 0x1169
pop ecx
push edx
xor edx, 0x13844
or edx, 0x44ce
xor edx, 0x2d2e
jmp 0x4073db
pop edx
mov ecx, dword [ebp - 0x2fc]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x338], edx
push ecx
push edx
add esp, 4
and ecx, 0x8b51
and ecx, 0x942
call 0x40740b
add byte [edi + 0x3e], cl
inc ebp
cmp al, 0x49
inc esi
dec ebp
cmp al, 0x4f
add esp, 4
pop ecx
push edi
xor edi, 0xea1d
xor edi, 0x111cb
pop edi
mov dword [ebp - 0x794], 0
mov eax, dword [ebp - 0x338]
mov dword [ebp - 0x1688], eax
cmp dword [ebp - 0x1688], 0
jne 0x40744d
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x520], ecx
jmp 0x40773e
mov edx, dword [ebp - 0x1688]
mov eax, dword [ebp - 0x338]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x168c], eax
jne 0x407475
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x520], ecx
jmp 0x40773e
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x168c]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1690], edx
cmp dword [ebp - 0x1690], 0
jne 0x4074a7
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x520], eax
jmp 0x40773e
mov ecx, dword [ebp - 0x338]
add ecx, dword [ebp - 0x1690]
mov dword [ebp - 0x788], ecx
jne 0x4074cc
mov edx, dword [ebp - 0x794]
mov dword [ebp - 0x520], edx
jmp 0x40773e
mov eax, dword [ebp - 0x788]
mov ecx, dword [ebp - 0x338]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19c4], ecx
mov edx, dword [ebp - 0x788]
mov eax, dword [ebp - 0x338]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19c8], eax
mov ecx, dword [ebp - 0x788]
mov edx, dword [ebp - 0x338]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x19cc], edx
mov dword [ebp - 0x78c], 0
jmp 0x407526
mov eax, dword [ebp - 0x78c]
add eax, 1
mov dword [ebp - 0x78c], eax
mov ecx, dword [ebp - 0x788]
mov edx, dword [ebp - 0x78c]
cmp edx, dword [ecx + 0x18]
jae 0x407732
mov eax, dword [ebp - 0x78c]
mov ecx, dword [ebp - 0x19c4]
mov edx, dword [ebp - 0x338]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x790], edx
mov eax, dword [ebp - 0x78c]
mov ecx, dword [ebp - 0x19c8]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x19cc]
mov ecx, dword [ebp - 0x338]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x19d0], ecx
mov dword [ebp - 0x1a4], 0
jmp 0x407596
mov edx, dword [ebp - 0x1a4]
add edx, 1
mov dword [ebp - 0x1a4], edx
mov eax, dword [ebp - 0x790]
add eax, dword [ebp - 0x1a4]
movsx ecx, byte [eax]
test ecx, ecx
je 0x407648
mov edx, dword [ebp - 0x1a4]
movsx eax, byte [ebp + edx - 0x9d4]
test eax, eax
je 0x407648
push edi
jmp 0x4075cd
call 0x4075d9
add byte [edi + 0x37], cl
dec ebp
dec esi
cmp ecx, dword [eax - 0x7d]
les eax, [edi + ebx*2]
push edi
push edi
add esp, 4
and edi, 0x159f6
sub edi, 0xac4c
add edi, 0xc219
pop edi
mov ecx, dword [ebp - 0x790]
add ecx, dword [ebp - 0x1a4]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1a4]
movsx ecx, byte [ebp + eax - 0x9d4]
cmp edx, ecx
je 0x40763a
mov edx, dword [ebp - 0x790]
add edx, dword [ebp - 0x1a4]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1a4]
movsx edx, byte [ebp + ecx - 0x9d4]
cmp eax, edx
jne 0x407641
jmp 0x407587
jmp 0x407648
push ecx
push ecx
add esp, 4
or ecx, 0x8d61
pop ecx
push esi
or esi, 0x11ca2
pop esi
push ebx
push eax
add esp, 4
xor ebx, 0x1c91
or ebx, 0xb7ff
add ebx, 0xe120
or ebx, 0xcc47
pop ebx
mov eax, dword [ebp - 0x790]
add eax, dword [ebp - 0x1a4]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1a4]
movsx eax, byte [ebp + edx - 0x9d4]
cmp ecx, eax
jne 0x4076a7
mov dword [ebp - 0xce4], 0
jmp 0x407716
push eax
sub eax, 0x5185
and eax, 0x10607
or eax, 0xbd31
or eax, 0xc145
pop eax
push ebx
push edi
add esp, 4
xor ebx, 0x6626
or ebx, 0xc75b
sub ebx, 0x573
pop ebx
mov ecx, dword [ebp - 0x790]
add ecx, dword [ebp - 0x1a4]
lea ebx, [esi + edi*8 - 1]
dec dword [edi]
mov esi, 0x20ca8311
mov eax, dword [ebp - 0x1a4]
movsx ecx, byte [ebp + eax - 0x9d4]
or ecx, 0x20
cmp edx, ecx
jge 0x40770c
mov dword [ebp - 0xce4], 0xffffffff
jmp 0x407716
mov dword [ebp - 0xce4], 1
cmp dword [ebp - 0xce4], 0
jne 0x40772d
mov edx, dword [ebp - 0x19d0]
mov dword [ebp - 0x520], edx
jmp 0x40773e
jmp 0x407517
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x520], eax
mov ecx, dword [ebp - 0x520]
mov dword [ebp - 0xab4], ecx
push esi
push edi
add esp, 4
jmp 0x407755
sub esi, 0xec77
pop esi
push edx
call 0x40776c
add byte [ebp + 0x33], cl
inc eax
xor eax, 0x4a454c33
inc edi
add esp, 4
invalid