Function at 0x5ed300
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xfc]
cmp eax, dword [ecx + 8]
jbe 0x5ee987
sub esp, 0x17c
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1a0], 0
mov dword [esp + 0x1a4], 0
mov dword [esp + 0x1a8], 0
mov eax, dword [esp + 0x194]
mov dword [esp], eax
mov eax, dword [esp + 0x198]
mov dword [esp + 4], eax
call fcn.005eebc0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
test ebx, ebx
jne 0x5ed8be
mov dword [esp + 0x44], ecx
mov dword [esp + 0x4c], edx
mov dword [esp + 0xe4], eax
lea edi, [esp + 0x134]
xor eax, eax
call fcn.0045f63b
mov ecx, dword [esp + 0x184]
mov edx, dword [ecx + 0x10]
mov ebx, dword [esp + 0x188]
mov dword [esp], ebx
call edx
movzx ecx, byte [esp + 0x18]
mov byte [esp + 0x27], cl
lea edi, [esp + 0x134]
lea esi, [esp + 4]
call fcn.0045fb1e
lea edi, [esp + 0x120]
lea esi, [esp + 0x134]
call fcn.0045fb1e
movzx ecx, byte [esp + 0x27]
test cl, cl
je 0x5ed47f
lea edi, [esp + 0x10c]
lea esi, [esp + 0x120]
call fcn.0045fb1e
mov eax, dword [esp + 0x10c]
mov ecx, dword [esp + 0x110]
test ecx, 0x80000000
je 0x5ed449
shl ecx, 1
mov edx, eax
shr eax, 0x1f
or eax, ecx
mov ecx, edx
shl edx, 1
mov ebx, eax
shl eax, 1
shr edx, 0x1f
or eax, edx
mov edx, eax
add eax, 0xd7b17f80
shr ebx, 0x1f
add edx, 0xd7b17f80
adc ebx, 0xd
jmp 0x5ed45d
mov ecx, dword [esp + 0x114]
mov ebx, dword [esp + 0x118]
mov edx, ecx
mov ecx, eax
mov eax, edx
test ebx, ebx
sete dl
test eax, eax
sete al
and edx, eax
test dl, dl
je 0x5ed478
test ecx, 0x3fffffff
sete al
jmp 0x5ed47a
xor eax, eax
xor eax, 1
jmp 0x5ed481
xor eax, eax
test al, al
je 0x5ed541
mov eax, dword [esp + 0x18c]
mov ecx, dword [eax + 0x20]
mov dword [esp + 0x70], ecx
mov edx, dword [esp + 0x190]
mov dword [esp], edx
lea edi, [esp + 4]
lea esi, [esp + 0x120]
call fcn.0045fb1e
mov ecx, dword [esp + 0x70]
call ecx
mov eax, dword [esp + 0x18c]
test byte [eax], al
lea edi, [esp + 0x148]
lea esi, [0x8265a0]
call fcn.0045fb1e
lea edi, [esp + 0x15c]
xor eax, eax
call fcn.0045f638
lea eax, [0x5eeb70]
mov dword [esp + 0x15c], eax
mov eax, dword [esp + 0x18c]
mov dword [esp + 0x160], eax
mov ecx, dword [esp + 0x190]
mov dword [esp + 0x164], ecx
lea edi, [esp + 0x168]
lea esi, [esp + 0x148]
call fcn.0045fb1e
lea ecx, [esp + 0x15c]
mov dword [esp + 0xb4], ecx
lea ecx, [esp + 0xa8]
mov dword [esp], ecx
call fcn.004331d0
test eax, eax
jne 0x5ed8b2
mov eax, dword [0x824f1c]
mov ecx, dword [esp + 0x184]
lea edx, [0x6d0320]
cmp ecx, edx
jne 0x5ed57c
mov dword [esp], ecx
mov ecx, dword [esp + 0x188]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00403430
movzx eax, byte [esp + 0xc]
test al, al
jne 0x5ed700
lea eax, [0x62e500]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00404540
mov eax, dword [esp + 8]
mov dword [esp + 0xe8], eax
lea ecx, [0x62e780]
mov dword [esp], ecx
mov dword [esp + 4], 0
call fcn.00404540
mov eax, dword [esp + 8]
mov dword [esp + 0xec], eax
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
lea ecx, [0x5eeae0]
mov dword [esp + 0xfc], ecx
mov dword [esp + 0x100], eax
lea ecx, [esp + 0x1a4]
mov dword [esp + 0x104], ecx
mov ecx, dword [esp + 0xe8]
mov dword [esp + 0x108], ecx
lea edx, [esp + 0xfc]
mov dword [esp + 0x90], edx
lea edx, [esp + 0x84]
mov dword [esp], edx
call fcn.004331d0
test eax, eax
jne 0x5ed8a6
lea eax, [0x649880]
mov dword [esp], eax
call fcn.0040b470
mov eax, dword [esp + 4]
lea ecx, [0x5ee9a0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x184]
mov dword [eax + 4], ecx
mov ecx, dword [0x84d450]
test ecx, ecx
jne 0x5ed679
mov ecx, dword [esp + 0x188]
mov dword [eax + 8], ecx
jmp 0x5ed693
lea edi, [eax + 8]
mov ecx, eax
mov eax, dword [esp + 0x188]
call fcn.0045f3a0
mov eax, ecx
mov ecx, dword [esp + 0x188]
mov edx, dword [esp + 0x18c]
mov dword [eax + 0xc], edx
mov edx, dword [0x84d450]
test edx, edx
jne 0x5ed6c7
mov edx, dword [esp + 0x190]
mov dword [eax + 0x10], edx
mov ebx, dword [esp + 0xe8]
mov dword [eax + 0x14], ebx
mov ebx, dword [esp + 0xec]
mov dword [eax + 0x18], ebx
jmp 0x5ed6f8
lea edi, [eax + 0x10]
mov edx, eax
mov eax, dword [esp + 0x190]
call fcn.0045f3a0
lea edi, [edx + 0x14]
mov eax, dword [esp + 0xe8]
call fcn.0045f3a0
lea edi, [edx + 0x18]
mov eax, dword [esp + 0xec]
call fcn.0045f3a0
mov eax, edx
mov dword [esp], eax
call fcn.0043f4c0
lea eax, [0x634640]
mov dword [esp], eax
mov dword [esp + 4], 0
mov ecx, dword [esp + 0x4c]
lea edx, [ecx + 6]
mov dword [esp + 0x54], edx
mov dword [esp + 8], edx
call fcn.004483e0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x54]
cmp ecx, 1
jb 0x5ed739
mov edx, 1
jmp 0x5ed772
lea edx, [0x634640]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 0
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 1
call fcn.004484a0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
inc ecx
mov ebx, edx
mov edx, ecx
mov ecx, ebx
mov dword [esp + 0x50], edx
mov byte [eax], 5
mov ebx, dword [esp + 0x180]
mov ebp, dword [ebx + 0x1c]
mov esi, dword [ebx + 0x18]
test ebp, ebp
je 0x5ed85d
mov edi, dword [ebx + 0x24]
test edi, edi
je 0x5ed85d
cmp ebp, 0xff
jg 0x5ed806
mov dword [esp + 0x6c], ebp
mov dword [esp + 0xf4], esi
lea edi, [edx + 1]
cmp ecx, edi
jae 0x5ed7f8
lea ebx, [0x634640]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edi
call fcn.004484a0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
lea edi, [ecx + 1]
mov ebx, dword [esp + 0x180]
mov ebp, dword [esp + 0x6c]
mov esi, dword [esp + 0xf4]
mov ecx, edx
mov edx, dword [esp + 0x50]
xchg ebp, ebx
mov byte [eax + edx], bl
xchg ebp, ebx
xor edx, edx
jmp 0x5ee925
lea eax, [0x63c100]
mov dword [esp], eax
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1f
lea ecx, [0x66db5e]
mov dword [eax], ecx
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1a0], 0
lea ecx, [0x6cf2f4]
mov dword [esp + 0x1a4], ecx
mov dword [esp + 0x1a8], eax
call fcn.004337c0
add esp, 0x17c
ret
lea ebp, [edx + 2]
cmp ecx, ebp
jae 0x5ed89e
lea ebx, [0x634640]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.004484a0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
lea ebp, [ecx + 2]
mov ebx, dword [esp + 0x180]
mov ecx, edx
mov edx, dword [esp + 0x50]
mov word [eax + edx], 1
jmp 0x5ed8ee
call fcn.004337c0
add esp, 0x17c
ret
call fcn.004337c0
add esp, 0x17c
ret
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1a0], 0
mov dword [esp + 0x1a4], ebp
mov dword [esp + 0x1a8], esi
call fcn.004337c0
add esp, 0x17c
ret
mov dword [esp + 0x54], ecx
mov dword [esp + 0x50], ebp
mov dword [esp + 0xf0], eax
mov edx, dword [esp + 0x18c]
mov ebx, dword [edx + 0x2c]
mov esi, dword [esp + 0x190]
mov dword [esp], esi
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
call ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], ecx
test edx, edx
jne 0x5edde6
mov edx, dword [esp + 0x54]
cmp edx, 2
jb 0x5ee900
lea eax, [0x63a780]
mov dword [esp], eax
mov ecx, dword [esp + 0x18c]
mov dword [esp + 4], ecx
call fcn.00408f30
mov eax, dword [esp + 8]
mov dword [esp], eax
mov eax, dword [esp + 0x190]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 2
mov edx, dword [esp + 0x54]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 2
call fcn.00472140
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], ecx
test edx, edx
jne 0x5eddda
mov ecx, dword [esp + 0x50]
test ecx, ecx
jbe 0x5ee8f9
mov edx, dword [esp + 0xf0]
movzx ebx, byte [edx]
cmp bl, 5
jne 0x5edd1d
cmp ecx, 1
jbe 0x5ee8ef
movzx eax, byte [edx + 1]
cmp eax, 0xff
je 0x5edcc6
mov ecx, dword [esp + 0x180]
mov ebx, dword [ecx + 0x24]
test ebx, ebx
je 0x5eda8f
mov dword [esp + 0x68], eax
lea eax, [0x63d360]
mov dword [esp], eax
mov eax, dword [esp + 0x18c]
mov dword [esp + 4], eax
call fcn.00408f30
mov eax, dword [esp + 0x180]
mov edx, dword [eax + 0x24]
mov ecx, dword [edx]
mov ebx, dword [esp + 0x184]
mov dword [esp], ebx
mov ebx, dword [esp + 0x188]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x190]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0x68]
mov dword [esp + 0x10], ebp
call ecx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], ecx
test edx, edx
jne 0x5edcba
mov ecx, dword [esp + 0x180]
mov edx, dword [esp + 0xf0]
mov eax, dword [ecx]
mov ecx, dword [esp + 0x54]
cmp ecx, 3
jb 0x5edaa1
mov ebx, 3
jmp 0x5edae4
mov dword [esp + 0x64], eax
lea eax, [0x634640]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], 0
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 3
call fcn.004484a0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
add ecx, 3
mov ebx, ecx
mov ecx, edx
mov edx, eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xf0], edx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], ecx
mov byte [edx], 5
mov byte [edx + 1], al
mov byte [edx + 2], 0
mov eax, dword [esp + 0xe4]
mov dword [esp], eax
mov ebp, dword [esp + 0x4c]
mov dword [esp + 4], ebp
call fcn.005577b0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
test eax, eax
je 0x5edb3e
cmp ecx, 4
je 0x5edb35
cmp ecx, 0x10
jne 0x5ee8a5
xor edx, edx
jmp 0x5ee8b3
mov edx, eax
mov ebx, ecx
jmp 0x5ee5b3
mov eax, dword [esp + 0x4c]
cmp eax, 0xff
jg 0x5edc63
mov ecx, dword [esp + 0x50]
lea edx, [ecx + 1]
mov ebx, dword [esp + 0x54]
cmp ebx, edx
jb 0x5edb65
mov ebp, dword [esp + 0xf0]
jmp 0x5edba5
lea eax, [0x634640]
mov dword [esp], eax
mov ebp, dword [esp + 0xf0]
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.004484a0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
inc eax
mov ebx, ecx
mov ebp, edx
mov ecx, dword [esp + 0x50]
mov edx, eax
mov eax, dword [esp + 0x4c]
mov byte [ebp + ecx], 3
lea ecx, [edx + 1]
cmp ebx, ecx
jae 0x5edbea
mov dword [esp + 0x50], edx
lea eax, [0x634640]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call fcn.004484a0
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
lea ecx, [eax + 1]
mov eax, dword [esp + 0x4c]
mov edx, dword [esp + 0x50]
mov byte [ebp + edx], al
lea edx, [eax + ecx]
mov dword [esp + 0x50], edx
cmp ebx, edx
jae 0x5edc2b
mov dword [esp + 0x6c], ecx
lea eax, [0x634640]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.004484a0
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x54], ebx
mov dword [esp + 0xf0], ebp
add ecx, ebp
mov dword [esp], ecx
mov ecx, dword [esp + 0xe4]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0045fd30
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0xf0]
jmp 0x5eddf2
lea eax, [0x63c100]
mov dword [esp], eax
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [eax + 4], 0xd
lea ecx, [0x664d47]
mov dword [eax], ecx
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1a0], 0
lea ecx, [0x6cf2f4]
mov dword [esp + 0x1a4], ecx
mov dword [esp + 0x1a8], eax
call fcn.004337c0
add esp, 0x17c
ret
call fcn.004337c0
add esp, 0x17c
ret
lea eax, [0x63c100]
mov dword [esp], eax
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x24
lea ecx, [0x66fb50]
mov dword [eax], ecx
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1a0], 0
lea ecx, [0x6cf2f4]
mov dword [esp + 0x1a4], ecx
mov dword [esp + 0x1a8], eax
call fcn.004337c0
add esp, 0x17c
ret
movzx eax, bl
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0xa
call fcn.0046c7a0
mov dword [esp], 0
lea eax, [0x66c50c]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x1c
call fcn.0044b990
mov eax, dword [esp + 0x14]
mov dword [esp + 0xe0], eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x40], ecx
lea edx, [0x63c100]
mov dword [esp], edx
call fcn.0040b470
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x40]
mov dword [edi + 4], eax
mov eax, dword [0x84d450]
test eax, eax
jne 0x5edd98
mov eax, dword [esp + 0xe0]
mov dword [edi], eax
jmp 0x5edda4
mov eax, dword [esp + 0xe0]
call fcn.0045f3a0
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1a0], 0
lea eax, [0x6cf2f4]
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], edi
call fcn.004337c0
add esp, 0x17c
ret
call fcn.004337c0
add esp, 0x17c
ret
call fcn.004337c0
add esp, 0x17c
ret
lea ebx, [eax + 2]
cmp ecx, ebx
jae 0x5ede2e
mov dword [esp + 0x50], eax
lea ebp, [0x634640]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.004484a0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
lea ebx, [eax + 2]
mov eax, dword [esp + 0x50]
mov dword [esp + 0xf0], edx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], ecx
mov ebp, dword [esp + 0x44]
mov esi, ebp
sar ebp, 8
xchg ebp, ebx
mov byte [edx + eax], bl
xchg ebp, ebx
xchg esi, ebx
mov byte [edx + eax + 1], bl
xchg esi, ebx
mov eax, dword [esp + 0x18c]
mov eax, dword [eax + 0x2c]
mov ebp, dword [esp + 0x190]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
call eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], ecx
test edx, edx
jne 0x5ee563
mov edx, dword [esp + 0x54]
cmp edx, 4
jb 0x5ee5a9
lea eax, [0x63a780]
mov dword [esp], eax
mov ecx, dword [esp + 0x18c]
mov dword [esp + 4], ecx
call fcn.00408f30
mov eax, dword [esp + 8]
mov dword [esp], eax
mov eax, dword [esp + 0x190]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 4
mov edx, dword [esp + 0x54]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 4
call fcn.00472140
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], ecx
test edx, edx
jne 0x5ee557
mov ecx, dword [esp + 0x50]
test ecx, ecx
jbe 0x5ee5a2
mov edx, dword [esp + 0xf0]
movzx ebx, byte [edx]
cmp bl, 5
jne 0x5ee49a
cmp ecx, 1
jbe 0x5ee598
movzx ebx, byte [edx + 1]
test ebx, ebx
jne 0x5ee3e1
cmp ecx, 2
jbe 0x5ee58e
movzx eax, byte [edx + 2]
test al, al
jne 0x5ee38a
lea eax, [0x647c80]
mov dword [esp], eax
call fcn.0040b470
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x50]
cmp ecx, 3
jbe 0x5ee584
mov dword [esp + 0xf8], eax
mov ecx, dword [esp + 0xf0]
movzx edx, byte [ecx + 3]
cmp dl, 1
je 0x5ee16d
cmp dl, 3
je 0x5ee0c1
cmp dl, 4
jne 0x5ee004
lea eax, [0x634640]
mov dword [esp], eax
mov dword [esp + 4], 0x10
mov dword [esp + 8], 0x10
call fcn.004483e0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xf8]
mov dword [ecx + 0xc], 0x10
mov dword [ecx + 0x10], 0x10
mov edx, dword [0x84d450]
test edx, edx
jne 0x5edff2
mov dword [ecx + 8], eax
jmp 0x5edffa
lea edi, [ecx + 8]
call fcn.0045f3a0
mov ebx, 0x12
jmp 0x5ee1c0
movzx eax, dl
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0xa
call fcn.0046c7a0
mov dword [esp], 0
lea eax, [0x668ac8]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x15
call fcn.0044b990
mov eax, dword [esp + 0x14]
mov dword [esp + 0xd4], eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x34], ecx
lea edx, [0x63c100]
mov dword [esp], edx
call fcn.0040b470
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x34]
mov dword [edi + 4], eax
mov eax, dword [0x84d450]
test eax, eax
jne 0x5ee07f
mov eax, dword [esp + 0xd4]
mov dword [edi], eax
jmp 0x5ee08b
mov eax, dword [esp + 0xd4]
call fcn.0045f3a0
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1a0], 0
lea eax, [0x6cf2f4]
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], edi
call fcn.004337c0
add esp, 0x17c
ret
lea eax, [0x63a780]
mov dword [esp], eax
mov ecx, dword [esp + 0x18c]
mov dword [esp + 4], ecx
call fcn.00408f30
mov eax, dword [esp + 8]
mov dword [esp], eax
mov eax, dword [esp + 0x190]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
mov edx, dword [esp + 0x54]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 1
call fcn.00472140
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
test eax, eax
jne 0x5ee13d
mov eax, dword [esp + 0xf0]
movzx ebx, byte [eax]
add ebx, 2
mov ecx, dword [esp + 0xf8]
jmp 0x5ee1c0
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1a0], 0
mov dword [esp + 0x1a4], ecx
mov dword [esp + 0x1a8], edx
call fcn.004337c0
add esp, 0x17c
ret
lea eax, [0x634640]
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 4
call fcn.004483e0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xf8]
mov dword [ecx + 0xc], 4
mov dword [ecx + 0x10], 4
mov edx, dword [0x84d450]
test edx, edx
jne 0x5ee1b3
mov dword [ecx + 8], eax
jmp 0x5ee1bb
lea edi, [ecx + 8]
call fcn.0045f3a0
mov ebx, 6
mov dword [esp + 0x48], ebx
mov edx, dword [esp + 0x54]
cmp ebx, edx
jg 0x5ee1db
ja 0x5ee57d
mov eax, dword [esp + 0xf0]
jmp 0x5ee1fb
lea eax, [0x634640]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.004483e0
mov edx, dword [esp + 0xc]
mov eax, edx
mov edx, dword [esp + 0x48]
mov dword [esp + 0x54], edx
mov dword [esp + 0xf0], eax
lea ecx, [0x63a780]
mov dword [esp], ecx
mov ecx, dword [esp + 0x18c]
mov dword [esp + 4], ecx
call fcn.00408f30
mov eax, dword [esp + 8]
mov dword [esp], eax
mov eax, dword [esp + 0x190]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xf0]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x48]
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
call fcn.00472140
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], ecx
test edx, edx
jne 0x5ee37e
mov ebx, dword [esp + 0xf8]
mov ebp, dword [ebx + 8]
mov esi, dword [ebx + 0xc]
test ebp, ebp
je 0x5ee2cb
mov ecx, dword [esp + 0x48]
cmp ecx, esi
jge 0x5ee294
mov eax, ecx
jmp 0x5ee298
mov eax, ecx
mov ecx, esi
mov edx, dword [esp + 0xf0]
cmp edx, ebp
je 0x5ee32b
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0045fd30
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0xf0]
mov ebx, dword [esp + 0xf8]
jmp 0x5ee32b
mov eax, dword [esp + 0x48]
lea ecx, [eax - 2]
mov edx, dword [esp + 0x54]
cmp edx, ecx
jb 0x5ee578
mov dword [esp], 0
mov eax, dword [esp + 0xf0]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0044bc40
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0xf8]
mov dword [edi + 4], ecx
mov ecx, dword [0x84d450]
test ecx, ecx
jne 0x5ee319
mov dword [edi], eax
jmp 0x5ee31e
call fcn.0045f3a0
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0xf0]
mov ebx, edi
lea ebp, [eax - 2]
cmp eax, ebp
jbe 0x5ee56f
movzx ecx, byte [eax + edx - 2]
shl ecx, 8
movzx eax, byte [eax + edx - 1]
or ecx, eax
mov dword [ebx + 0x14], ecx
lea eax, [0x6cffa0]
mov dword [esp + 0x19c], eax
mov dword [esp + 0x1a0], ebx
mov dword [esp + 0x1a4], 0
mov dword [esp + 0x1a8], 0
call fcn.004337c0
add esp, 0x17c
ret
call fcn.004337c0
add esp, 0x17c
ret
lea eax, [0x63c100]
mov dword [esp], eax
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x17
lea ecx, [0x669aff]
mov dword [eax], ecx
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1a0], 0
lea ecx, [0x6cf2f4]
mov dword [esp + 0x1a4], ecx
mov dword [esp + 0x1a8], eax
call fcn.004337c0
add esp, 0x17c
ret
mov dword [esp], ebx
call fcn.005eed70
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], 0
lea edx, [0x665706]
mov dword [esp + 4], edx
mov dword [esp + 8], 0xe
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.0044b990
mov eax, dword [esp + 0x14]
mov dword [esp + 0xd8], eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x38], ecx
lea edx, [0x63c100]
mov dword [esp], edx
call fcn.0040b470
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x38]
mov dword [edi + 4], eax
mov eax, dword [0x84d450]
test eax, eax
jne 0x5ee458
mov eax, dword [esp + 0xd8]
mov dword [edi], eax
jmp 0x5ee464
mov eax, dword [esp + 0xd8]
call fcn.0045f3a0
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1a0], 0
lea eax, [0x6cf2f4]
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], edi
call fcn.004337c0
add esp, 0x17c
ret
movzx eax, bl
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0xa
call fcn.0046c7a0
mov dword [esp], 0
lea eax, [0x66c50c]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x1c
call fcn.0044b990
mov eax, dword [esp + 0x14]
mov dword [esp + 0xdc], eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x3c], ecx
lea edx, [0x63c100]
mov dword [esp], edx
call fcn.0040b470
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x3c]
mov dword [edi + 4], eax
mov eax, dword [0x84d450]
test eax, eax
jne 0x5ee515
mov eax, dword [esp + 0xdc]
mov dword [edi], eax
jmp 0x5ee521
mov eax, dword [esp + 0xdc]
call fcn.0045f3a0
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1a0], 0
lea eax, [0x6cf2f4]
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], edi
call fcn.004337c0
add esp, 0x17c
ret
call fcn.004337c0
add esp, 0x17c
ret
call fcn.004337c0
add esp, 0x17c
ret
mov ecx, eax
mov eax, ebp
call fcn.0045f420
call fcn.0045f460
mov ecx, ebx
call fcn.0045f460
mov eax, 3
call fcn.0045f420
mov eax, 2
call fcn.0045f420
mov eax, 1
call fcn.0045f420
xor eax, eax
call fcn.0045f420
mov ecx, 4
call fcn.0045f460
test eax, eax
je 0x5ee69f
mov dword [esp + 0x30], ecx
mov dword [esp + 0xd0], eax
mov edx, dword [esp + 0x50]
lea ebx, [edx + 1]
mov ebp, dword [esp + 0x54]
cmp ebp, ebx
jb 0x5ee5de
mov esi, dword [esp + 0xf0]
jmp 0x5ee625
lea eax, [0x634640]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.004484a0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
lea ebx, [eax + 1]
mov eax, dword [esp + 0xd0]
mov ebp, ecx
mov esi, edx
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x50]
mov byte [esi + edx], 1
lea edx, [ecx + ebx]
mov dword [esp + 0x50], edx
cmp ebp, edx
jae 0x5ee66d
mov dword [esp + 0x6c], ebx
lea eax, [0x634640]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.004484a0
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0x30]
mov ebx, dword [esp + 0x6c]
mov dword [esp + 0xf0], esi
mov dword [esp + 0x54], ebp
lea edx, [esi + ebx]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0045fd30
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0xf0]
jmp 0x5ee843
cmp ebx, 4
jne 0x5ee753
movzx eax, byte [edx]
movzx ecx, byte [edx + 1]
movzx ebx, byte [edx + 2]
movzx edx, byte [edx + 3]
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov ebp, dword [0x820778]
mov esi, dword [0x82077c]
cmp esi, 0x10
jl 0x5ee6f0
mov esi, 0x10
lea edi, [esp + 0x74]
cmp ebp, edi
je 0x5ee72c
mov byte [esp + 0x2b], al
mov byte [esp + 0x2a], cl
mov byte [esp + 0x29], bl
mov byte [esp + 0x28], dl
mov dword [esp], edi
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0045fd30
movzx eax, byte [esp + 0x2b]
movzx ecx, byte [esp + 0x2a]
movzx edx, byte [esp + 0x28]
movzx ebx, byte [esp + 0x29]
mov byte [esp + 0x80], al
mov byte [esp + 0x81], cl
mov byte [esp + 0x82], bl
mov byte [esp + 0x83], dl
lea edx, [esp + 0x74]
mov ebx, 0x10
jmp 0x5ee75c
cmp ebx, 0x10
je 0x5ee75c
xor edx, edx
xor ebx, ebx
test edx, edx
je 0x5ee84e
mov dword [esp + 0x2c], ebx
mov dword [esp + 0xcc], edx
mov eax, dword [esp + 0x50]
lea ecx, [eax + 1]
mov ebp, dword [esp + 0x54]
cmp ebp, ecx
jb 0x5ee787
mov esi, dword [esp + 0xf0]
jmp 0x5ee7ce
lea edx, [0x634640]
mov dword [esp], edx
mov ebx, dword [esp + 0xf0]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ecx
call fcn.004484a0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
inc eax
mov ebx, dword [esp + 0x2c]
mov ebp, ecx
mov esi, edx
mov edx, dword [esp + 0xcc]
mov ecx, eax
mov eax, dword [esp + 0x50]
mov byte [esi + eax], 4
lea eax, [ebx + ecx]
mov dword [esp + 0x50], eax
cmp ebp, eax
jae 0x5ee816
mov dword [esp + 0x6c], ecx
lea edx, [0x634640]
mov dword [esp], edx
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], eax
call fcn.004484a0
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0xcc]
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x54], ebp
mov dword [esp + 0xf0], esi
lea eax, [esi + ecx]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call fcn.0045fd30
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0xf0]
mov ebx, eax
mov eax, ecx
mov ecx, ebx
jmp 0x5eddf2
lea eax, [0x63c100]
mov dword [esp], eax
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x14
lea ecx, [0x668303]
mov dword [eax], ecx
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1a0], 0
lea ecx, [0x6cf2f4]
mov dword [esp + 0x1a4], ecx
mov dword [esp + 0x1a8], eax
call fcn.004337c0
add esp, 0x17c
ret
mov edx, eax
mov ebx, ecx
xor eax, eax
xor ecx, ecx
jmp 0x5ee5b3
inc edx
cmp edx, 0xa
jge 0x5ee8c4
jae 0x5ee8e3
movzx ebx, byte [eax + edx]
test bl, bl
je 0x5ee8b2
jmp 0x5ee8a5
cmp byte [eax + 0xa], 0xff
jne 0x5ee8a5
cmp byte [eax + 0xb], 0xff
jne 0x5ee8a5
lea ebp, [eax + 0xc]
mov edx, eax
mov ebx, ecx
mov eax, ebp
mov ecx, 4
jmp 0x5ee5b3
mov eax, edx
mov ecx, 0xa
call fcn.0045f420
mov eax, 1
call fcn.0045f420
xor eax, eax
call fcn.0045f420
mov ecx, 2
call fcn.0045f460
mov byte [eax + edi], bl
inc edx
mov ebx, dword [esp + 0xf4]
mov ebx, dword [esp + 0x180]
mov edi, esi
mov esi, dword [esp + 0xf4]
cmp edx, ebp
jge 0x5ee980
mov ebx, dword [esi + edx*4]
lea esi, [edi + 1]
cmp ecx, esi
jae 0x5ee90a
mov dword [esp + 0x60], edx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], edi
lea edx, [0x634640]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], edi
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], esi
call fcn.004484a0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
lea esi, [ecx + 1]
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x6c]
mov edi, dword [esp + 0x5c]
mov ecx, edx
mov edx, dword [esp + 0x60]
jmp 0x5ee90a
mov ebp, edi
jmp 0x5ed8ee
call fcn.0045df90
jmp fcn.005ed300