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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x13c]
cmp eax, dword [ecx + 8]
jbe 0x4fe6b3
sub esp, 0x1bc
mov eax, dword [esp + 0x1c8]
test eax, eax
jne 0x4fc615
mov ecx, dword [esp + 0x1c4]
mov dword [esp + 0x120], ecx
mov dword [esp + 0x124], eax
mov eax, dword [esp + 0x1cc]
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x1d0]
mov dword [esp], eax
mov eax, dword [esp + 0x1d4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x1d8]
mov dword [esp + 8], eax
call fcn.00490190
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xa0], ecx
test eax, eax
je 0x4fc540
mov eax, dword [eax + 4]
mov dword [esp + 0x9c], eax
mov dword [esp + 0x1ac], 0
mov dword [esp + 0x1b0], 0
mov dword [esp + 0x1b4], 0
mov dword [esp + 0x1b8], 0
lea edx, [0x6a56a0]
mov dword [esp], edx
lea edx, [esp + 0x120]
mov dword [esp + 4], edx
call fcn.0040a880
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x1b4], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x1b8], eax
lea eax, [0x717e9b]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0x1ac]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.0049a940
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004f9520
add esp, 0x1bc
ret
mov ecx, dword [esp + 0x1c4]
movzx edx, byte [ecx]
mov ebx, dword [esp + 0x1c0]
mov dword [esp], ebx
mov ebp, dword [esp + 0x1d0]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x1d4]
mov dword [esp + 8], esi
mov edi, dword [esp + 0x1d8]
mov dword [esp + 0xc], edi
cmp dl, 0x6e
sete dl
mov byte [esp + 0x10], dl
call fcn.004f9c10
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x78], edx
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x7c], ebx
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0x34], ebp
mov esi, dword [esp + 0x28]
mov dword [esp + 0x70], esi
mov edi, dword [esp + 0x24]
mov dword [esp + 0x6c], edi
test ecx, ecx
jne 0x4fe65e
test edx, edx
je 0x4fcb31
mov eax, dword [esp + 0x1c4]
movzx ecx, byte [eax]
cmp cl, 0x22
je 0x4fc92b
movzx edx, byte [esp + 0x1dc]
test dl, dl
jne 0x4fc7fa
cmp cl, 0x66
jne 0x4fc7cc
lea eax, [0x70499b]
mov ecx, 4
mov dword [esp + 0x74], eax
mov dword [esp + 0x38], ecx
mov edx, dword [esp + 0x1d0]
mov dword [esp], edx
mov edx, dword [esp + 0x1d4]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x1d8]
mov dword [esp + 8], edx
call fcn.00490190
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x9c], ecx
lea edx, [0x6dc220]
mov dword [esp], edx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x98], eax
mov ecx, dword [esp + 0x38]
mov dword [eax + 4], ecx
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4fc7b0
mov ecx, dword [esp + 0x74]
mov dword [eax], ecx
mov ecx, dword [esp + 0x9c]
mov dword [eax + 8], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0xc]
test ecx, ecx
jne 0x4fc794
mov ecx, dword [esp + 0xa0]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0x10], edx
sar edx, 0x1f
mov dword [eax + 0x14], edx
mov dword [esp], ecx
lea ecx, [0x847c60]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f9520
add esp, 0x1bc
ret
mov dword [esp], edx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fc764
mov dword [esp], eax
mov ecx, dword [esp + 0x74]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fc743
cmp cl, 0x6e
jne 0x4fc7e1
lea eax, [0x704a9b]
mov ecx, 4
jmp 0x4fc6d0
cmp cl, 0x74
je 0x4fc6c5
lea eax, [0x70537a]
mov ecx, 6
jmp 0x4fc6d0
mov dword [esp + 0x114], eax
mov eax, dword [esp + 0x1c8]
mov dword [esp + 0x118], eax
mov eax, dword [esp + 0x1cc]
mov dword [esp + 0x11c], eax
mov eax, dword [esp + 0x1d0]
mov dword [esp], eax
mov eax, dword [esp + 0x1d4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x1d8]
mov dword [esp + 8], eax
call fcn.00490190
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x4fc858
mov ecx, dword [ecx + 4]
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1a0], 0
mov dword [esp + 0x1a4], 0
mov dword [esp + 0x1a8], 0
lea edx, [0x6a56a0]
mov dword [esp], edx
lea edx, [esp + 0x114]
mov dword [esp + 4], edx
call fcn.0040a880
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x19c], eax
mov dword [esp + 0x1a0], ecx
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x1a4], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x1a8], eax
lea eax, [0x717e9b]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0x19c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.0049a940
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004f9520
jmp 0x4fc78d
mov dword [esp], eax
mov ecx, dword [esp + 0x1c8]
mov dword [esp + 4], ecx
mov ebp, dword [esp + 0x1cc]
mov dword [esp + 8], ebp
call fcn.004ff040
movzx eax, byte [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x3c], edx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x80], ebx
test al, al
je 0x4fc9b5
mov eax, dword [esp + 0x78]
mov eax, dword [eax + 0x14]
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
test ecx, ecx
jne 0x4fc99c
add esp, 0x1bc
ret
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f94c0
jmp 0x4fc995
movzx eax, byte [esp + 0x1dc]
test al, al
je 0x4fcb0c
mov eax, dword [esp + 0x1c4]
mov dword [esp + 0x108], eax
mov eax, dword [esp + 0x1c8]
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0x1cc]
mov dword [esp + 0x110], eax
mov eax, dword [esp + 0x1d0]
mov dword [esp], eax
mov eax, dword [esp + 0x1d4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x1d8]
mov dword [esp + 8], eax
call fcn.00490190
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xa0], ecx
test eax, eax
je 0x4fca2a
mov eax, dword [eax + 4]
mov dword [esp + 0x9c], eax
mov dword [esp + 0x18c], 0
mov dword [esp + 0x190], 0
mov dword [esp + 0x194], 0
mov dword [esp + 0x198], 0
lea edx, [0x6a56a0]
mov dword [esp], edx
lea edx, [esp + 0x108]
mov dword [esp + 4], edx
call fcn.0040a880
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x18c], eax
mov dword [esp + 0x190], ecx
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x194], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x198], eax
lea eax, [0x717e9b]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0x18c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.0049a940
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f94c0
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x80]
jmp 0x4fc96d
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
mov ebp, dword [0x8727a8]
mov esi, dword [0x8727ac]
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004f94c0
jmp 0x4fcaf8
mov eax, dword [esp + 0x1c4]
movzx ecx, byte [eax]
cmp cl, 0x66
ja 0x4fe473
cmp cl, 0x22
je 0x4fdd6a
cmp cl, 0x66
jne 0x4fd0df
movzx edx, byte [esp + 0x1dc]
test dl, dl
je 0x4fd0d3
mov ebx, dword [esp + 0x1c8]
cmp ebx, 4
je 0x4fd084
cmp ebx, 5
je 0x4fcc96
mov dword [esp + 0xf0], eax
mov dword [esp + 0xf4], ebx
mov eax, dword [esp + 0x1cc]
mov dword [esp + 0xf8], eax
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
call fcn.00490190
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x4fcbc1
mov ecx, dword [ecx + 4]
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x16c], 0
mov dword [esp + 0x170], 0
mov dword [esp + 0x174], 0
mov dword [esp + 0x178], 0
lea edx, [0x6a56a0]
mov dword [esp], edx
lea edx, [esp + 0xf0]
mov dword [esp + 4], edx
call fcn.0040a880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x16c], ecx
mov dword [esp + 0x170], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x174], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x178], eax
lea eax, [0x717e9b]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0x16c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.0049a940
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f9520
add esp, 0x1bc
ret
cmp cl, 0x66
jne 0x4fcb7f
movzx edx, byte [eax + 1]
cmp dl, 0x61
jne 0x4fcb7f
movzx edx, byte [eax + 2]
cmp dl, 0x6c
jne 0x4fcb7f
movzx edx, byte [eax + 3]
cmp dl, 0x73
jne 0x4fcb7f
movzx edx, byte [eax + 4]
cmp dl, 0x65
jne 0x4fcb7f
cmp cl, 0x74
sete cl
mov byte [esp + 0x32], cl
mov edx, ebp
and ebp, 0x1f
cmp ebp, 1
je 0x4fd06b
cmp ebp, 0x14
je 0x4fcefa
movzx ecx, byte [esp + 0x1dc]
test cl, cl
je 0x4fce19
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ebx
mov eax, dword [esp + 0x1cc]
mov dword [esp + 0xec], eax
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], edx
call fcn.00490190
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x4fcd46
mov ecx, dword [ecx + 4]
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x15c], 0
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
mov dword [esp + 0x168], 0
lea edx, [0x6a56a0]
mov dword [esp], edx
lea edx, [esp + 0xe4]
mov dword [esp + 4], edx
call fcn.0040a880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x15c], ecx
mov dword [esp + 0x160], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x164], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x168], eax
lea eax, [0x717e9b]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0x15c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.0049a940
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004f9520
jmp 0x4fcc8f
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], edx
call fcn.00490190
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x9c], ecx
lea edx, [0x6dc220]
mov dword [esp], edx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x98], eax
mov dword [eax + 4], 4
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4fcedc
lea ecx, [0x70499b]
mov dword [eax], ecx
mov ecx, dword [esp + 0x9c]
mov dword [eax + 8], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0xc]
test ecx, ecx
jne 0x4fcec0
mov ecx, dword [esp + 0xa0]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0x10], edx
sar edx, 0x1f
mov dword [eax + 0x14], edx
mov dword [esp], ecx
lea ecx, [0x847c60]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f9520
jmp 0x4fcc8f
mov dword [esp], edx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fce92
mov dword [esp], eax
lea ecx, [0x70499b]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fce71
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], edx
call fcn.0048ee00
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x4fcf7e
movzx eax, byte [esp + 0x32]
mov byte [esp + 0x33], al
lea eax, [0x6b2820]
mov dword [esp], eax
lea eax, [esp + 0x33]
mov dword [esp + 4], eax
call fcn.0040a880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00490f20
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0x6c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x34]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
call fcn.0048f3c0
jmp 0x4fcc8f
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
call fcn.00490190
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x9c], ecx
lea edx, [0x6dc220]
mov dword [esp], edx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x98], eax
mov dword [eax + 4], 4
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4fd04d
lea ecx, [0x70499b]
mov dword [eax], ecx
mov ecx, dword [esp + 0xa0]
mov dword [eax + 8], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0xc]
test ecx, ecx
jne 0x4fd031
mov ecx, dword [esp + 0x9c]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0x10], edx
sar edx, 0x1f
mov dword [eax + 0x14], edx
mov dword [esp], ecx
lea ecx, [0x847c60]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f9520
jmp 0x4fcc8f
mov dword [esp], edx
mov ecx, dword [esp + 0x9c]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fd003
mov dword [esp], eax
lea ecx, [0x70499b]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fcfe2
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov byte [esp + 0xc], cl
call fcn.0048f4a0
jmp 0x4fcc8f
cmp cl, 0x74
jne 0x4fcb76
movzx edx, byte [eax + 1]
cmp dl, 0x72
je 0x4fd0a3
movzx edx, byte [esp + 0x1dc]
jmp 0x4fcb76
movzx edx, byte [eax + 2]
cmp dl, 0x75
je 0x4fd0b9
movzx edx, byte [esp + 0x1dc]
jmp 0x4fcb76
movzx edx, byte [eax + 3]
cmp dl, 0x65
je 0x4fccd3
movzx edx, byte [esp + 0x1dc]
jmp 0x4fcb76
mov ebx, dword [esp + 0x1c8]
jmp 0x4fccd3
cmp cl, 0x2d
je 0x4fd21b
add ecx, 0xffffffd0
cmp cl, 9
jbe 0x4fd21b
movzx ecx, byte [esp + 0x1dc]
test cl, cl
je 0x4fdd42
mov dword [esp + 0xcc], eax
mov edx, dword [esp + 0x1c8]
mov dword [esp + 0xd0], edx
mov ebx, dword [esp + 0x1cc]
mov dword [esp + 0xd4], ebx
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
call fcn.00490190
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x4fd14d
mov ecx, dword [ecx + 4]
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x13c], 0
mov dword [esp + 0x140], 0
mov dword [esp + 0x144], 0
mov dword [esp + 0x148], 0
lea edx, [0x6a56a0]
mov dword [esp], edx
lea ebx, [esp + 0xcc]
mov dword [esp + 4], ebx
call fcn.0040a880
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x13c], eax
mov dword [esp + 0x140], ecx
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x144], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x148], eax
lea eax, [0x717e9b]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0x13c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.0049a940
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f94c0
mov dword [esp], 0
mov eax, dword [esp + 0x1c4]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x1c8]
mov dword [esp + 8], ecx
mov edx, dword [esp + 0x1cc]
mov dword [esp + 0xc], edx
call fcn.0043a9c0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x84], ecx
mov edx, dword [esp + 0x34]
mov ebx, edx
and edx, 0x1f
cmp edx, 0xc
ja 0x4fd999
lea ebp, [edx - 2]
cmp ebp, 4
jbe 0x4fd7e4
lea ebp, [edx - 7]
cmp ebp, 5
jbe 0x4fd62f
cmp edx, 0x18
je 0x4fd4b2
movzx eax, byte [esp + 0x1dc]
test al, al
je 0x4fd3c9
mov eax, dword [esp + 0x1c4]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x1c8]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x1cc]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call fcn.00490190
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x4fd2f6
mov ecx, dword [ecx + 4]
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x12c], 0
mov dword [esp + 0x130], 0
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], 0
lea edx, [0x6a56a0]
mov dword [esp], edx
lea edx, [esp + 0xb4]
mov dword [esp + 4], edx
call fcn.0040a880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x12c], ecx
mov dword [esp + 0x130], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x134], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x138], eax
lea eax, [0x717e9b]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0x12c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.0049a940
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f94c0
jmp 0x4fcc8f
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call fcn.00490190
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x9c], ecx
lea edx, [0x6dc220]
mov dword [esp], edx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x98], eax
mov dword [eax + 4], 6
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4fd494
lea ecx, [0x70537a]
mov dword [eax], ecx
mov ecx, dword [esp + 0x9c]
mov dword [eax + 8], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0xc]
test ecx, ecx
jne 0x4fd478
mov ecx, dword [esp + 0xa0]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0x10], edx
sar edx, 0x1f
mov dword [eax + 0x14], edx
mov dword [esp], ecx
lea ecx, [0x847c60]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f94c0
jmp 0x4fcc8f
mov dword [esp], edx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fd44a
mov dword [esp], eax
lea ecx, [0x70537a]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fd429
mov edx, dword [esp + 0x6c]
mov dword [esp], edx
mov ebp, dword [esp + 0x70]
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
call fcn.00490190
mov eax, dword [0x8727b8]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
cmp edx, eax
je 0x4fd4e5
mov ebx, dword [esp + 0x34]
jmp 0x4fd28e
mov dword [esp], edx
mov dword [esp + 4], ecx
mov eax, dword [0x8727bc]
mov ecx, dword [0x8727b8]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.004022c0
movzx eax, byte [esp + 0x10]
test al, al
jne 0x4fd517
mov ebx, dword [esp + 0x34]
jmp 0x4fd28e
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x10], ecx
call fcn.0048fd30
mov eax, dword [esp + 0x84]
mov dword [esp], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
call fcn.004f92f0
movzx eax, byte [esp + 8]
test al, al
je 0x4fd56b
jmp 0x4fcc8f
mov eax, dword [esp + 0x1c4]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x1c8]
mov dword [esp + 0xc4], eax
mov eax, dword [esp + 0x1cc]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
lea eax, [0x6a56a0]
mov dword [esp], eax
lea eax, [esp + 0xc0]
mov dword [esp + 4], eax
call fcn.0040a880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
lea eax, [0x71780f]
mov dword [esp], eax
mov dword [esp + 4], 0x40
lea eax, [esp + 0xa4]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.0049a940
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f94c0
jmp 0x4fcc8f
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.00450700
mov eax, dword [esp + 0x14]
mov dword [esp + 0x5c], eax
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x54], edx
test ecx, ecx
je 0x4fd781
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
call fcn.00490190
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x9c], ecx
lea edx, [0x6dc220]
mov dword [esp], edx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x98], eax
mov dword [esp], 0
lea ecx, [0x705898]
mov dword [esp + 4], ecx
mov dword [esp + 8], 7
mov ecx, dword [esp + 0x84]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x10], ecx
call fcn.0043a840
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x98]
mov dword [edx + 4], eax
mov eax, dword [0x884700]
test eax, eax
jne 0x4fd76c
mov dword [edx], ecx
mov eax, dword [esp + 0xa0]
mov dword [edx + 8], eax
mov eax, dword [0x884700]
lea ecx, [edx + 0xc]
test eax, eax
jne 0x4fd750
mov eax, dword [esp + 0x9c]
mov dword [edx + 0xc], eax
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xc]
mov dword [edx + 0x10], ecx
sar ecx, 0x1f
mov dword [edx + 0x14], ecx
mov dword [esp], eax
lea eax, [0x847c60]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.004f9520
jmp 0x4fcc8f
mov dword [esp], ecx
mov eax, dword [esp + 0x9c]
mov dword [esp + 4], eax
call fcn.0040d5a0
mov edx, dword [esp + 0x98]
jmp 0x4fd722
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov edx, dword [esp + 0x98]
jmp 0x4fd701
mov ecx, dword [esp + 0x6c]
mov dword [esp], ecx
mov ebx, dword [esp + 0x70]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 0x34]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
call fcn.0048f140
movzx eax, byte [esp + 0x14]
test al, al
je 0x4fd7b3
jmp 0x4fd667
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x10], eax
call fcn.0048fc00
jmp 0x4fcc8f
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.00450bf0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x58], ecx
mov edx, dword [esp + 0x18]
test edx, edx
je 0x4fd936
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
call fcn.00490190
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x9c], ecx
lea edx, [0x6dc220]
mov dword [esp], edx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x98], eax
mov dword [esp], 0
lea ecx, [0x705898]
mov dword [esp + 4], ecx
mov dword [esp + 8], 7
mov ecx, dword [esp + 0x84]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x10], ecx
call fcn.0043a840
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x98]
mov dword [edx + 4], ecx
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4fd921
mov dword [edx], eax
mov eax, dword [esp + 0x9c]
mov dword [edx + 8], eax
mov eax, dword [0x884700]
lea ecx, [edx + 0xc]
test eax, eax
jne 0x4fd905
mov eax, dword [esp + 0xa0]
mov dword [edx + 0xc], eax
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xc]
mov dword [edx + 0x10], ecx
sar ecx, 0x1f
mov dword [edx + 0x14], ecx
mov dword [esp], eax
lea eax, [0x847c60]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.004f9520
jmp 0x4fcc8f
mov dword [esp], ecx
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
call fcn.0040d5a0
mov edx, dword [esp + 0x98]
jmp 0x4fd8d7
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov edx, dword [esp + 0x98]
jmp 0x4fd8b6
mov edx, dword [esp + 0x6c]
mov dword [esp], edx
mov ebx, dword [esp + 0x70]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 0x34]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.0048eff0
movzx eax, byte [esp + 0x14]
test al, al
je 0x4fd968
jmp 0x4fd81c
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x10], eax
call fcn.0048f870
jmp 0x4fcc8f
lea ebp, [edx - 0xd]
cmp ebp, 1
jbe 0x4fdb6c
cmp edx, 0x14
je 0x4fd9af
jmp 0x4fd285
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004fc290
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x90], edx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x8c], ebx
test ecx, ecx
je 0x4fda04
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f9520
jmp 0x4fcc8f
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov ebp, dword [esp + 0x34]
mov dword [esp + 8], ebp
call fcn.0048ee00
mov eax, dword [esp + 0xc]
test eax, eax
je 0x4fdb19
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
call fcn.00490190
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x9c], ecx
lea edx, [0x6dc220]
mov dword [esp], edx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x98], eax
mov dword [eax + 4], 6
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4fdafb
lea ecx, [0x70537a]
mov dword [eax], ecx
mov ecx, dword [esp + 0x9c]
mov dword [eax + 8], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0xc]
test ecx, ecx
jne 0x4fdadf
mov ecx, dword [esp + 0xa0]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0x10], edx
sar edx, 0x1f
mov dword [eax + 0x14], edx
mov dword [esp], ecx
lea ecx, [0x847c60]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f9520
jmp 0x4fcc8f
mov dword [esp], edx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fdab1
mov dword [esp], eax
lea ecx, [0x70537a]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fda90
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 4], eax
call fcn.00490f20
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0x6c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x34]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
call fcn.0048f3c0
jmp 0x4fcc8f
mov edx, dword [esp + 0x6c]
mov dword [esp], edx
mov ebp, dword [esp + 0x70]
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
call fcn.00490190
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x1c]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x84]
mov dword [esp], ecx
mov edx, dword [esp + 0x40]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00450580
movsd xmm0, qword [esp + 0xc]
movsd qword [esp + 0x64], xmm0
mov eax, dword [esp + 0x14]
test eax, eax
je 0x4fdce5
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
call fcn.00490190
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x9c], ecx
lea edx, [0x6dc220]
mov dword [esp], edx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x98], eax
mov dword [esp], 0
lea ecx, [0x705898]
mov dword [esp + 4], ecx
mov dword [esp + 8], 7
mov ecx, dword [esp + 0x84]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x10], ecx
call fcn.0043a840
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x98]
mov dword [edx + 4], ecx
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4fdcd0
mov dword [edx], eax
mov eax, dword [esp + 0x9c]
mov dword [edx + 8], eax
mov eax, dword [0x884700]
lea ecx, [edx + 0xc]
test eax, eax
jne 0x4fdcb4
mov eax, dword [esp + 0xa0]
mov dword [edx + 0xc], eax
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xc]
mov dword [edx + 0x10], ecx
sar ecx, 0x1f
mov dword [edx + 0x14], ecx
mov dword [esp], eax
lea eax, [0x847c60]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.004f9520
jmp 0x4fcc8f
mov dword [esp], ecx
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
call fcn.0040d5a0
mov edx, dword [esp + 0x98]
jmp 0x4fdc86
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov edx, dword [esp + 0x98]
jmp 0x4fdc65
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x34]
mov dword [esp + 8], edx
movsd qword [esp + 0xc], xmm0
call fcn.0048ef00
movzx eax, byte [esp + 0x14]
test al, al
je 0x4fdd15
jmp 0x4fdbcb
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
movsd xmm0, qword [esp + 0x64]
movsd qword [esp + 0xc], xmm0
call fcn.0048f7a0
jmp 0x4fcc8f
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov ebx, dword [0x8727ac]
mov edx, dword [0x8727a8]
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call fcn.004f94c0
jmp 0x4fd21b
mov dword [esp], eax
mov ecx, dword [esp + 0x1c8]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x1cc]
mov dword [esp + 8], edx
call fcn.004ff040
movzx eax, byte [esp + 0x18]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x88], ecx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x44], edx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x48], ebx
test al, al
je 0x4fe300
mov eax, dword [esp + 0x34]
mov ebp, eax
and eax, 0x1f
cmp eax, 0x14
je 0x4fe14c
cmp eax, 0x17
je 0x4fdf02
cmp eax, 0x18
jne 0x4fde19
mov dword [esp], 0
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.0043a9c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
call fcn.0048fd30
jmp 0x4fcc8f
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call fcn.00490190
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x9c], ecx
lea edx, [0x6dc220]
mov dword [esp], edx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x98], eax
mov dword [eax + 4], 6
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4fdee4
lea ecx, [0x705434]
mov dword [eax], ecx
mov ecx, dword [esp + 0xa0]
mov dword [eax + 8], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0xc]
test ecx, ecx
jne 0x4fdec8
mov ecx, dword [esp + 0x9c]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0x10], edx
sar edx, 0x1f
mov dword [eax + 0x14], edx
mov dword [esp], ecx
lea ecx, [0x847c60]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f9520
jmp 0x4fcc8f
mov dword [esp], edx
mov ecx, dword [esp + 0x9c]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fde9a
mov dword [esp], eax
lea ecx, [0x705434]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fde79
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov esi, dword [esp + 0x70]
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
call fcn.00490190
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov ecx, dword [ecx + 0x2c]
mov dword [esp], eax
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov eax, dword [eax + 0x54]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
cmp eax, 8
jne 0x4fe05f
mov eax, dword [0x872080]
mov eax, dword [eax + 0x140]
cmp eax, 0xffffffff
jne 0x4fe043
mov eax, dword [esp + 0x44]
lea ecx, [eax + eax*2]
shl ecx, 1
mov edx, ecx
sar ecx, 0x1f
shr ecx, 0x1d
add ecx, edx
sar ecx, 3
lea edx, [0x6b4b60]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00437440
mov eax, dword [esp + 0x14]
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov dword [esp + 0x94], edx
mov ebx, dword [0x872080]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x18], ecx
call fcn.004f87b0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
test edx, edx
jne 0x4fe027
mov ecx, dword [esp + 0x60]
cmp eax, ecx
ja 0x4fe020
mov edx, dword [esp + 0x6c]
mov dword [esp], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x34]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x94]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
call fcn.0048f4f0
jmp 0x4fcc8f
call fcn.004246e0
ud2
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.004f9520
jmp 0x4fcc8f
mov eax, dword [esp + 0x44]
mov edx, eax
sar eax, 0x1f
shr eax, 0x1e
lea ebx, [eax + edx]
sar ebx, 2
lea ecx, [ebx + ebx*2]
mov eax, edx
jmp 0x4fdf72
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
call fcn.00490190
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x9c], ecx
lea edx, [0x6dc220]
mov dword [esp], edx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x98], eax
mov dword [eax + 4], 6
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4fe12e
lea ecx, [0x705434]
mov dword [eax], ecx
mov ecx, dword [esp + 0x9c]
mov dword [eax + 8], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0xc]
test ecx, ecx
jne 0x4fe112
mov ecx, dword [esp + 0xa0]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0x10], edx
sar edx, 0x1f
mov dword [eax + 0x14], edx
mov dword [esp], ecx
lea ecx, [0x847c60]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f9520
jmp 0x4fcc8f
mov dword [esp], edx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fe0e4
mov dword [esp], eax
lea ecx, [0x705434]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fe0c3
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov esi, dword [esp + 0x70]
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
call fcn.0048ee00
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x4fe213
mov dword [esp], 0
mov eax, dword [esp + 0x88]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0xc], eax
call fcn.0043a9c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xac], ecx
mov dword [esp + 0xb0], eax
lea eax, [0x6b4960]
mov dword [esp], eax
lea eax, [esp + 0xac]
mov dword [esp + 4], eax
call fcn.0040a880
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00490f20
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x6c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x34]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
call fcn.0048f3c0
jmp 0x4fcc8f
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
call fcn.00490190
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x9c], ecx
lea edx, [0x6dc220]
mov dword [esp], edx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x98], eax
mov dword [eax + 4], 6
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4fe2e2
lea ecx, [0x705434]
mov dword [eax], ecx
mov ecx, dword [esp + 0xa0]
mov dword [eax + 8], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0xc]
test ecx, ecx
jne 0x4fe2c6
mov ecx, dword [esp + 0x9c]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0x10], edx
sar edx, 0x1f
mov dword [eax + 0x14], edx
mov dword [esp], ecx
lea ecx, [0x847c60]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f9520
jmp 0x4fcc8f
mov dword [esp], edx
mov ecx, dword [esp + 0x9c]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fe298
mov dword [esp], eax
lea ecx, [0x705434]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x98]
jmp 0x4fe277
movzx eax, byte [esp + 0x1dc]
test al, al
je 0x4fe44e
mov eax, dword [esp + 0x1c4]
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0x1c8]
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0x1cc]
mov dword [esp + 0xe0], eax
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov ebp, dword [esp + 0x70]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x34]
mov dword [esp + 8], esi
call fcn.00490190
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x4fe36c
mov ecx, dword [ecx + 4]
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x14c], 0
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], 0
lea edx, [0x6a56a0]
mov dword [esp], edx
lea edx, [esp + 0xd8]
mov dword [esp + 4], edx
call fcn.0040a880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x14c], ecx
mov dword [esp + 0x150], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x154], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x158], eax
lea eax, [0x717e9b]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0x14c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.0049a940
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f94c0
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0x48]
jmp 0x4fddb0
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
mov ebp, dword [0x8727ac]
mov esi, dword [0x8727a8]
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
call fcn.004f94c0
jmp 0x4fe43a
cmp cl, 0x6e
jne 0x4fe650
movzx edx, byte [esp + 0x1dc]
test dl, dl
je 0x4fe5e1
mov edx, dword [esp + 0x1c8]
cmp edx, 4
je 0x4fe5b1
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], edx
mov eax, dword [esp + 0x1cc]
mov dword [esp + 0x104], eax
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
call fcn.00490190
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xa0], ecx
test eax, eax
je 0x4fe4de
mov eax, dword [eax + 4]
mov dword [esp + 0x9c], eax
mov dword [esp + 0x17c], 0
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], 0
lea edx, [0x6a56a0]
mov dword [esp], edx
lea edx, [esp + 0xfc]
mov dword [esp + 4], edx
call fcn.0040a880
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x184], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x188], eax
lea eax, [0x717e9b]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0x17c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.0049a940
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f9520
jmp 0x4fcc8f
cmp cl, 0x6e
jne 0x4fe49c
movzx ecx, byte [eax + 1]
cmp cl, 0x75
jne 0x4fe49c
movzx ecx, byte [eax + 2]
cmp cl, 0x6c
jne 0x4fe49c
movzx ecx, byte [eax + 3]
cmp cl, 0x6c
jne 0x4fe49c
mov eax, ebp
and ebp, 0x1f
lea ecx, [ebp - 0x14]
cmp ecx, 3
jbe 0x4fe5f3
jmp 0x4fcc8f
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], eax
call fcn.00490190
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00491010
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0x6c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x34]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
call fcn.0048f3c0
jmp 0x4fcc8f
cmp cl, 0x74
jne 0x4fd0df
jmp 0x4fcb56
mov ecx, dword [ecx + 0x14]
mov edx, dword [esp + 0x1c4]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x1c8]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x1cc]
mov dword [esp + 0xc], edx
mov dword [esp], eax
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
test eax, eax
jne 0x4fe69a
add esp, 0x1bc
ret
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004f94c0
jmp 0x4fe693
call fcn.004486b0
jmp fcn.004fc4b0