Function at 0x4cc0c0
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 0x4ce64f
sub esp, 0x1bc
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xb0]
mov edx, dword [eax + 0xac]
test edx, edx
jne 0x4ce624
movzx ecx, byte [eax + 0x88]
test cl, cl
jne 0x4ce571
mov dword [esp], eax
call fcn.004ce990
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x4ce533
cmp al, 0x3c
jne 0x4ce41f
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
call fcn.004ceac0
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x4ce3e1
cmp al, 0x21
je 0x4cd9ec
cmp al, 0x2f
je 0x4cd687
cmp al, 0x3f
je 0x4ccba3
cmp al, 0xa
jne 0x4ccb97
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xb4]
dec edx
mov dword [ecx + 0xb4], edx
movzx eax, al
mov dword [ecx + 0xa4], eax
mov eax, dword [ecx + 0xb8]
add eax, 0xffffffff
mov edx, dword [ecx + 0xbc]
mov dword [ecx + 0xb8], eax
adc edx, 0xffffffff
mov dword [ecx + 0xbc], edx
mov dword [esp], ecx
call fcn.004cfca0
mov eax, dword [esp + 8]
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 4]
mov dword [esp + 0x90], ecx
movzx edx, byte [esp + 0x14]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x44], ebx
mov ebp, dword [esp + 0xc]
mov dword [esp + 0x9c], ebp
test dl, dl
je 0x4ccab4
lea edx, [0x6a8c20]
mov dword [esp], edx
call fcn.0040cd70
mov eax, dword [esp + 4]
xor ecx, ecx
xor edx, edx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x6c], edx
mov dword [esp + 0xcc], eax
mov ebx, dword [esp + 0x1c0]
mov dword [esp], ebx
call fcn.004ce8f0
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
call fcn.004ceac0
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x4cca76
cmp al, 0x2f
je 0x4cc936
cmp al, 0x3e
je 0x4cc7d0
cmp al, 0xa
jne 0x4cc7c4
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xb4]
dec edx
mov dword [ecx + 0xb4], edx
movzx eax, al
mov dword [ecx + 0xa4], eax
mov eax, dword [ecx + 0xb8]
add eax, 0xffffffff
mov edx, dword [ecx + 0xbc]
mov dword [ecx + 0xb8], eax
adc edx, 0xffffffff
mov dword [ecx + 0xbc], edx
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x70]
cmp eax, edx
jl 0x4cc7b6
mov ebx, edx
shl edx, 1
test edx, edx
jne 0x4cc2b3
mov edx, 4
lea ebp, [0x6c8280]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.00437440
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x8c], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x34], edx
lea ebx, [0x6c8280]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x14], eax
mov ebp, dword [esp + 0x70]
mov dword [esp + 0x18], ebp
call fcn.0040d910
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x34]
mov dword [esp + 0xcc], eax
mov dword [esp + 0x70], ecx
mov edx, dword [esp + 0x6c]
lea ebx, [edx + 1]
mov dword [esp + 0x7c], ebx
cmp ebx, ecx
ja 0x4cc7af
cmp edx, ebx
jae 0x4cc7a8
mov ebp, dword [esp + 0x1c0]
mov dword [esp], ebp
call fcn.004cfca0
mov eax, dword [esp + 0x6c]
lea eax, [eax + eax*2]
mov dword [esp + 0x78], eax
mov ecx, eax
shl eax, 3
mov dword [esp + 0x74], eax
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xc]
mov dword [esp + 0xc8], ebx
mov ebp, dword [esp + 8]
mov esi, dword [esp + 4]
movzx edi, byte [esp + 0x14]
xchg edi, eax
mov byte [esp + 0x27], al
xchg edi, eax
mov edi, dword [esp + 0xcc]
mov dword [edi + eax + 4], ebp
mov dword [edi + eax + 0xc], edx
mov edx, dword [0x884700]
lea ebp, [edi + ecx*8]
lea ecx, [edi + ecx*8 + 8]
mov dword [esp + 0xc4], ecx
test edx, edx
jne 0x4cc772
mov dword [edi + eax], esi
mov dword [edi + eax + 8], ebx
movzx ecx, byte [esp + 0x27]
test cl, cl
je 0x4cc68f
mov ecx, dword [esp + 0x1c0]
mov dword [esp], ecx
call fcn.004ce8f0
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
call fcn.004ceac0
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x4cc651
cmp al, 0x3d
je 0x4cc57d
mov ecx, dword [esp + 0x1c0]
movzx edx, byte [ecx]
test dl, dl
jne 0x4cc4ab
cmp al, 0xa
jne 0x4cc427
mov edx, dword [ecx + 0xb4]
dec edx
mov dword [ecx + 0xb4], edx
movzx eax, al
mov dword [ecx + 0xa4], eax
mov eax, dword [ecx + 0xb8]
add eax, 0xffffffff
mov edx, dword [ecx + 0xbc]
mov dword [ecx + 0xb8], eax
adc edx, 0xffffffff
mov dword [ecx + 0xbc], edx
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0xcc]
mov ebx, dword [edx + eax + 0xc]
mov ebp, dword [edx + eax + 8]
mov dword [edx + eax + 0x14], ebx
mov ebx, dword [0x884700]
mov esi, dword [esp + 0x78]
lea esi, [edx + esi*8 + 0x10]
test ebx, ebx
jne 0x4cc48f
mov dword [edx + eax + 0x10], ebp
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x7c]
mov eax, dword [esp + 0xcc]
jmp 0x4cc201
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040d5a0
mov ecx, dword [esp + 0x1c0]
mov edx, dword [esp + 0xcc]
jmp 0x4cc47b
lea eax, [0x6c8340]
mov dword [esp], eax
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0xc0], eax
mov dword [eax + 4], 0x23
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4cc55f
lea ecx, [0x71156d]
mov dword [eax], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xb4]
mov dword [eax + 8], edx
lea edx, [0x847ca0]
mov dword [ecx + 0xac], edx
mov edx, dword [0x884700]
lea ebx, [ecx + 0xb0]
test edx, edx
jne 0x4cc54a
mov dword [ecx + 0xb0], eax
mov eax, dword [ecx + 0xac]
mov ecx, dword [ecx + 0xb0]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ecx, dword [esp + 0x1c0]
jmp 0x4cc513
mov dword [esp], eax
lea ecx, [0x71156d]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0xc0]
jmp 0x4cc4e1
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
call fcn.004ce8f0
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
call fcn.004ce660
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
test edx, edx
je 0x4cc613
mov dword [esp], 0
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.0043a9c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x74]
mov ebx, dword [esp + 0xcc]
mov dword [ebx + edx + 0x14], eax
mov eax, dword [0x884700]
mov ebp, dword [esp + 0x78]
lea ebp, [ebx + ebp*8 + 0x10]
test eax, eax
jne 0x4cc5fe
mov dword [ebx + edx + 0x10], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, ebx
jmp 0x4cc47b
mov dword [esp], ebp
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov ebx, dword [esp + 0xcc]
jmp 0x4cc5f0
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xac]
mov eax, dword [eax + 0xb0]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1bc
ret
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xac]
test ecx, ecx
je 0x4cc6d7
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
lea ecx, [0x6c8340]
mov dword [esp], ecx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0xc0], eax
mov dword [eax + 4], 0x22
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4cc757
lea ecx, [0x711014]
mov dword [eax], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xb4]
mov dword [eax + 8], edx
lea edx, [0x847ca0]
mov dword [ecx + 0xac], edx
mov edx, dword [0x884700]
lea ebx, [ecx + 0xb0]
test edx, edx
jne 0x4cc742
mov dword [ecx + 0xb0], eax
mov eax, ecx
jmp 0x4cc6a0
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ecx, dword [esp + 0x1c0]
jmp 0x4cc73b
mov dword [esp], eax
lea ecx, [0x711014]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0xc0]
jmp 0x4cc709
mov dword [esp], ebp
mov dword [esp + 4], esi
call fcn.0040d5a0
mov eax, dword [esp + 0xc4]
mov dword [esp], eax
mov eax, dword [esp + 0xc8]
mov dword [esp + 4], eax
call fcn.0040d5a0
mov eax, dword [esp + 0x74]
mov edi, dword [esp + 0xcc]
jmp 0x4cc3bd
call fcn.00424680
ud2
call fcn.004246e0
ud2
mov eax, dword [esp + 0xcc]
mov ecx, edx
jmp 0x4cc320
mov ecx, dword [esp + 0x1c0]
jmp 0x4cc26f
xor eax, eax
test al, al
je 0x4cc91b
mov ecx, dword [esp + 0x1c0]
mov byte [ecx + 0x88], 1
mov edx, dword [esp + 0x38]
mov dword [ecx + 0x90], edx
mov ebx, dword [esp + 0x44]
mov dword [ecx + 0x98], ebx
mov ebp, dword [0x884700]
lea esi, [ecx + 0x8c]
mov eax, esi
lea esi, [ecx + 0x94]
mov dword [esp + 0xc4], esi
test ebp, ebp
jne 0x4cc8d3
mov ebp, dword [esp + 0x90]
mov dword [ecx + 0x8c], ebp
mov esi, dword [esp + 0x9c]
mov dword [ecx + 0x94], esi
lea edi, [esp + 0x174]
xor eax, eax
call fcn.0044a379
mov dword [esp + 0x174], ebp
mov dword [esp + 0x178], edx
mov dword [esp + 0x17c], esi
mov dword [esp + 0x180], ebx
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0x184], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x188], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x18c], ecx
lea ecx, [0x6db520]
mov dword [esp], ecx
lea ecx, [esp + 0x174]
mov dword [esp + 4], ecx
call fcn.0040a880
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov dword [esp + 0x1c4], edx
mov dword [esp + 0x1c8], ecx
mov dword [esp + 0x1cc], 0
mov dword [esp + 0x1d0], 0
add esp, 0x1bc
ret
mov dword [esp], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 4], eax
call fcn.0040d5a0
mov eax, dword [esp + 0xc4]
mov dword [esp], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 4], eax
call fcn.0040d5a0
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 0x90]
mov esi, dword [esp + 0x9c]
jmp 0x4cc839
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 0x90]
mov esi, dword [esp + 0x9c]
jmp 0x4cc839
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
call fcn.004ceac0
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x4cca38
cmp al, 0x3e
jne 0x4cc966
mov eax, 1
jmp 0x4cc7d2
lea eax, [0x6c8340]
mov dword [esp], eax
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0xc0], eax
mov dword [eax + 4], 0x16
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4cca1a
lea ecx, [0x70b71b]
mov dword [eax], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xb4]
mov dword [eax + 8], edx
lea edx, [0x847ca0]
mov dword [ecx + 0xac], edx
mov edx, dword [0x884700]
lea ebx, [ecx + 0xb0]
test edx, edx
jne 0x4cca05
mov dword [ecx + 0xb0], eax
mov eax, dword [ecx + 0xb0]
mov ecx, dword [ecx + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1bc
ret
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ecx, dword [esp + 0x1c0]
jmp 0x4cc9ce
mov dword [esp], eax
lea ecx, [0x70b71b]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0xc0]
jmp 0x4cc99c
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xac]
mov eax, dword [eax + 0xb0]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1bc
ret
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xac]
test ecx, ecx
je 0x4ccafc
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
lea ecx, [0x6c8340]
mov dword [esp], ecx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0xc0], eax
mov dword [eax + 4], 0x1d
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4ccb7c
lea ecx, [0x70ed2a]
mov dword [eax], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xb4]
mov dword [eax + 8], edx
lea edx, [0x847ca0]
mov dword [ecx + 0xac], edx
mov edx, dword [0x884700]
lea ebx, [ecx + 0xb0]
test edx, edx
jne 0x4ccb67
mov dword [ecx + 0xb0], eax
mov eax, ecx
jmp 0x4ccac5
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ecx, dword [esp + 0x1c0]
jmp 0x4ccb60
mov dword [esp], eax
lea ecx, [0x70ed2a]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0xc0]
jmp 0x4ccb2e
mov ecx, dword [esp + 0x1c0]
jmp 0x4cc189
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
call fcn.004cfd90
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x30], ecx
mov edx, dword [esp + 4]
mov dword [esp + 0x80], edx
test al, al
je 0x4cd5a4
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
call fcn.004ce8f0
mov eax, dword [esp + 0x1c0]
lea ecx, [eax + 0x28]
mov dword [esp + 0xbc], ecx
mov dword [esp], ecx
call fcn.004b12e0
xor eax, eax
mov byte [esp + 0x2c], al
mov ecx, dword [esp + 0x1c0]
mov dword [esp], ecx
call fcn.004ceac0
movzx eax, byte [esp + 4]
mov byte [esp + 0x2f], al
movzx ecx, byte [esp + 5]
test cl, cl
je 0x4cd566
mov ecx, dword [esp + 0xbc]
mov dword [esp], ecx
mov byte [esp + 4], al
call fcn.004b1b10
movzx eax, byte [esp + 0x2c]
cmp al, 0x3f
jne 0x4cd55c
movzx ecx, byte [esp + 0x2f]
cmp cl, 0x3e
je 0x4ccc54
mov eax, ecx
jmp 0x4ccbfc
mov ecx, dword [esp + 0xbc]
test byte [ecx], al
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0x34]
mov ebx, dword [ecx + 0x2c]
mov ebp, dword [ecx + 0x28]
mov esi, dword [ecx + 0x30]
cmp edx, ebx
ja 0x4cd555
sub ebx, edx
sub esi, edx
mov dword [esp + 0x64], esi
lea ecx, [esi - 1]
sar ecx, 0x1f
xor ecx, 0xffffffff
and edx, ecx
lea ecx, [edx + ebp]
mov dword [esp + 0xac], ecx
lea edx, [ebx - 2]
mov dword [esp + 0x60], edx
cmp edx, esi
ja 0x4cd54e
mov ebx, dword [esp + 0x30]
cmp ebx, 3
jne 0x4cd540
mov ebp, dword [esp + 0x80]
mov edi, esi
movzx esi, byte [ebp]
xchg esi, eax
cmp al, 0x78
xchg esi, eax
jne 0x4cccdf
movzx esi, byte [ebp + 1]
xchg esi, eax
cmp al, 0x6d
xchg esi, eax
jne 0x4cccdf
movzx esi, byte [ebp + 2]
xchg esi, eax
cmp al, 0x6c
xchg esi, eax
je 0x4ccd67
mov eax, edi
lea edi, [esp + 0x160]
mov esi, eax
xor eax, eax
call fcn.0044a37b
mov dword [esp + 0x160], ebp
mov dword [esp + 0x164], ebx
mov ecx, dword [esp + 0xac]
mov dword [esp + 0x168], ecx
mov dword [esp + 0x16c], edx
mov dword [esp + 0x170], esi
lea ecx, [0x6d58a0]
mov dword [esp], ecx
lea ecx, [esp + 0x160]
mov dword [esp + 4], ecx
call fcn.0040a880
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov dword [esp + 0x1c4], edx
mov dword [esp + 0x1c8], ecx
mov dword [esp + 0x1cc], 0
mov dword [esp + 0x1d0], 0
add esp, 0x1bc
ret
mov dword [esp], 0
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], edi
call fcn.0043a9c0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xb0], ecx
lea edx, [0x705940]
mov dword [esp], edx
mov dword [esp + 4], 7
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.004d0c70
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
test eax, eax
je 0x4cceea
cmp eax, 3
je 0x4ccec4
mov dword [esp + 0xf0], ecx
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
lea eax, [0x6b4960]
mov dword [esp], eax
lea eax, [esp + 0xf0]
mov dword [esp + 4], eax
call fcn.0040a880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0xf8], ecx
mov dword [esp + 0xfc], eax
lea eax, [0x716e78]
mov dword [esp], eax
mov dword [esp + 4], 0x3a
lea eax, [esp + 0xf8]
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 [edx + 0xac], ecx
mov ecx, dword [0x884700]
lea ebx, [edx + 0xb0]
test ecx, ecx
jne 0x4cceaf
mov dword [edx + 0xb0], eax
mov eax, dword [edx + 0xb0]
mov ecx, dword [edx + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1bc
ret
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov edx, dword [esp + 0x1c0]
jmp 0x4cce78
movzx edx, byte [ecx]
cmp dl, 0x31
jne 0x4ccdc9
movzx edx, byte [ecx + 1]
cmp dl, 0x2e
jne 0x4ccdc9
movzx edx, byte [ecx + 2]
cmp dl, 0x30
jne 0x4ccdc9
lea eax, [0x705d23]
mov dword [esp], eax
mov dword [esp + 4], 8
mov eax, dword [esp + 0xb0]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc], eax
call fcn.004d0c70
mov eax, dword [esp + 0x14]
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xa8], ecx
test eax, eax
je 0x4ccf60
cmp eax, 5
je 0x4cd4e8
je 0x4cd4a3
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x704f9a]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 5
call fcn.004bb360
movzx eax, byte [esp + 0x10]
test al, al
je 0x4ccf7f
mov ecx, dword [esp + 0xac]
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x80]
mov edi, dword [esp + 0x64]
jmp 0x4cccdf
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0x14]
test ecx, ecx
je 0x4cd39d
mov ecx, dword [eax + 0x24]
mov edx, dword [eax + 0x20]
lea ebx, [0x6bed80]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0040aa10
mov eax, dword [esp + 0x1c0]
mov edx, dword [eax + 0x14]
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0xa8]
mov dword [esp], ebp
mov esi, dword [esp + 0x58]
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov ecx, dword [edx]
call ecx
mov eax, dword [esp + 0x14]
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x84], ecx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0xa4], edx
mov ebx, dword [esp + 0x18]
test ebx, ebx
je 0x4cd159
mov eax, dword [esp + 0xa8]
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0xdc], eax
je 0x4cd152
mov eax, dword [ebx + 4]
mov dword [esp + 0xcc], eax
mov dword [esp + 0x130], 0
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], 0
mov dword [esp + 0x13c], 0
lea ecx, [0x6b4960]
mov dword [esp], ecx
lea ecx, [esp + 0xd8]
mov dword [esp + 4], ecx
call fcn.0040a880
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x130], eax
mov dword [esp + 0x134], ecx
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x138], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x13c], eax
lea eax, [0x70e1ce]
mov dword [esp], eax
mov dword [esp + 4], 0x1b
lea eax, [esp + 0x130]
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 [edx + 0xac], ecx
mov ecx, dword [0x884700]
lea ebx, [edx + 0xb0]
test ecx, ecx
jne 0x4cd13d
mov dword [edx + 0xb0], eax
mov eax, dword [edx + 0xb0]
mov ecx, dword [edx + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1bc
ret
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov edx, dword [esp + 0x1c0]
jmp 0x4cd106
mov eax, ebx
jmp 0x4cd02c
test ecx, ecx
je 0x4cd327
lea edx, [0x6bec60]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0040ab90
movzx eax, byte [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test al, al
je 0x4cd1b8
mov ebx, dword [esp + 0x1c0]
mov dword [ebx + 0x20], edx
mov edx, dword [0x884700]
lea ebp, [ebx + 0x24]
test edx, edx
jne 0x4cd1a7
mov dword [ebx + 0x24], ecx
jmp 0x4ccf60
mov dword [esp], ebp
mov dword [esp + 4], ecx
call fcn.0040d5a0
jmp 0x4ccf60
mov ecx, dword [esp + 0x84]
test ecx, ecx
je 0x4cd320
mov edx, dword [ecx + 4]
lea ebx, [0x6f77c0]
cmp ebx, edx
jne 0x4cd316
mov eax, dword [esp + 0x88]
jne 0x4cd222
mov edx, dword [eax + 4]
cmp edx, 0x1000
jl 0x4cd222
lea ecx, [0x847ac0]
mov edx, dword [esp + 0x1c0]
mov dword [edx + 0x20], ecx
mov ecx, dword [0x884700]
lea ebx, [edx + 0x24]
test ecx, ecx
jne 0x4cd211
mov dword [edx + 0x24], eax
jmp 0x4ccf60
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
jmp 0x4ccf60
lea eax, [0x6e3f00]
mov dword [esp], eax
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0xb4], eax
lea ecx, [0x6b4b60]
mov dword [esp], ecx
mov dword [esp + 4], 0x1000
mov dword [esp + 8], 0x1000
call fcn.00437440
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xb8], ecx
mov edx, dword [esp + 0x14]
lea edi, [esp + 0x190]
mov ebx, eax
xor eax, eax
call fcn.0044a375
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0x190], ecx
mov dword [esp + 0x194], ebx
mov dword [esp + 0x198], edx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x19c], ecx
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x1a0], ecx
mov dword [esp + 0x1b4], 0xffffffff
mov dword [esp + 0x1b8], 0xffffffff
mov edi, dword [esp + 0xb4]
test byte [edi], al
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4cd2f5
lea esi, [esp + 0x190]
call fcn.0044a822
mov eax, dword [esp + 0xb4]
jmp 0x4cd1ec
lea ecx, [0x6e3f00]
mov dword [esp], ecx
mov dword [esp + 4], edi
lea ecx, [esp + 0x190]
mov dword [esp + 8], ecx
call fcn.0040d6b0
xor eax, eax
jmp 0x4cd2e9
mov eax, 0
jmp 0x4cd1df
mov edx, ecx
jmp 0x4cd1ca
mov dword [esp], 0
lea eax, [0x714e3c]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x30
mov eax, dword [esp + 0xa8]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x10], eax
call fcn.0043a840
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xd0], eax
mov dword [esp + 0xd4], ecx
lea eax, [0x6b4960]
mov dword [esp], eax
lea eax, [esp + 0xd0]
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.004254e0
ud2
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0xe0], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 0xe4], ecx
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 0
lea ecx, [0x6b4960]
mov dword [esp], ecx
lea ecx, [esp + 0xe0]
mov dword [esp + 4], ecx
call fcn.0040a880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0xe8], ecx
mov dword [esp + 0xec], eax
lea eax, [0x716e3e]
mov dword [esp], eax
mov dword [esp + 4], 0x3a
lea eax, [esp + 0xe8]
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 [edx + 0xac], ecx
mov ecx, dword [0x884700]
lea ebx, [edx + 0xb0]
test ecx, ecx
jne 0x4cd48e
mov dword [edx + 0xb0], eax
mov eax, dword [edx + 0xb0]
mov ecx, dword [edx + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1bc
ret
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov edx, dword [esp + 0x1c0]
jmp 0x4cd457
movzx edx, byte [ecx]
cmp dl, 0x55
jne 0x4ccf39
movzx edx, byte [ecx + 1]
cmp dl, 0x54
jne 0x4ccf39
movzx edx, byte [ecx + 2]
cmp dl, 0x46
jne 0x4ccf39
movzx edx, byte [ecx + 3]
cmp dl, 0x2d
jne 0x4ccf39
movzx edx, byte [ecx + 4]
cmp dl, 0x38
je 0x4ccf60
jmp 0x4ccf39
movzx edx, byte [ecx]
cmp dl, 0x75
je 0x4cd4f8
cmp eax, 5
jmp 0x4ccf33
movzx edx, byte [ecx + 1]
cmp dl, 0x74
je 0x4cd509
cmp eax, 5
jmp 0x4ccf33
movzx edx, byte [ecx + 2]
cmp dl, 0x66
je 0x4cd51a
cmp eax, 5
jmp 0x4ccf33
movzx edx, byte [ecx + 3]
cmp dl, 0x2d
je 0x4cd52b
cmp eax, 5
jmp 0x4ccf33
movzx edx, byte [ecx + 4]
cmp dl, 0x38
je 0x4ccf60
cmp eax, 5
jmp 0x4ccf33
mov ebp, dword [esp + 0x80]
mov edi, esi
jmp 0x4cccdf
call fcn.004246e0
ud2
call fcn.004246e0
ud2
movzx ecx, byte [esp + 0x2f]
jmp 0x4ccc50
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xac]
test ecx, ecx
je 0x4cd5ec
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
lea ecx, [0x6c8340]
mov dword [esp], ecx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0xc0], eax
mov dword [eax + 4], 0x1d
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4cd66c
lea ecx, [0x70ed47]
mov dword [eax], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xb4]
mov dword [eax + 8], edx
lea edx, [0x847ca0]
mov dword [ecx + 0xac], edx
mov edx, dword [0x884700]
lea ebx, [ecx + 0xb0]
test edx, edx
jne 0x4cd657
mov dword [ecx + 0xb0], eax
mov eax, ecx
jmp 0x4cd5b5
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ecx, dword [esp + 0x1c0]
jmp 0x4cd650
mov dword [esp], eax
lea ecx, [0x70ed47]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0xc0]
jmp 0x4cd61e
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
call fcn.004cfca0
movzx eax, byte [esp + 0x14]
mov ecx, dword [esp + 8]
mov dword [esp + 0x3c], ecx
mov edx, dword [esp + 4]
mov dword [esp + 0x94], edx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x40], ebx
mov ebp, dword [esp + 0xc]
mov dword [esp + 0x98], ebp
test al, al
jne 0x4cd7ac
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xac]
test ecx, ecx
je 0x4cd711
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
lea ecx, [0x6c8340]
mov dword [esp], ecx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0xc0], eax
mov dword [eax + 4], 0x1e
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4cd791
lea ecx, [0x70f4ed]
mov dword [eax], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xb4]
mov dword [eax + 8], edx
lea edx, [0x847ca0]
mov dword [ecx + 0xac], edx
mov edx, dword [0x884700]
lea ebx, [ecx + 0xb0]
test edx, edx
jne 0x4cd77c
mov dword [ecx + 0xb0], eax
mov eax, ecx
jmp 0x4cd6da
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ecx, dword [esp + 0x1c0]
jmp 0x4cd775
mov dword [esp], eax
lea ecx, [0x70f4ed]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0xc0]
jmp 0x4cd743
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
call fcn.004ce8f0
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
call fcn.004ceac0
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x4cd9ae
cmp al, 0x3e
je 0x4cd90f
mov dword [esp], 0
lea eax, [0x70ee69]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x1d
mov eax, dword [esp + 0x98]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x10], eax
lea eax, [0x704fc6]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 6
call fcn.0043a8a0
mov eax, dword [esp + 0x20]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xa0], ecx
lea edx, [0x6c8340]
mov dword [esp], edx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0xc0], eax
mov ecx, dword [esp + 0x48]
mov dword [eax + 4], ecx
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4cd8f0
mov ecx, dword [esp + 0xa0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xb4]
mov dword [eax + 8], edx
lea edx, [0x847ca0]
mov dword [ecx + 0xac], edx
mov edx, dword [0x884700]
lea ebx, [ecx + 0xb0]
test edx, edx
jne 0x4cd8db
mov dword [ecx + 0xb0], eax
mov eax, dword [ecx + 0xac]
mov ecx, dword [ecx + 0xb0]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ecx, dword [esp + 0x1c0]
jmp 0x4cd8a4
mov dword [esp], eax
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0xc0]
jmp 0x4cd872
mov dword [esp + 0x140], 0
mov dword [esp + 0x144], 0
mov dword [esp + 0x14c], 0
mov eax, dword [esp + 0x94]
mov dword [esp + 0x140], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x144], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x148], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x14c], eax
lea eax, [0x6c1480]
mov dword [esp], eax
lea eax, [esp + 0x140]
mov dword [esp + 4], eax
call fcn.0040a880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x1c4], ecx
mov dword [esp + 0x1c8], eax
mov dword [esp + 0x1cc], 0
mov dword [esp + 0x1d0], 0
add esp, 0x1bc
ret
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
call fcn.004ceac0
movzx eax, byte [esp + 4]
mov byte [esp + 0x2e], al
movzx ecx, byte [esp + 5]
test cl, cl
je 0x4ce3a3
cmp al, 0x2d
je 0x4ce015
cmp al, 0x5b
jne 0x4cdc5c
xor eax, eax
mov dword [esp + 0x54], eax
cmp eax, 6
jge 0x4cda7a
mov ecx, dword [esp + 0x1c0]
mov dword [esp], ecx
call fcn.004ceac0
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x4cdc1e
mov ecx, dword [esp + 0x54]
cmp ecx, 6
jae 0x4cdc17
lea edx, [0x705074]
movzx ebx, byte [edx + ecx]
cmp al, bl
jne 0x4cdb45
lea eax, [ecx + 1]
mov dword [esp + 0x54], eax
cmp eax, 6
jl 0x4cda2e
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
mov dword [esp + 4], 0xffffffff
mov byte [esp + 8], 1
call fcn.004cec00
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test edx, edx
je 0x4cdb07
mov dword [esp + 0x10c], edx
mov dword [esp + 0x110], ecx
mov dword [esp + 0x114], eax
lea eax, [0x6bdac0]
mov dword [esp], eax
lea eax, [esp + 0x10c]
mov dword [esp + 4], eax
call fcn.0040a880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x1c4], ecx
mov dword [esp + 0x1c8], eax
mov dword [esp + 0x1cc], 0
mov dword [esp + 0x1d0], 0
add esp, 0x1bc
ret
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xac]
mov eax, dword [eax + 0xb0]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1bc
ret
lea eax, [0x6c8340]
mov dword [esp], eax
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0xc0], eax
mov dword [eax + 4], 0x14
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4cdbf9
lea ecx, [0x70a888]
mov dword [eax], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xb4]
mov dword [eax + 8], edx
lea edx, [0x847ca0]
mov dword [ecx + 0xac], edx
mov edx, dword [0x884700]
lea ebx, [ecx + 0xb0]
test edx, edx
jne 0x4cdbe4
mov dword [ecx + 0xb0], eax
mov eax, dword [ecx + 0xb0]
mov ecx, dword [ecx + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1bc
ret
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ecx, dword [esp + 0x1c0]
jmp 0x4cdbad
mov dword [esp], eax
lea ecx, [0x70a888]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0xc0]
jmp 0x4cdb7b
call fcn.00424680
ud2
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xac]
mov eax, dword [eax + 0xb0]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1bc
ret
mov ecx, dword [esp + 0x1c0]
lea edx, [ecx + 0x28]
mov dword [esp + 0xbc], edx
mov dword [esp], edx
call fcn.004b12e0
mov eax, dword [esp + 0xbc]
mov dword [esp], eax
movzx ecx, byte [esp + 0x2e]
mov byte [esp + 4], cl
call fcn.004b1b10
xor eax, eax
xor ecx, ecx
mov byte [esp + 0x28], al
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
call fcn.004ceac0
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x4cdfd7
movzx ecx, byte [esp + 0x28]
test cl, cl
jne 0x4cdfce
cmp al, 0x3e
jne 0x4cdfc5
mov edx, dword [esp + 0x5c]
test edx, edx
je 0x4cdf2c
mov byte [esp + 0x2f], al
mov dword [esp + 0x5c], edx
mov ebx, dword [esp + 0xbc]
mov dword [esp], ebx
mov byte [esp + 4], al
call fcn.004b1b10
movzx eax, byte [esp + 0x2f]
movzx ecx, byte [esp + 0x28]
cmp al, cl
je 0x4cdf21
test cl, cl
jne 0x4cdf16
cmp al, 0x27
je 0x4cdf0d
cmp al, 0x22
je 0x4cdf0d
cmp al, 0x3e
je 0x4cdeff
cmp al, 0x3c
jne 0x4cdef4
xor eax, eax
mov dword [esp + 0x50], eax
cmp eax, 3
jge 0x4cdd95
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
call fcn.004ceac0
movzx eax, byte [esp + 4]
mov byte [esp + 0x2e], al
movzx ecx, byte [esp + 5]
test cl, cl
je 0x4cdeb6
mov ecx, dword [esp + 0x50]
cmp ecx, 3
jae 0x4cdeaf
lea edx, [0x7042dd]
movzx ebx, byte [edx + ecx]
cmp al, bl
jne 0x4cde51
lea eax, [ecx + 1]
movzx ecx, byte [esp + 0x28]
mov dword [esp + 0x50], eax
cmp eax, 3
jl 0x4cdd40
mov eax, dword [esp + 0xbc]
test byte [eax], al
mov edx, dword [esp + 0x1c0]
mov ebx, dword [edx + 0x2c]
mov ebp, dword [edx + 0x34]
mov dword [esp], eax
sub ebx, ebp
dec ebx
mov dword [esp + 4], ebx
call fcn.004b1230
xor eax, eax
xor ecx, ecx
mov byte [esp + 0x29], al
mov byte [esp + 0x2d], cl
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
call fcn.004ceac0
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x4cde13
movzx ecx, byte [esp + 0x2d]
cmp cl, 0x2d
jne 0x4cde0c
movzx ecx, byte [esp + 0x29]
cmp cl, 0x2d
jne 0x4cddbe
cmp al, 0x3e
je 0x4cddfe
jmp 0x4cddbe
movzx eax, byte [esp + 0x28]
mov ecx, dword [esp + 0x5c]
jmp 0x4cdc91
movzx ecx, byte [esp + 0x29]
jmp 0x4cddbe
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
xor ebx, ebx
mov dword [esp + 0x4c], ebx
cmp ebx, ecx
jge 0x4cde97
cmp ebx, 3
jae 0x4cdea8
movzx ebp, byte [edx + ebx]
xchg ebp, eax
mov byte [esp + 4], al
xchg ebp, eax
mov ebp, dword [esp + 0xbc]
mov dword [esp], ebp
call fcn.004b1b10
mov eax, dword [esp + 0x4c]
lea ebx, [eax + 1]
movzx eax, byte [esp + 0x2e]
mov ecx, dword [esp + 0x50]
lea edx, [0x7042dd]
mov dword [esp + 0x4c], ebx
cmp ebx, ecx
jl 0x4cde5b
mov ebx, dword [esp + 0x5c]
inc ebx
movzx ecx, byte [esp + 0x28]
mov edx, ebx
jmp 0x4cdcdc
call fcn.00424680
ud2
call fcn.00424680
ud2
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
mov eax, ecx
mov ecx, dword [esp + 0x5c]
jmp 0x4cdc91
mov edx, dword [esp + 0x5c]
dec edx
mov eax, ecx
mov ecx, edx
jmp 0x4cdc91
mov ecx, dword [esp + 0x5c]
jmp 0x4cdc91
mov eax, ecx
mov ecx, dword [esp + 0x5c]
jmp 0x4cdc91
xor eax, eax
mov ecx, dword [esp + 0x5c]
jmp 0x4cdc91
mov eax, dword [esp + 0xbc]
test byte [eax], al
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0x30]
mov edx, dword [eax + 0x34]
mov ebx, dword [eax + 0x2c]
mov eax, dword [eax + 0x28]
cmp edx, ebx
ja 0x4cdfbe
sub ecx, edx
lea ebp, [ecx - 1]
sar ebp, 0x1f
xor ebp, 0xffffffff
and ebp, edx
add eax, ebp
mov dword [esp + 0x100], eax
sub ebx, edx
mov dword [esp + 0x104], ebx
mov dword [esp + 0x108], ecx
lea eax, [0x6bdb80]
mov dword [esp], eax
lea eax, [esp + 0x100]
mov dword [esp + 4], eax
call fcn.0040a880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x1c4], ecx
mov dword [esp + 0x1c8], eax
mov dword [esp + 0x1cc], 0
mov dword [esp + 0x1d0], 0
add esp, 0x1bc
ret
call fcn.004246e0
ud2
mov edx, dword [esp + 0x5c]
jmp 0x4cdcdc
mov edx, dword [esp + 0x5c]
jmp 0x4cdcdc
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
mov eax, dword [esp + 0x1c0]
mov dword [esp], eax
call fcn.004ceac0
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x4ce365
cmp al, 0x2d
jne 0x4ce293
mov eax, dword [esp + 0x1c0]
lea ecx, [eax + 0x28]
mov dword [esp + 0xbc], ecx
mov dword [esp], ecx
call fcn.004b12e0
xor eax, eax
xor ecx, ecx
mov byte [esp + 0x2a], al
mov byte [esp + 0x2b], cl
mov edx, dword [esp + 0x1c0]
mov dword [esp], edx
call fcn.004ceac0
movzx eax, byte [esp + 4]
mov byte [esp + 0x2f], al
movzx ecx, byte [esp + 5]
test cl, cl
je 0x4ce255
mov ecx, dword [esp + 0xbc]
mov dword [esp], ecx
mov byte [esp + 4], al
call fcn.004b1b10
movzx eax, byte [esp + 0x2b]
cmp al, 0x2d
jne 0x4ce24b
movzx eax, byte [esp + 0x2a]
cmp al, 0x2d
je 0x4ce0c0
movzx eax, byte [esp + 0x2f]
movzx ecx, byte [esp + 0x2a]
jmp 0x4ce05c
movzx eax, byte [esp + 0x2f]
cmp al, 0x3e
jne 0x4ce179
mov eax, dword [esp + 0xbc]
test byte [eax], al
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0x30]
mov edx, dword [eax + 0x2c]
mov ebx, dword [eax + 0x28]
mov eax, dword [eax + 0x34]
cmp eax, edx
ja 0x4ce172
sub edx, eax
sub ecx, eax
lea ebp, [ecx - 1]
sar ebp, 0x1f
xor ebp, 0xffffffff
and eax, ebp
add eax, ebx
add edx, 0xfffffffd
cmp edx, ecx
ja 0x4ce16b
mov dword [esp + 0x118], eax
mov dword [esp + 0x11c], edx
mov dword [esp + 0x120], ecx
lea eax, [0x6bdb20]
mov dword [esp], eax
lea eax, [esp + 0x118]
mov dword [esp + 4], eax
call fcn.0040a880
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x1c4], eax
mov dword [esp + 0x1c8], ecx
mov dword [esp + 0x1cc], 0
mov dword [esp + 0x1d0], 0
add esp, 0x1bc
ret
call fcn.004246e0
ud2
call fcn.004246e0
ud2
lea eax, [0x6c8340]
mov dword [esp], eax
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0xc0], eax
mov dword [eax + 4], 0x2d
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4ce22d
lea ecx, [0x7144da]
mov dword [eax], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xb4]
mov dword [eax + 8], edx
lea edx, [0x847ca0]
mov dword [ecx + 0xac], edx
mov edx, dword [0x884700]
lea ebx, [ecx + 0xb0]
test edx, edx
jne 0x4ce218
mov dword [ecx + 0xb0], eax
mov eax, dword [ecx + 0xac]
mov ecx, dword [ecx + 0xb0]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ecx, dword [esp + 0x1c0]
jmp 0x4ce1e1
mov dword [esp], eax
lea ecx, [0x7144da]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0xc0]
jmp 0x4ce1af
movzx eax, byte [esp + 0x2a]
jmp 0x4ce0b4
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
lea eax, [0x6c8340]
mov dword [esp], eax
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0xc0], eax
mov dword [eax + 4], 0x25
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x4ce347
lea ecx, [0x712201]
mov dword [eax], ecx
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xb4]
mov dword [eax + 8], edx
lea edx, [0x847ca0]
mov dword [ecx + 0xac], edx
mov edx, dword [0x884700]
lea ebx, [ecx + 0xb0]
test edx, edx
jne 0x4ce332
mov dword [ecx + 0xb0], eax
mov eax, dword [ecx + 0xb0]
mov ecx, dword [ecx + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1bc
ret
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ecx, dword [esp + 0x1c0]
jmp 0x4ce2fb
mov dword [esp], eax
lea ecx, [0x712201]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0xc0]
jmp 0x4ce2c9
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xac]
mov eax, dword [eax + 0xb0]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1bc
ret
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xac]
mov eax, dword [eax + 0xb0]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1bc
ret
cmp al, 0xa
jne 0x4ce527
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xb4]
dec edx
mov dword [ecx + 0xb4], edx
movzx eax, al
mov dword [ecx + 0xa4], eax
mov eax, dword [ecx + 0xb8]
add eax, 0xffffffff
mov edx, dword [ecx + 0xbc]
mov dword [ecx + 0xb8], eax
adc edx, 0xffffffff
mov dword [ecx + 0xbc], edx
mov dword [esp], ecx
mov dword [esp + 4], 0xffffffff
mov byte [esp + 8], 0
call fcn.004cec00
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
test ecx, ecx
je 0x4ce4e9
mov dword [esp + 0x124], ecx
mov dword [esp + 0x128], edx
mov dword [esp + 0x12c], eax
lea eax, [0x6bdac0]
mov dword [esp], eax
lea eax, [esp + 0x124]
mov dword [esp + 4], eax
call fcn.0040a880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x1c4], ecx
mov dword [esp + 0x1c8], eax
mov dword [esp + 0x1cc], 0
mov dword [esp + 0x1d0], 0
add esp, 0x1bc
ret
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
mov ecx, dword [esp + 0x1c0]
jmp 0x4ce43c
mov eax, dword [esp + 0x1c0]
mov ecx, dword [eax + 0xb0]
mov eax, dword [eax + 0xac]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
mov byte [eax + 0x88], 0
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], 0
mov dword [esp + 0x15c], 0
mov ecx, dword [eax + 0x90]
mov edx, dword [eax + 0x94]
mov ebx, dword [eax + 0x8c]
mov eax, dword [eax + 0x98]
mov dword [esp + 0x150], ebx
mov dword [esp + 0x154], ecx
mov dword [esp + 0x158], edx
mov dword [esp + 0x15c], eax
lea eax, [0x6c1480]
mov dword [esp], eax
lea eax, [esp + 0x150]
mov dword [esp + 4], eax
call fcn.0040a880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x1c4], ecx
mov dword [esp + 0x1c8], eax
mov dword [esp + 0x1cc], 0
mov dword [esp + 0x1d0], 0
add esp, 0x1bc
ret
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], edx
mov dword [esp + 0x1d0], ecx
add esp, 0x1bc
ret
call fcn.004486b0
jmp fcn.004cc0c0