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

Disassembly:
mov ecx, dword [0x8602c0]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x64]
cmp eax, dword [ecx + 8]
jbe 0x4d0ca7
sub esp, 0xe4
mov eax, dword [esp + 0xfc]
test eax, eax
jle 0x4ceecb
mov ecx, dword [esp + 0xf4]
test ecx, ecx
je 0x4ceed2
test ecx, 0x60
jne 0x4ceed2
nop
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov edx, dword [esp + 0xf0]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov byte [esp + 0xc], 1
call fcn.00491470
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xe8]
mov dword [edx + 0xc], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4cee95
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [edx + 0x10]
mov dword [edi + 4], eax
mov dword [edx + 0x10], ecx
mov dword [esp], edx
mov eax, dword [esp + 0xf8]
mov dword [esp + 4], eax
call fcn.004cdf90
movzx eax, byte [esp + 8]
test al, al
jne 0x4ceec4
mov eax, dword [esp + 0xfc]
mov ecx, dword [esp + 0xf4]
jmp 0x4ceed2
add esp, 0xe4
ret
mov ecx, dword [esp + 0xf4]
mov edx, dword [esp + 0xe8]
mov dword [edx + 0xc], 0
mov ebx, dword [0x860560]
test ebx, ebx
je 0x4ceef4
mov ebx, dword [edx + 0x10]
call fcn.00467c40
mov dword [edi], ebx
mov dword [edx + 0x10], 0
mov dword [edx + 0x1c], ecx
mov ebx, dword [0x860560]
test ebx, ebx
jne 0x4cef18
mov ebx, dword [esp + 0xec]
mov ebp, dword [esp + 0xf0]
jmp 0x4cef3c
call fcn.00467c70
mov ebx, dword [esp + 0xec]
mov dword [edi], ebx
mov ebp, dword [edx + 0x14]
mov dword [edi + 4], ebp
mov ebp, dword [esp + 0xf0]
mov dword [edi + 8], ebp
mov esi, dword [edx + 0x18]
mov dword [edi + 0xc], esi
mov dword [edx + 0x14], ebx
mov dword [edx + 0x18], ebp
mov esi, ecx
and ecx, 0x1f
nop
nop
cmp ecx, 0x10
jbe 0x4cfced
cmp ecx, 0x15
ja 0x4cf4a9
cmp ecx, 0x13
ja 0x4cef6e
cmp ecx, 0x11
je 0x4cf4bb
jmp 0x4cfc89
cmp ecx, 0x14
je 0x4cf252
movzx ecx, byte [edx + 0x2c]
test cl, cl
jne 0x4cf007
mov ecx, dword [edx + 8]
mov edi, dword [edx + 4]
lea eax, [edi + 4]
mov esi, dword [edx]
cmp ecx, eax
jae 0x4cefdd
mov dword [esp + 0x7c], edi
mov dword [esp], esi
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 4
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0xe8]
mov ebx, dword [esp + 0xec]
mov ebp, dword [esp + 0xf0]
mov edi, dword [esp + 0x7c]
mov dword [esi + edi], 0x5b70616d
mov dword [edx + 4], eax
mov dword [edx + 8], ecx
mov eax, dword [0x860560]
test eax, eax
je 0x4cf000
call fcn.00467c50
mov dword [edi], esi
mov eax, dword [edx]
mov dword [edi + 4], eax
mov dword [edx], esi
jmp 0x4cf1ac
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004933c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x80]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xe8]
mov edx, dword [ecx + 8]
mov ebx, dword [ecx + 4]
lea ebp, [eax + ebx]
nop
mov esi, dword [esp + 4]
mov edi, dword [ecx]
cmp edx, ebp
jae 0x4cf091
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x94], esi
mov dword [esp + 0x64], eax
mov dword [esp], edi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
lea ecx, [0x60dc80]
mov dword [esp + 0x10], ecx
call fcn.0044dbe0
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x64]
mov ebx, dword [esp + 0x7c]
mov esi, dword [esp + 0x94]
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ebp
mov dword [esp + 0xac], edi
lea ecx, [edi + ebx]
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], eax
call fcn.004685e0
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0xe8]
mov dword [ecx + 4], eax
mov edx, dword [esp + 0x7c]
mov dword [ecx + 8], edx
mov ebx, dword [0x860560]
test ebx, ebx
jne 0x4cf0db
mov ebx, dword [esp + 0xac]
jmp 0x4cf0ee
call fcn.00467c50
mov ebx, dword [esp + 0xac]
mov dword [edi], ebx
mov ebp, dword [ecx]
mov dword [edi + 4], ebp
mov dword [ecx], ebx
mov ebp, dword [esp + 0xf4]
test ebp, 0x200
je 0x4cf108
mov esi, dword [esp + 0xf0]
jmp 0x4cf12c
test ebp, 0x80
je 0x4cf11b
mov esi, dword [esp + 0xf0]
mov edi, dword [esi]
jmp 0x4cf124
mov esi, dword [esp + 0xf0]
mov edi, esi
test edi, edi
je 0x4cf1de
inc eax
nop
cmp edx, eax
jae 0x4cf19b
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4cf180
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov dword [ebx], ecx
mov ebp, dword [esp + 0xf4]
mov esi, dword [esp + 0xf0]
mov eax, edx
mov ebx, ecx
mov ecx, dword [esp + 0xe8]
mov dword [ecx + 4], eax
mov byte [eax + ebx - 1], 0x7b
mov ebx, dword [esp + 0xec]
mov ebp, esi
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov eax, dword [esp + 0xf4]
mov dword [esp + 8], eax
call fcn.004a0440
mov eax, dword [esp + 0xc]
mov dword [esp + 0x80], eax
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [esp + 0x7c], edx
xor ebx, ebx
jmp 0x4d0998
lea ebp, [eax + 5]
nop
cmp edx, ebp
jae 0x4cf221
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 5
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0xe8]
mov ebx, edi
mov dword [ebx + eax], 0x6c696e28
mov byte [ebx + eax + 4], 0x29
mov dword [ecx + 4], ebp
mov dword [ecx + 8], edx
mov eax, dword [0x860560]
test eax, eax
je 0x4cf249
call fcn.00467c50
mov dword [edi], ebx
mov eax, dword [ecx]
mov dword [edi + 4], eax
mov dword [ecx], ebx
add esp, 0xe4
ret
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.00490de0
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x4cf46a
mov eax, dword [esp + 0xe8]
movzx ecx, byte [eax + 0x2c]
test cl, cl
jne 0x4cf2fa
mov ecx, dword [eax + 4]
lea edx, [ecx + 5]
mov ebx, dword [eax + 8]
nop
mov ebp, dword [eax]
cmp ebx, edx
jae 0x4cf2ca
mov dword [esp + 0x7c], ecx
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 5
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0xe8]
mov ecx, dword [esp + 0x7c]
mov dword [ebp + ecx], 0x6c696e3c
mov byte [ebp + ecx + 4], 0x3e
mov dword [eax + 4], edx
mov dword [eax + 8], ebx
mov ecx, dword [0x860560]
test ecx, ecx
je 0x4cf2f3
call fcn.00467c50
mov dword [edi], ebp
mov ecx, dword [eax]
mov dword [edi + 4], ecx
mov dword [eax], ebp
jmp 0x4d0045
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov eax, dword [esp + 0xf0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xf4]
mov dword [esp + 8], eax
call fcn.004933c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x80]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xe8]
mov edx, dword [ecx + 8]
mov ebx, dword [ecx + 4]
lea ebp, [eax + ebx]
nop
mov esi, dword [esp + 4]
mov edi, dword [ecx]
cmp edx, ebp
jae 0x4cf399
mov dword [esp + 0x5c], eax
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x8c], esi
mov dword [esp], edi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
lea ecx, [0x60dc80]
mov dword [esp + 0x10], ecx
call fcn.0044dbe0
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x5c]
mov ebx, dword [esp + 0x7c]
mov esi, dword [esp + 0x8c]
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ebp
mov dword [esp + 0xac], edi
lea ecx, [edi + ebx]
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], eax
call fcn.004685e0
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0xe8]
mov dword [ecx + 4], eax
mov edx, dword [esp + 0x7c]
mov dword [ecx + 8], edx
mov ebx, dword [0x860560]
test ebx, ebx
jne 0x4cf3e3
mov ebx, dword [esp + 0xac]
jmp 0x4cf3f6
call fcn.00467c50
mov ebx, dword [esp + 0xac]
mov dword [edi], ebx
mov ebp, dword [ecx]
mov dword [edi + 4], ebp
mov dword [ecx], ebx
lea ebp, [eax + 5]
nop
cmp edx, ebp
jae 0x4cf43b
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 5
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0xe8]
mov ebx, edi
mov dword [ebx + eax], 0x6c696e28
mov byte [ebx + eax + 4], 0x29
mov dword [ecx + 4], ebp
mov dword [ecx + 8], edx
mov eax, dword [0x860560]
test eax, eax
je 0x4cf463
call fcn.00467c50
mov dword [edi], ebx
mov eax, dword [ecx]
mov dword [edi + 4], eax
mov dword [ecx], ebx
jmp 0x4d0045
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xe8]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xfc]
inc eax
mov dword [esp + 0x14], eax
call fcn.004cee00
jmp 0x4d0045
cmp ecx, 0x17
ja 0x4cfada
cmp ecx, 0x16
je 0x4cf95e
mov dword [esp + 0x74], ecx
mov edi, dword [esp + 0xf8]
cmp edi, 0x71
jg 0x4cf4da
cmp edi, 0x58
je 0x4cf4e8
cmp edi, 0x71
je 0x4cf4e8
jmp 0x4cf6a6
cmp edi, 0x73
je 0x4cf4e8
cmp edi, 0x78
jne 0x4cf6a6
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004933c0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x84], ecx
mov edx, dword [eax + 0x28]
mov dword [esp], ecx
call edx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov eax, dword [eax + 0x50]
mov dword [esp], ecx
call eax
cmp dword [esp + 4], 8
jne 0x4cf67f
mov eax, dword [esp + 0x74]
cmp eax, 0x17
je 0x4cf62d
mov eax, dword [esp + 0xf4]
test eax, 0x100
jne 0x4cf598
nop
mov ecx, dword [esp + 0xec]
mov dword [esp], ecx
mov edx, dword [esp + 0xf0]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00491950
mov eax, dword [esp + 0xc]
mov dword [esp + 0x3c], eax
lea ecx, [0x60dc80]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.0044da60
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa8], eax
xor ecx, ecx
jmp 0x4d0875
mov ecx, dword [esp + 0xec]
mov dword [esp], ecx
mov edx, dword [esp + 0xf0]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00491950
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xec]
mov dword [esp], ecx
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xf4]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], eax
call fcn.00493030
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
cmp dword [0x839c20], eax
jne 0x4cf608
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx + 8]
jmp 0x4d085a
mov edx, dword [esp + 0x1c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.0048fc50
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
jmp 0x4d085a
mov eax, dword [esp + 0xec]
cmp dword [0x839c20], eax
jne 0x4cf650
mov eax, dword [esp + 0xf0]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
jmp 0x4d07e9
mov dword [esp], eax
mov eax, dword [esp + 0xf0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xf4]
mov dword [esp + 8], eax
call fcn.0048fc50
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
jmp 0x4d07e9
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0xe8]
mov ebx, dword [esp + 0xec]
mov ebp, dword [esp + 0xf0]
mov esi, dword [esp + 0xf4]
mov edi, dword [esp + 0xf8]
movzx eax, byte [edx + 0x2c]
test al, al
jne 0x4cf742
mov eax, dword [edx + 8]
mov edi, dword [edx + 4]
inc edi
mov esi, dword [edx]
cmp eax, edi
jae 0x4cf72c
mov dword [esp], esi
mov dword [esp + 4], edi
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4cf70d
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov dword [ebx], ecx
mov ebx, dword [esp + 0xec]
mov ebp, dword [esp + 0xf0]
mov edi, edx
mov esi, ecx
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0xe8]
mov dword [edx + 4], edi
mov byte [edi + esi - 1], 0x5b
mov eax, dword [esp + 0xf4]
xor esi, esi
jmp 0x4d0692
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004933c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x80]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xe8]
mov edx, dword [ecx + 8]
mov ebx, dword [ecx + 4]
lea ebp, [eax + ebx]
nop
mov esi, dword [esp + 4]
mov edi, dword [ecx]
cmp edx, ebp
jae 0x4cf7cc
mov dword [esp + 0x88], esi
mov dword [esp + 0x58], eax
mov dword [esp + 0x7c], ebx
mov dword [esp], edi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
lea ecx, [0x60dc80]
mov dword [esp + 0x10], ecx
call fcn.0044dbe0
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x58]
mov ebx, dword [esp + 0x7c]
mov esi, dword [esp + 0x88]
mov dword [esp + 0xac], edi
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ebp
lea ecx, [edi + ebx]
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], eax
call fcn.004685e0
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0xe8]
mov dword [ecx + 4], eax
mov edx, dword [esp + 0x7c]
mov dword [ecx + 8], edx
mov ebx, dword [0x860560]
test ebx, ebx
jne 0x4cf816
mov ebx, dword [esp + 0xac]
jmp 0x4cf829
call fcn.00467c50
mov ebx, dword [esp + 0xac]
mov dword [edi], ebx
mov ebp, dword [ecx]
mov dword [edi + 4], ebp
mov dword [ecx], ebx
mov ebp, dword [esp + 0x74]
cmp ebp, 0x17
jne 0x4cf8b9
mov esi, dword [esp + 0xf0]
mov edi, dword [esi]
test edi, edi
jne 0x4cf8c0
lea ebp, [eax + 5]
nop
cmp edx, ebp
jae 0x4cf888
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 5
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0xe8]
mov ebx, edi
mov dword [ebx + eax], 0x6c696e28
mov byte [ebx + eax + 4], 0x29
mov dword [ecx + 4], ebp
mov dword [ecx + 8], edx
mov eax, dword [0x860560]
test eax, eax
je 0x4cf8b0
call fcn.00467c50
mov dword [edi], ebx
mov eax, dword [ecx]
mov dword [edi + 4], eax
mov dword [ecx], ebx
add esp, 0xe4
ret
mov esi, dword [esp + 0xf0]
inc eax
cmp edx, eax
jb 0x4cf8ca
cmp ebp, 0x17
jmp 0x4cf93e
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
jne 0x4cf915
mov eax, dword [esp + 0x74]
cmp eax, 0x17
jmp 0x4cf928
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x74]
cmp eax, 0x17
mov dword [ebx], ecx
mov ebp, eax
mov esi, dword [esp + 0xf0]
mov eax, edx
mov ebx, ecx
mov ecx, dword [esp + 0xe8]
mov dword [ecx + 4], eax
mov byte [eax + ebx - 1], 0x7b
mov eax, dword [esp + 0xf4]
mov edx, dword [esp + 0xec]
mov ebx, 0
jmp 0x4d04af
test eax, eax
je 0x4cf966
xor ecx, ecx
jmp 0x4cf9a4
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.00492070
mov eax, dword [esp + 0xc]
test eax, eax
setne al
mov edx, dword [esp + 0xe8]
mov ebx, dword [esp + 0xec]
mov ebp, dword [esp + 0xf0]
mov esi, dword [esp + 0xf4]
mov ecx, eax
mov eax, dword [esp + 0xfc]
test cl, cl
je 0x4cfc89
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.00490de0
mov eax, dword [esp + 0x14]
mov ecx, eax
and eax, 0x1f
nop
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
cmp eax, 0x15
ja 0x4cf9e2
cmp eax, 0x11
je 0x4cf9f0
cmp eax, 0x15
je 0x4cf9f0
jmp 0x4cfab9
cmp eax, 0x17
je 0x4cf9f0
cmp eax, 0x19
jne 0x4cfab9
mov eax, dword [esp + 0xe8]
mov ebp, dword [eax + 8]
mov esi, dword [eax + 4]
inc esi
nop
mov edi, dword [eax]
cmp ebp, esi
jae 0x4cfa7f
mov dword [esp + 0x74], ecx
mov dword [esp + 0xa4], edx
mov dword [esp + 0xa8], ebx
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4cfa65
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov dword [ebx], ecx
mov eax, ebx
mov ebx, dword [esp + 0xa8]
mov esi, edx
mov edi, ecx
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0xa4]
mov dword [eax + 4], esi
mov byte [esi + edi - 1], 0x26
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xfc]
inc eax
mov dword [esp + 0x14], eax
call fcn.004cee00
add esp, 0xe4
ret
mov edx, dword [esp + 0xe8]
mov ebx, dword [esp + 0xec]
mov ebp, dword [esp + 0xf0]
mov esi, dword [esp + 0xf4]
jmp 0x4cfc89
cmp ecx, 0x18
je 0x4cfcc6
cmp ecx, 0x19
jne 0x4cfc84
movzx ecx, byte [edx + 0x2c]
test cl, cl
je 0x4cfbf8
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004933c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x80]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xe8]
mov edx, dword [ecx + 8]
mov ebx, dword [ecx + 4]
lea ebp, [eax + ebx]
nop
mov esi, dword [esp + 4]
mov edi, dword [ecx]
cmp edx, ebp
jae 0x4cfb82
mov dword [esp + 0x90], esi
mov dword [esp + 0x60], eax
mov dword [esp + 0x7c], ebx
mov dword [esp], edi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
lea ecx, [0x60dc80]
mov dword [esp + 0x10], ecx
call fcn.0044dbe0
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x60]
mov ebx, dword [esp + 0x7c]
mov esi, dword [esp + 0x90]
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ebp
mov dword [esp + 0xac], edi
lea ecx, [edi + ebx]
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], eax
call fcn.004685e0
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0xe8]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x7c]
mov dword [ecx + 8], eax
mov eax, dword [0x860560]
test eax, eax
jne 0x4cfbcc
mov eax, dword [esp + 0xac]
jmp 0x4cfbdf
call fcn.00467c50
mov eax, dword [esp + 0xac]
mov dword [edi], eax
mov edx, dword [ecx]
mov dword [edi + 4], edx
mov dword [ecx], eax
mov edx, ecx
mov ebx, dword [esp + 0xec]
mov ebp, dword [esp + 0xf0]
mov esi, dword [esp + 0xf4]
mov ecx, dword [edx + 8]
mov edi, dword [edx + 4]
inc edi
mov eax, dword [edx]
cmp ecx, edi
jae 0x4cfc75
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4cfc53
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov dword [ebx], ecx
mov ebx, dword [esp + 0xec]
mov ebp, dword [esp + 0xf0]
mov esi, dword [esp + 0xf4]
mov edi, edx
mov eax, ecx
mov edx, dword [esp + 0xe8]
mov dword [edx + 4], edi
mov byte [edi + eax - 1], 0x7b
xor eax, eax
jmp 0x4d00cf
cmp ecx, 0x1a
jne 0x4cfcad
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x10], eax
call fcn.004cd660
jmp 0x4d0045
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
call fcn.004cbf60
jmp 0x4d0045
mov eax, dword [ebp]
mov ecx, dword [ebp + 4]
nop
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov eax, dword [esp + 0xf8]
mov dword [esp + 0xc], eax
call fcn.004cce40
jmp 0x4d0045
cmp ecx, 0xc
ja 0x4cff6f
cmp ecx, 1
ja 0x4cfe7c
test ecx, ecx
jne 0x4cfe5b
test eax, eax
jne 0x4cfdc2
mov eax, dword [edx + 8]
mov ecx, dword [edx + 4]
lea ebx, [ecx + 0x17]
nop
mov ebp, dword [edx]
cmp eax, ebx
jae 0x4cfd55
mov dword [esp + 0x7c], ecx
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x17
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x7c], eax
mov dword [esp + 0x78], ebx
mov dword [esp + 0xac], ebp
add ecx, ebp
mov dword [esp], ecx
lea ecx, [0x63fa71]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x17
call fcn.004685e0
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0xe8]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x7c]
mov dword [ecx + 8], eax
mov eax, dword [0x860560]
test eax, eax
jne 0x4cfda8
mov eax, dword [esp + 0xac]
jmp 0x4cfdbb
call fcn.00467c50
mov eax, dword [esp + 0xac]
mov dword [edi], eax
mov edx, dword [ecx]
mov dword [edi + 4], edx
mov dword [ecx], eax
jmp 0x4d0045
mov eax, dword [esp + 0xf8]
cmp eax, 0x76
jne 0x4cfe4a
mov eax, dword [edx + 4]
lea ecx, [eax + 5]
mov ebx, dword [edx + 8]
mov ebp, dword [edx]
cmp ebx, ecx
jae 0x4cfe1a
mov dword [esp + 0x7c], eax
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 5
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0xe8]
mov dword [ebp + eax], 0x6c696e3c
mov byte [ebp + eax + 4], 0x3e
mov dword [edx + 4], ecx
mov dword [edx + 8], ebx
mov eax, dword [0x860560]
test eax, eax
je 0x4cfe43
call fcn.00467c50
mov dword [edi], ebp
mov eax, dword [edx]
mov dword [edi + 4], eax
mov dword [edx], ebp
jmp 0x4d0045
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.004cc1c0
jmp 0x4d0045
movzx eax, byte [ebp]
nop
mov dword [esp], edx
mov byte [esp + 4], al
mov eax, dword [esp + 0xf8]
mov dword [esp + 8], eax
call fcn.004cc720
jmp 0x4d0045
cmp ecx, 6
ja 0x4cff06
cmp ecx, 3
ja 0x4cfeaa
cmp ecx, 2
jne 0x4cfe99
mov eax, dword [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x4cfee1
movsx eax, byte [ebp]
mov ecx, eax
sar ecx, 0x1f
mov ebx, eax
mov eax, ecx
mov ecx, ebx
jmp 0x4cfee1
cmp ecx, 4
jne 0x4cfec0
movsx eax, word [ebp]
mov ecx, eax
sar ecx, 0x1f
mov ebx, eax
mov eax, ecx
mov ecx, ebx
jmp 0x4cfee1
cmp ecx, 5
jne 0x4cfed5
mov eax, dword [ebp]
mov ecx, eax
sar ecx, 0x1f
mov ebx, eax
mov eax, ecx
mov ecx, ebx
jmp 0x4cfee1
mov eax, dword [ebp]
mov ecx, dword [ebp + 4]
mov ebx, eax
mov eax, ecx
mov ecx, ebx
mov dword [esp], edx
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov byte [esp + 0xc], 1
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x10], eax
call fcn.004cc800
jmp 0x4d0045
cmp ecx, 9
ja 0x4cff2c
cmp ecx, 7
jne 0x4cff17
mov eax, dword [ebp]
xor ecx, ecx
jmp 0x4cff4a
cmp ecx, 8
jne 0x4cff24
movzx eax, byte [ebp]
xor ecx, ecx
jmp 0x4cff4a
movzx eax, word [ebp]
xor ecx, ecx
jmp 0x4cff4a
cmp ecx, 0xa
jne 0x4cff38
mov eax, dword [ebp]
xor ecx, ecx
jmp 0x4cff4a
cmp ecx, 0xb
jne 0x4cff45
mov eax, dword [ebp]
mov ecx, dword [ebp + 4]
jmp 0x4cff4a
mov eax, dword [ebp]
xor ecx, ecx
mov dword [esp], edx
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov byte [esp + 0xc], 0
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x10], eax
call fcn.004cc800
jmp 0x4d0045
cmp ecx, 0xe
ja 0x4cffd2
cmp ecx, 0xd
jne 0x4cffa9
movss xmm0, dword [ebp]
cvtss2sd xmm0, xmm0
nop
mov dword [esp], edx
movsd qword [esp + 4], xmm0
mov dword [esp + 0xc], 0x20
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x10], eax
call fcn.004ccb20
jmp 0x4d0045
movsd xmm0, qword [ebp]
nop
mov dword [esp], edx
movsd qword [esp + 4], xmm0
mov dword [esp + 0xc], 0x40
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x10], eax
call fcn.004ccb20
jmp 0x4d0045
cmp ecx, 0xf
jne 0x4d0013
movss xmm0, dword [ebp]
movss xmm1, dword [ebp + 4]
cvtss2sd xmm0, xmm0
cvtss2sd xmm1, xmm1
nop
mov dword [esp], edx
movsd qword [esp + 4], xmm0
movsd qword [esp + 0xc], xmm1
mov dword [esp + 0x14], 0x40
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x18], eax
call fcn.004ccc80
jmp 0x4d0045
movsd xmm0, qword [ebp]
movsd xmm1, qword [ebp + 8]
nop
mov dword [esp], edx
movsd qword [esp + 4], xmm0
movsd qword [esp + 0xc], xmm1
mov dword [esp + 0x14], pe_nt_image_headers32
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x18], eax
call fcn.004ccc80
add esp, 0xe4
ret
mov ecx, dword [esp + 0xec]
mov dword [esp], ecx
mov edx, dword [esp + 0xf0]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xf4]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.004cbed0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xfc]
lea edx, [ecx + 1]
mov dword [esp + 0x14], edx
call fcn.004cee00
mov eax, dword [esp + 0x50]
inc eax
mov ebx, dword [esp + 0xec]
mov ebp, dword [esp + 0xf0]
mov esi, dword [esp + 0xf4]
mov dword [esp + 0x50], eax
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.00491fc0
mov eax, dword [esp + 0x50]
cmp dword [esp + 0xc], eax
jle 0x4d03aa
test eax, eax
jle 0x4d01f4
mov ecx, dword [esp + 0xe8]
movzx edx, byte [ecx + 0x2c]
test dl, dl
je 0x4d017e
mov edx, dword [ecx + 8]
mov ebx, dword [ecx + 4]
lea ebp, [ebx + 2]
mov esi, dword [ecx]
cmp edx, ebp
jae 0x4d0158
mov dword [esp + 0x7c], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0xe8]
mov ebx, dword [esp + 0x7c]
mov word [esi + ebx], 0x202c
mov dword [ecx + 4], ebp
mov dword [ecx + 8], edx
mov edx, dword [0x860560]
test edx, edx
je 0x4d017a
call fcn.00467c50
mov dword [edi], esi
mov edx, dword [ecx]
mov dword [edi + 4], edx
mov dword [ecx], esi
jmp 0x4d01fb
mov edx, dword [ecx + 8]
mov ebx, dword [ecx + 4]
inc ebx
mov ebp, dword [ecx]
cmp edx, ebx
jae 0x4d01ea
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4d01d9
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov dword [ebx], ecx
mov eax, dword [esp + 0x50]
mov ebx, edx
mov ebp, ecx
mov ecx, dword [esp + 0xe8]
mov dword [ecx + 4], ebx
mov byte [ebx + ebp - 1], 0x20
jmp 0x4d01fb
mov ecx, dword [esp + 0xe8]
movzx edx, byte [ecx + 0x2b]
test dl, dl
jne 0x4d020f
movzx edx, byte [ecx + 0x2c]
test dl, dl
je 0x4d004c
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xf4]
mov dword [esp + 8], edx
call fcn.004933c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x2c]
mov dword [esp], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 4], ecx
call eax
lea edi, [esp + 0xb0]
lea esi, [esp + 8]
call fcn.0046837e
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xb0]
test eax, eax
je 0x4d039a
mov edx, dword [esp + 0xe8]
mov ebx, dword [edx + 8]
mov ebp, dword [edx + 4]
lea esi, [eax + ebp]
nop
mov edi, dword [edx]
cmp ebx, esi
jae 0x4d02d1
mov dword [esp + 0x68], eax
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x98], ecx
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
lea ecx, [0x60dc80]
mov dword [esp + 0x10], ecx
call fcn.0044dbe0
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x98]
mov ebp, dword [esp + 0x7c]
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x78], esi
mov dword [esp + 0xac], edi
lea edx, [edi + ebp]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004685e0
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0xe8]
mov dword [ecx + 4], eax
mov edx, dword [esp + 0x7c]
mov dword [ecx + 8], edx
mov ebx, dword [0x860560]
test ebx, ebx
jne 0x4d031b
mov ebx, dword [esp + 0xac]
jmp 0x4d032e
call fcn.00467c50
mov ebx, dword [esp + 0xac]
mov dword [edi], ebx
mov ebp, dword [ecx]
mov dword [edi + 4], ebp
mov dword [ecx], ebx
inc eax
cmp edx, eax
jae 0x4d0390
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4d0383
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov dword [ebx], ecx
mov eax, edx
mov ebx, ecx
mov ecx, dword [esp + 0xe8]
mov dword [ecx + 4], eax
mov byte [eax + ebx - 1], 0x3a
jmp 0x4d03a1
mov ecx, dword [esp + 0xe8]
mov eax, dword [esp + 0x50]
jmp 0x4d004c
mov eax, dword [esp + 0xe8]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
inc edx
mov ebx, dword [eax]
cmp ecx, edx
jae 0x4d0412
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4d040c
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov dword [ebx], ecx
mov eax, ebx
mov ebx, ecx
mov dword [eax + 4], edx
mov byte [edx + ebx - 1], 0x7d
jmp 0x4d0045
mov dword [esp], edx
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
call fcn.004912c0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xfc]
lea edx, [ecx + 1]
mov dword [esp + 0x14], edx
call fcn.004cee00
mov eax, dword [esp + 0x48]
lea ebx, [eax + 1]
mov ebp, dword [esp + 0x74]
cmp ebp, 0x17
mov eax, dword [esp + 0xe8]
mov ecx, dword [esp + 0xf4]
mov edx, dword [esp + 0xf0]
mov esi, dword [esp + 0xec]
mov eax, ecx
mov ecx, dword [esp + 0xe8]
mov edx, esi
mov esi, dword [esp + 0xf0]
mov dword [esp + 0x48], ebx
jne 0x4d04ba
mov edi, dword [esi + 4]
jmp 0x4d04f2
mov dword [esp], edx
mov dword [esp + 4], esi
mov dword [esp + 8], eax
call fcn.00491950
mov edi, dword [esp + 0xc]
mov eax, dword [esp + 0xf4]
mov ecx, dword [esp + 0xe8]
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x74]
mov esi, dword [esp + 0xf0]
cmp edi, ebx
jle 0x4d0590
test ebx, ebx
jle 0x4d041f
mov edi, dword [ecx + 8]
mov ebp, dword [ecx + 4]
lea ebx, [ebp + 2]
mov eax, dword [ecx]
cmp edi, ebx
jae 0x4d055c
mov dword [esp + 0x7c], ebp
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov dword [esp + 0xc], 2
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0xe8]
mov edx, dword [esp + 0xec]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xf0]
mov word [eax + ebp], 0x202c
mov dword [ecx + 4], ebx
mov dword [ecx + 8], edi
mov ebx, dword [0x860560]
test ebx, ebx
je 0x4d057e
call fcn.00467c50
mov dword [edi], eax
mov ebx, dword [ecx]
mov dword [edi + 4], ebx
mov dword [ecx], eax
mov eax, dword [esp + 0xf4]
mov ebx, dword [esp + 0x48]
jmp 0x4d041f
mov eax, dword [ecx + 8]
mov edx, dword [ecx + 4]
inc edx
nop
mov ebx, dword [ecx]
cmp eax, edx
jae 0x4d05f4
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4d05ec
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov dword [ebx], ecx
mov eax, ecx
mov ecx, ebx
mov ebx, eax
mov dword [ecx + 4], edx
mov byte [edx + ebx - 1], 0x7d
jmp 0x4d0045
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
call fcn.004912c0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xfc]
lea edx, [ecx + 1]
mov dword [esp + 0x14], edx
call fcn.004cee00
mov eax, dword [esp + 0x44]
lea esi, [eax + 1]
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0xe8]
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xec]
mov eax, edx
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0xe8]
mov ebx, ebp
mov ebp, dword [esp + 0xf0]
mov dword [esp + 0x44], esi
cmp ecx, 0x17
jne 0x4d06a0
mov edi, dword [ebp + 4]
jmp 0x4d06d8
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call fcn.00491950
mov edi, dword [esp + 0xc]
mov eax, dword [esp + 0xf4]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0xe8]
mov ebx, dword [esp + 0xec]
mov ebp, dword [esp + 0xf0]
mov esi, dword [esp + 0x44]
cmp edi, esi
jle 0x4d0776
test esi, esi
jle 0x4d0601
mov edi, dword [edx + 8]
mov ecx, dword [edx + 4]
inc ecx
mov esi, dword [edx]
cmp edi, ecx
jae 0x4d0765
mov dword [esp], esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4d0743
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov dword [ebx], ecx
mov eax, dword [esp + 0xf4]
mov ebx, dword [esp + 0xec]
mov ebp, dword [esp + 0xf0]
mov esi, ecx
mov ecx, edx
mov edx, dword [esp + 0xe8]
mov dword [edx + 4], ecx
mov byte [ecx + esi - 1], 0x20
mov esi, dword [esp + 0x44]
jmp 0x4d0601
mov eax, dword [edx + 8]
mov ecx, dword [edx + 4]
inc ecx
nop
mov ebx, dword [edx]
cmp eax, ecx
jae 0x4d07dc
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4d07d2
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov dword [ebx], ecx
mov eax, edx
mov edx, ebx
mov ebx, ecx
mov ecx, eax
mov dword [edx + 4], ecx
mov byte [ecx + ebx - 1], 0x5d
jmp 0x4d0045
mov dword [esp + 0x70], eax
mov dword [esp + 0x6c], edx
mov dword [esp + 0x9c], ecx
mov ebx, dword [esp + 0x40]
mov ebx, dword [ebx + 0x80]
mov ebp, dword [esp + 0x84]
mov dword [esp], ebp
call ebx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xe8]
mov dword [esp], edx
mov edx, dword [esp + 0x9c]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0xf8]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ecx
call fcn.004ccfe0
add esp, 0xe4
ret
mov ebx, eax
mov eax, ecx
mov ecx, ebx
jmp 0x4d07e9
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0xa8]
mov byte [ebx + edx], al
lea ecx, [edx + 1]
mov eax, ebx
mov edx, dword [esp + 0x3c]
cmp ecx, edx
jge 0x4d0903
mov dword [esp + 0x4c], ecx
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov edx, dword [esp + 0xf0]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xf4]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
call fcn.004912c0
mov eax, dword [esp + 0x18]
and eax, 0x1f
mov dword [esp + 0x74], eax
mov ecx, dword [esp + 0x14]
cmp eax, 9
ja 0x4d08df
cmp eax, 7
jne 0x4d08cb
mov eax, dword [ecx]
jmp 0x4d0862
cmp eax, 8
jne 0x4d08d5
movzx eax, byte [ecx]
jmp 0x4d0862
cmp eax, 9
jne 0x4d090a
movzx eax, word [ecx]
jmp 0x4d0862
cmp eax, 0xa
jne 0x4d08eb
mov eax, dword [ecx]
jmp 0x4d0862
cmp eax, 0xb
jne 0x4d08f7
mov eax, dword [ecx]
jmp 0x4d0862
cmp eax, 0xc
jne 0x4d090a
mov eax, dword [ecx]
jmp 0x4d0862
mov ecx, edx
jmp 0x4d085a
lea eax, [0x6195a0]
mov dword [esp], eax
call fcn.0040c2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x12
lea ecx, [0x63d1b9]
mov dword [eax], ecx
mov ecx, dword [esp + 0x74]
mov dword [eax + 8], ecx
lea ecx, [0x6120a0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00438060
mov ecx, dword [edx + 0xc]
lea ebp, [ebx + ebx*2]
mov esi, dword [ecx + ebp*4]
mov edi, dword [ecx + ebp*4 + 4]
mov ecx, dword [ecx + ebp*4 + 8]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xf8]
mov dword [esp + 0x10], ecx
mov ebp, dword [esp + 0x78]
mov dword [esp + 0x14], ebp
call fcn.004cee00
mov eax, dword [esp + 0xa8]
lea ecx, [eax + 0xc]
mov eax, dword [esp + 0x54]
lea ebx, [eax + 1]
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x7c]
cmp ebx, edx
jge 0x4d0bb2
mov dword [esp + 0x54], ebx
mov dword [esp + 0xa8], ecx
mov ebp, dword [ecx]
mov esi, dword [ecx + 4]
mov edi, dword [ecx + 8]
test ebx, ebx
jle 0x4d0aee
mov dword [esp + 0x74], edi
mov dword [esp + 0xa0], esi
mov dword [esp + 0xa4], ebp
mov edx, dword [esp + 0xe8]
movzx ecx, byte [edx + 0x2c]
test cl, cl
je 0x4d0a6b
mov ecx, dword [edx + 8]
mov ebx, dword [edx + 4]
lea eax, [ebx + 2]
mov edi, dword [edx]
cmp ecx, eax
jae 0x4d0a3a
mov dword [esp + 0x78], ebx
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 2
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0xe8]
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0xa4]
mov esi, dword [esp + 0xa0]
mov word [edi + ebx], 0x202c
mov dword [edx + 4], eax
mov dword [edx + 8], ecx
mov eax, dword [0x860560]
test eax, eax
je 0x4d0a60
mov eax, edi
call fcn.00467c50
mov dword [edi], eax
mov ecx, dword [edx]
mov dword [edi + 4], ecx
mov edi, eax
mov dword [edx], edi
mov edi, dword [esp + 0x74]
jmp 0x4d0aee
mov ecx, dword [edx + 8]
mov ebx, dword [edx + 4]
inc ebx
nop
mov eax, dword [edx]
cmp ecx, ebx
jae 0x4d0ae6
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4d0ac7
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov dword [ebx], ecx
mov ebp, dword [esp + 0xa4]
mov esi, dword [esp + 0xa0]
mov edi, dword [esp + 0x74]
mov ebx, edx
mov eax, ecx
mov edx, dword [esp + 0xe8]
mov dword [edx + 4], ebx
mov byte [ebx + eax - 1], 0x20
mov eax, dword [esp + 0xe8]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], edi
mov ecx, dword [esp + 0xf8]
mov dword [esp + 0x10], ecx
mov edx, dword [esp + 0xfc]
lea ebx, [edx + 1]
mov dword [esp + 0x78], ebx
mov dword [esp + 0x14], ebx
call fcn.004cee00
mov eax, dword [esp + 0xe8]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
inc edx
nop
mov ebx, dword [eax]
cmp ecx, edx
jae 0x4d0b8f
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4d0b89
call fcn.00467c50
mov dword [edi], ecx
mov ebp, dword [ebx]
mov dword [edi + 4], ebp
mov dword [ebx], ecx
mov eax, ebx
mov ebx, ecx
mov dword [eax + 4], edx
mov byte [edx + ebx - 1], 0x3a
mov edx, dword [esp + 0x80]
mov ecx, dword [edx + 0x10]
mov ebx, dword [esp + 0x54]
cmp ebx, ecx
jb 0x4d0944
jmp 0x4d0c9f
mov eax, dword [esp + 0xe8]
movzx ecx, byte [eax + 0x2c]
test cl, cl
je 0x4d0c30
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
inc edx
nop
mov ebx, dword [eax]
cmp ecx, edx
jae 0x4d0c23
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4d0c1d
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov dword [ebx], ecx
mov eax, ebx
mov ebx, ecx
mov dword [eax + 4], edx
mov byte [edx + ebx - 1], 0x7d
jmp 0x4d0045
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
inc edx
nop
mov ebx, dword [eax]
cmp ecx, edx
jae 0x4d0c92
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x60dc80]
mov dword [esp + 0x10], eax
call fcn.0044dbe0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xe8]
mov dword [ebx + 8], eax
mov eax, dword [0x860560]
test eax, eax
je 0x4d0c8c
call fcn.00467c50
mov dword [edi], ecx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov dword [ebx], ecx
mov eax, ebx
mov ebx, ecx
mov dword [eax + 4], edx
mov byte [edx + ebx - 1], 0x5d
jmp 0x4d0045
mov eax, ebx
call fcn.00467cb0
nop
call fcn.00466840
jmp fcn.004cee00