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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x74]
cmp eax, dword [ecx + 8]
jbe 0x5f669e
sub esp, 0xf4
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
mov eax, dword [esp + 0xf8]
mov dword [esp], eax
mov ecx, dword [esp + 0xfc]
mov dword [esp + 4], ecx
lea edx, [0x66c177]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
call fcn.004d5d20
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
movzx edx, byte [esp + 0x20]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
test dl, dl
je 0x5f5343
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x98], eax
mov dword [esp + 0x48], ebx
mov dword [esp + 0x74], ecx
test ebx, ebx
jne 0x5f5030
xor edx, edx
jmp 0x5f5064
mov dword [esp], eax
mov dword [esp + 4], ebx
lea ecx, [0x68868c]
mov dword [esp + 8], ecx
call fcn.004d4df0
mov eax, dword [esp + 0xc]
test eax, eax
setl al
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x2c]
mov edx, eax
mov eax, dword [esp + 0x98]
test dl, dl
je 0x5f5326
test ebp, ebp
jne 0x5f5074
xor edx, edx
jmp 0x5f50a8
mov dword [esp], ecx
mov dword [esp + 4], ebp
lea eax, [0x68868c]
mov dword [esp + 8], eax
call fcn.004d4df0
mov eax, dword [esp + 0xc]
test eax, eax
setl al
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x2c]
mov edx, eax
mov eax, dword [esp + 0x98]
test dl, dl
je 0x5f5326
mov dword [esp], eax
mov dword [esp + 4], ebx
call fcn.004d47a0
nop
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x5f50e0
lea ebx, [esp + 0xb4]
cmp edx, ebx
je 0x5f50f5
jmp 0x5f6685
lea edx, [esp + 0xb4]
mov dword [esp + 0xb4], edx
lea ebx, [esp + 0xb4]
mov edx, dword [esp + 0xbc]
lea ebp, [edx + eax]
mov esi, dword [esp + 0xc0]
mov edi, dword [esp + 0xb8]
cmp esi, ebp
jae 0x5f5159
mov dword [esp + 0x3c], eax
mov dword [esp + 0x90], ecx
mov dword [esp + 0x6c], edx
mov dword [esp], edi
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
lea ecx, [0x638820]
mov dword [esp + 0x10], ecx
call fcn.0044aa20
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x6c], esi
mov dword [esp + 0x68], ebp
mov dword [esp + 0xb0], edi
add edx, edi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00464010
mov eax, dword [esp + 0x68]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
nop
nop
mov eax, dword [esp + 0xb4]
test eax, eax
je 0x5f51bb
lea ecx, [esp + 0xb4]
cmp eax, ecx
je 0x5f51d0
jmp 0x5f666d
lea eax, [esp + 0xb4]
mov dword [esp + 0xb4], eax
lea ecx, [esp + 0xb4]
mov eax, dword [esp + 0xbc]
inc eax
mov edx, dword [esp + 0xb8]
mov ebx, dword [esp + 0xc0]
cmp ebx, eax
jae 0x5f5226
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xc0], ecx
mov dword [esp + 0xb8], edx
mov dword [esp + 0xbc], eax
mov byte [eax + edx - 1], 0x2f
mov eax, dword [esp + 0x74]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
call fcn.004d47a0
nop
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x5f526a
lea ebx, [esp + 0xb4]
cmp edx, ebx
je 0x5f5278
jmp 0x5f6655
lea edx, [esp + 0xb4]
mov dword [esp + 0xb4], edx
mov edx, dword [esp + 0xbc]
lea ebx, [edx + eax]
mov ebp, dword [esp + 0xc0]
mov esi, dword [esp + 0xb8]
cmp ebp, ebx
jae 0x5f52dc
mov dword [esp + 0x38], eax
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x6c], edx
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
lea ecx, [0x638820]
mov dword [esp + 0x10], ecx
call fcn.0044aa20
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x68], ebp
mov dword [esp + 0xb0], esi
add edx, esi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00464010
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
jmp 0x5f5470
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
add esp, 0xf4
ret
mov eax, dword [esp + 0xfc]
test eax, eax
je 0x5f54eb
mov ecx, dword [esp + 0xf8]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x68868c]
mov dword [esp + 8], edx
call fcn.004d4df0
mov eax, dword [esp + 0xc]
test eax, eax
jge 0x5f54eb
mov eax, dword [esp + 0xf8]
mov dword [esp], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 4], eax
call fcn.004d47a0
nop
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x5f53b9
lea ebx, [esp + 0xb4]
cmp edx, ebx
je 0x5f53c7
jmp 0x5f663d
lea edx, [esp + 0xb4]
mov dword [esp + 0xb4], edx
mov edx, dword [esp + 0xbc]
lea ebx, [edx + eax]
mov ebp, dword [esp + 0xc0]
mov esi, dword [esp + 0xb8]
cmp ebp, ebx
jae 0x5f542b
mov dword [esp + 0x40], eax
mov dword [esp + 0x6c], edx
mov dword [esp + 0x94], ecx
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
lea ecx, [0x638820]
mov dword [esp + 0x10], ecx
call fcn.0044aa20
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x68], ebx
mov dword [esp + 0xb0], esi
add edx, esi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00464010
mov eax, dword [esp + 0x68]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x100]
test eax, eax
je 0x5f547f
mov ecx, dword [eax]
jmp 0x5f5481
xor ecx, ecx
mov dword [esp + 0x54], ecx
lea eax, [0x638660]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], ecx
call fcn.0044a8a0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xac], eax
lea edi, [esp + 0xc4]
xor eax, eax
call fcn.00463914
lea eax, [0x63adc0]
mov dword [esp], eax
mov ecx, dword [esp + 0x100]
mov dword [esp + 4], ecx
lea edx, [esp + 0xc4]
mov dword [esp + 8], edx
call fcn.0040d940
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0xac]
xor edx, edx
jmp 0x5f5526
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
add esp, 0xf4
ret
lea eax, [esp + 0xc4]
mov dword [esp], eax
call fcn.0040db70
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0xc4]
test ebx, ebx
je 0x5f55b9
mov ebp, dword [ebx]
mov ebx, dword [ebx + 4]
inc edx
cmp eax, edx
jae 0x5f5583
mov dword [esp + 0x5c], ebx
mov dword [esp + 0xa4], ebp
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x638660]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x5c]
mov ebp, dword [esp + 0xa4]
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], eax
lea esi, [ecx + edx*8 - 4]
mov dword [esi], ebx
lea edi, [ecx + edx*8 - 8]
mov ebx, dword [0x893c80]
test ebx, ebx
jne 0x5f55ad
mov dword [edi], ebp
jmp 0x5f5508
mov eax, ebp
call fcn.00463680
jmp 0x5f5508
mov dword [esp + 0x50], edx
mov dword [esp + 0xa8], ecx
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00409680
mov eax, dword [esp + 0xc]
lea ecx, [0x6d0158]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0048f120
xor eax, eax
jmp 0x5f55f5
mov ecx, dword [esp + 0x6c]
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x50]
cmp eax, ecx
jge 0x5f5c70
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0xa8]
lea edx, [ecx + eax*8]
mov ebx, dword [edx + 4]
mov dword [esp + 0x58], ebx
mov edx, dword [edx]
mov dword [esp + 0xa0], edx
lea ebp, [0x63adc0]
mov dword [esp], ebp
mov esi, dword [esp + 0x100]
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.0040fc90
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
mov eax, dword [eax]
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x5f5665
lea ebx, [esp + 0xb4]
cmp edx, ebx
je 0x5f567a
jmp 0x5f6625
lea edx, [esp + 0xb4]
mov dword [esp + 0xb4], edx
lea ebx, [esp + 0xb4]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0xbc]
inc edx
mov ebp, dword [esp + 0xb8]
mov esi, dword [esp + 0xc0]
cmp esi, edx
jae 0x5f56e7
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], ebp
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x28]
lea ebx, [esp + 0xb4]
mov dword [esp + 0xbc], edx
mov byte [edx + ebp - 1], 0x3b
nop
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x5f5709
cmp edx, ebx
je 0x5f5710
jmp 0x5f660d
mov dword [esp + 0xb4], ebx
mov edx, dword [esp + 0xbc]
inc edx
mov ebp, dword [esp + 0xb8]
mov esi, dword [esp + 0xc0]
cmp esi, edx
jae 0x5f5775
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], ebp
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x28]
lea ebx, [esp + 0xb4]
mov dword [esp + 0xbc], edx
mov byte [edx + ebp - 1], 0x20
mov edx, dword [esp + 0x58]
test edx, edx
je 0x5f5c53
mov eax, dword [esp + 0xa0]
mov dword [esp], eax
mov dword [esp + 4], edx
lea ecx, [0x68868c]
mov dword [esp + 8], ecx
call fcn.004d4df0
mov eax, dword [esp + 0xc]
test eax, eax
jge 0x5f5c53
mov eax, dword [esp + 0xa0]
mov dword [esp], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 4], eax
call fcn.004d47a0
nop
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x5f57f1
lea ebx, [esp + 0xb4]
cmp edx, ebx
je 0x5f5806
jmp 0x5f65f5
lea edx, [esp + 0xb4]
mov dword [esp + 0xb4], edx
lea ebx, [esp + 0xb4]
mov edx, dword [esp + 0xbc]
lea ebp, [eax + edx]
mov esi, dword [esp + 0xc0]
mov edi, dword [esp + 0xb8]
cmp esi, ebp
jae 0x5f586a
mov dword [esp + 0x68], edx
mov dword [esp + 0x88], ecx
mov dword [esp + 0x34], eax
mov dword [esp], edi
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
lea ecx, [0x638820]
mov dword [esp + 0x10], ecx
call fcn.0044aa20
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x68]
mov dword [esp + 0x68], esi
mov dword [esp + 0xb0], edi
mov dword [esp + 0x64], ebp
add edx, edi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00464010
mov eax, dword [esp + 0x64]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
nop
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x70]
xor edx, edx
jmp 0x5f5cab
cmp edx, eax
jge 0x5f5970
nop
nop
mov ebx, dword [esp + 0xb4]
test ebx, ebx
je 0x5f58e4
lea ebp, [esp + 0xb4]
cmp ebx, ebp
je 0x5f58f9
jmp 0x5f65dd
lea ebx, [esp + 0xb4]
mov dword [esp + 0xb4], ebx
lea ebp, [esp + 0xb4]
mov ebx, dword [esp + 0xbc]
inc ebx
mov esi, dword [esp + 0xb8]
mov edi, dword [esp + 0xc0]
cmp edi, ebx
jae 0x5f5962
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov dword [esp + 0xc], 1
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x68]
lea ebp, [esp + 0xb4]
mov dword [esp + 0xbc], ebx
mov byte [ebx + esi - 1], 0x2a
jmp 0x5f5977
lea ebp, [esp + 0xb4]
nop
mov ebx, dword [esp + 0xb4]
test ebx, ebx
je 0x5f598c
cmp ebx, ebp
je 0x5f5993
jmp 0x5f65c5
mov dword [esp + 0xb4], ebp
mov ebx, dword [esp + 0xbc]
inc ebx
mov esi, dword [esp + 0xb8]
mov edi, dword [esp + 0xc0]
cmp edi, ebx
jb 0x5f59b1
cmp edx, eax
jmp 0x5f5a04
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov dword [esp + 0xc], 1
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], esi
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x28]
cmp eax, ecx
mov eax, ecx
mov ecx, dword [esp + 0x70]
lea ebp, [esp + 0xb4]
mov dword [esp + 0xbc], ebx
mov byte [ebx + esi - 1], 0x3d
jge 0x5f5ac0
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x5f5a2b
cmp edx, ebp
je 0x5f5a32
jmp 0x5f65ad
mov dword [esp + 0xb4], ebp
mov edx, dword [esp + 0xbc]
lea ebx, [edx + 7]
mov esi, dword [esp + 0xc0]
mov edi, dword [esp + 0xb8]
cmp esi, ebx
jae 0x5f5a93
mov dword [esp + 0x68], edx
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 7
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x68]
lea ebp, [esp + 0xb4]
mov dword [edi + edx], 0x2d667475
mov dword [edi + edx + 3], 0x2727382d
mov dword [esp + 0xbc], ebx
mov dword [esp + 0xc0], esi
mov dword [esp + 0xb8], edi
xor edx, edx
xor ebx, ebx
jmp 0x5f60b6
test eax, eax
jne 0x5f5ac8
xor edx, edx
jmp 0x5f5af8
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x68868c]
mov dword [esp + 8], edx
call fcn.004d4df0
mov eax, dword [esp + 0xc]
test eax, eax
setl al
mov ecx, dword [esp + 0x70]
lea ebp, [esp + 0xb4]
mov edx, eax
mov eax, dword [esp + 0x28]
test dl, dl
jne 0x5f5b96
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x5f5b15
cmp edx, ebp
je 0x5f5b1c
jmp 0x5f609d
mov dword [esp + 0xb4], ebp
mov edx, dword [esp + 0xbc]
inc edx
mov ebx, dword [esp + 0xb8]
mov esi, dword [esp + 0xc0]
cmp esi, edx
jae 0x5f5b81
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov ebx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], ebx
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x70]
lea ebp, [esp + 0xb4]
mov dword [esp + 0xbc], edx
mov byte [edx + ebx - 1], 0x22
xor edx, edx
xor ebx, ebx
jmp 0x5f5d17
nop
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x5f5bac
cmp edx, ebp
je 0x5f5bb3
jmp 0x5f5cfe
mov dword [esp + 0xb4], ebp
mov edx, dword [esp + 0xbc]
lea ebx, [eax + edx]
mov ebp, dword [esp + 0xc0]
mov esi, dword [esp + 0xb8]
cmp ebp, ebx
jae 0x5f5c09
mov dword [esp + 0x68], edx
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
lea ecx, [0x638820]
mov dword [esp + 0x10], ecx
call fcn.0044aa20
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x68]
mov dword [esp + 0x68], ebx
mov dword [esp + 0x64], ebp
mov dword [esp + 0xb0], esi
add edx, esi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00464010
mov eax, dword [esp + 0x68]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
jmp 0x5f55ee
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
add esp, 0xf4
ret
mov eax, dword [esp + 0xb8]
mov ecx, eax
neg eax
mov edx, dword [esp + 0xbc]
cmp edx, eax
ja 0x5f5c9b
mov dword [esp + 0x104], ecx
mov dword [esp + 0x108], edx
add esp, 0xf4
ret
test ecx, ecx
je 0x5f5ca4
call fcn.0045c920
call fcn.0045c960
mov edx, ebp
mov dword [esp + 0x68], edx
cmp edx, eax
jge 0x5f58c1
movzx ebx, byte [ecx + edx]
cmp ebx, 0x80
jge 0x5f5cc8
lea ebp, [edx + 1]
jmp 0x5f5cec
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.0045ca20
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x68]
lea esi, [ebx - 0x20]
cmp esi, 0x5e
jbe 0x5f5ca9
cmp ebx, 9
je 0x5f5ca9
jmp 0x5f58bf
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
inc edx
cmp edx, eax
jge 0x5f5ebf
jae 0x5f6094
movzx esi, byte [edx + ecx]
xchg esi, eax
cmp al, 0x22
xchg esi, eax
je 0x5f5d37
xchg esi, eax
cmp al, 0x5c
xchg esi, eax
jne 0x5f5d16
cmp ebx, edx
ja 0x5f608b
mov esi, edx
sub edx, ebx
mov edi, edx
neg edx
sar edx, 0x1f
and ebx, edx
lea edx, [ebx + ecx]
nop
mov ebx, dword [esp + 0xb4]
test ebx, ebx
je 0x5f5d64
cmp ebx, ebp
je 0x5f5d6b
jmp 0x5f6073
mov dword [esp + 0xb4], ebp
mov dword [esp + 0x68], esi
mov ebx, dword [esp + 0xbc]
lea ecx, [edi + ebx]
mov eax, dword [esp + 0xc0]
mov esi, dword [esp + 0xb8]
cmp eax, ecx
jae 0x5f5dcd
mov dword [esp + 0x64], ebx
mov dword [esp + 0x60], edi
mov dword [esp + 0x7c], edx
mov dword [esp], esi
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], edi
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov esi, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x64]
mov edi, dword [esp + 0x60]
mov dword [esp + 0x64], ecx
mov dword [esp + 0x60], eax
mov dword [esp + 0xb0], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], edi
call fcn.00464010
mov eax, dword [esp + 0x64]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
nop
mov eax, dword [esp + 0xb4]
test eax, eax
je 0x5f5e2e
lea edx, [esp + 0xb4]
cmp eax, edx
je 0x5f5e3c
jmp 0x5f605b
lea edx, [esp + 0xb4]
mov dword [esp + 0xb4], edx
mov ebx, dword [esp + 0xbc]
inc ebx
mov ebp, dword [esp + 0xb8]
mov esi, dword [esp + 0xc0]
cmp esi, ebx
jae 0x5f5e99
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], ebp
lea edx, [esp + 0xb4]
mov dword [esp + 0xbc], ebx
mov byte [ebx + ebp - 1], 0x5c
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x68]
lea ebp, [esp + 0xb4]
mov ebx, edx
jmp 0x5f5d16
cmp ebx, eax
ja 0x5f6052
sub eax, ebx
mov edx, eax
neg eax
sar eax, 0x1f
and ebx, eax
lea eax, [ebx + ecx]
nop
mov ecx, dword [esp + 0xb4]
test ecx, ecx
je 0x5f5eea
cmp ecx, ebp
je 0x5f5ef1
jmp 0x5f603a
mov dword [esp + 0xb4], ebp
mov ecx, dword [esp + 0xbc]
lea ebx, [edx + ecx]
mov esi, dword [esp + 0xc0]
mov edi, dword [esp + 0xb8]
cmp esi, ebx
jae 0x5f5f4f
mov dword [esp + 0x68], ecx
mov dword [esp + 0x64], edx
mov dword [esp + 0x78], eax
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x64]
mov dword [esp + 0x68], esi
mov dword [esp + 0xb0], edi
mov dword [esp + 0x64], ebx
add ecx, edi
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.00464010
mov eax, dword [esp + 0x64]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
nop
mov eax, dword [esp + 0xb4]
test eax, eax
je 0x5f5fad
lea ecx, [esp + 0xb4]
cmp eax, ecx
je 0x5f5fbb
jmp 0x5f6022
lea eax, [esp + 0xb4]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xbc]
inc eax
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0xc0]
cmp edx, eax
jae 0x5f6011
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0xc0], edx
mov dword [esp + 0xb8], ecx
mov dword [esp + 0xbc], eax
mov byte [eax + ecx - 1], 0x22
jmp 0x5f55ee
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
mov ecx, eax
mov eax, ebx
call fcn.00463760
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
mov eax, ebx
mov ecx, edx
call fcn.00463760
mov ecx, eax
mov eax, edx
call fcn.00463700
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
inc edx
cmp edx, eax
jge 0x5f643a
jae 0x5f65a4
mov dword [esp + 0x4c], edx
movzx esi, byte [ecx + edx]
xchg esi, eax
mov byte [esp + 0x25], al
xchg esi, eax
lea edi, [esi - 0x21]
xchg edi, eax
cmp al, 0x5e
xchg edi, eax
jb 0x5f60e3
mov edi, 1
jmp 0x5f6157
xchg esi, eax
cmp al, 0x2a
xchg esi, eax
jne 0x5f60f1
mov edi, 1
jmp 0x5f6157
xchg esi, eax
cmp al, 0x27
xchg esi, eax
jne 0x5f60ff
mov edi, 1
jmp 0x5f6157
xchg esi, eax
cmp al, 0x25
xchg esi, eax
jne 0x5f610d
mov edi, 1
jmp 0x5f6157
mov dword [esp + 0x44], ebx
lea eax, [0x670673]
mov dword [esp], eax
mov dword [esp + 4], 0xf
xchg esi, eax
movzx ecx, al
xchg esi, eax
mov dword [esp + 8], ecx
call fcn.004d36d0
mov eax, dword [esp + 0xc]
test eax, eax
setge al
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x44]
lea ebp, [esp + 0xb4]
movzx esi, byte [esp + 0x25]
mov edi, eax
mov eax, dword [esp + 0x28]
xchg edi, eax
test al, al
xchg edi, eax
je 0x5f60b5
cmp ebx, edx
ja 0x5f659b
mov edi, edx
sub edx, ebx
mov dword [esp + 0x30], edx
neg edx
sar edx, 0x1f
and ebx, edx
lea edx, [ecx + ebx]
nop
mov ebx, dword [esp + 0xb4]
test ebx, ebx
je 0x5f6190
cmp ebx, ebp
je 0x5f6197
jmp 0x5f6583
mov dword [esp + 0xb4], ebp
mov ebx, dword [esp + 0xbc]
mov ecx, dword [esp + 0x30]
lea eax, [ebx + ecx]
mov edi, dword [esp + 0xc0]
mov esi, dword [esp + 0xb8]
cmp edi, eax
jae 0x5f61fb
mov dword [esp + 0x84], edx
mov dword [esp + 0x68], ebx
mov dword [esp], esi
mov dword [esp + 4], eax
mov dword [esp + 8], edi
mov dword [esp + 0xc], ecx
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x84]
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], edi
mov dword [esp + 0xb0], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00464010
mov eax, dword [esp + 0x68]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
nop
nop
mov eax, dword [esp + 0xb4]
test eax, eax
je 0x5f625d
lea edx, [esp + 0xb4]
cmp eax, edx
je 0x5f626b
jmp 0x5f656b
lea edx, [esp + 0xb4]
mov dword [esp + 0xb4], edx
mov ebx, dword [esp + 0xbc]
inc ebx
mov ebp, dword [esp + 0xb8]
mov esi, dword [esp + 0xc0]
cmp esi, ebx
jae 0x5f62c8
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], ebp
lea edx, [esp + 0xb4]
mov dword [esp + 0xbc], ebx
mov byte [ebx + ebp - 1], 0x25
movzx ebx, byte [esp + 0x25]
mov ebp, ebx
shr bl, 4
movzx ebx, bl
lea esi, [0x670e09]
movzx ebx, byte [esi + ebx]
nop
mov edi, dword [esp + 0xb4]
test edi, edi
je 0x5f6300
cmp edi, edx
je 0x5f6307
jmp 0x5f6553
mov dword [esp + 0xb4], edx
mov edi, dword [esp + 0xbc]
inc edi
mov edx, dword [esp + 0xb8]
mov esi, dword [esp + 0xc0]
cmp esi, edi
jae 0x5f636b
mov byte [esp + 0x27], bl
mov dword [esp], edx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], edx
movzx ebx, byte [esp + 0x27]
movzx ebp, byte [esp + 0x25]
mov dword [esp + 0xbc], edi
mov byte [edi + edx - 1], bl
and ebp, 0xf
lea edx, [0x670e09]
movzx edx, byte [ebp + edx]
nop
mov ebx, dword [esp + 0xb4]
test ebx, ebx
je 0x5f63a0
lea ebp, [esp + 0xb4]
cmp ebx, ebp
je 0x5f63b5
jmp 0x5f653b
lea ebx, [esp + 0xb4]
mov dword [esp + 0xb4], ebx
lea ebp, [esp + 0xb4]
mov ebx, dword [esp + 0xbc]
inc ebx
mov esi, dword [esp + 0xb8]
mov edi, dword [esp + 0xc0]
cmp edi, ebx
jae 0x5f641b
mov byte [esp + 0x26], dl
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov dword [esp + 0xc], 1
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], esi
movzx edx, byte [esp + 0x26]
lea ebp, [esp + 0xb4]
mov dword [esp + 0xbc], ebx
mov byte [ebx + esi - 1], dl
mov edx, dword [esp + 0x4c]
lea ebx, [edx + 1]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x70]
jmp 0x5f60b5
cmp ebx, eax
ja 0x5f6532
sub eax, ebx
mov edx, eax
neg eax
sar eax, 0x1f
and ebx, eax
lea eax, [ecx + ebx]
nop
mov ecx, dword [esp + 0xb4]
test ecx, ecx
je 0x5f6465
cmp ecx, ebp
je 0x5f646c
jmp 0x5f651a
mov dword [esp + 0xb4], ebp
mov ecx, dword [esp + 0xbc]
lea ebx, [edx + ecx]
mov ebp, dword [esp + 0xc0]
mov esi, dword [esp + 0xb8]
cmp ebp, ebx
jae 0x5f64d0
mov dword [esp + 0x68], ecx
mov dword [esp + 0x64], edx
mov dword [esp + 0x80], eax
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edx
lea eax, [0x638820]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x64]
mov dword [esp + 0x68], ebx
mov dword [esp + 0x64], ebp
mov dword [esp + 0xb0], esi
add ecx, esi
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.00464010
mov eax, dword [esp + 0x68]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
jmp 0x5f55ee
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
mov ecx, eax
mov eax, ebx
call fcn.00463760
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
mov eax, ebx
mov ecx, edx
call fcn.00463760
mov ecx, eax
mov eax, edx
call fcn.00463700
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
lea eax, [0x638660]
mov dword [esp], eax
lea eax, [0x6cee70]
mov dword [esp + 4], eax
call fcn.00435bb0
nop
call fcn.00462270
jmp fcn.005f4f80