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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x114]
cmp eax, dword [ecx + 8]
jbe 0x5ce9fd
sub esp, 0x194
mov eax, dword [esp + 0x198]
mov ecx, dword [eax + 0xc4]
mov edx, dword [eax + 0xc8]
test ecx, ecx
jne 0x5ce97a
nop
lea ecx, [eax + 0x10]
mov dword [esp], ecx
call fcn.00467600
mov eax, dword [esp + 0x198]
mov ecx, dword [eax + 0x18c]
mov edx, dword [eax + 0x184]
cmp ecx, edx
setae bl
mov ebp, dword [eax + 0x190]
mov esi, edx
sar edx, 0x1f
cmp ebp, edx
sete dl
xchg ebp, ebx
setg bl
xchg ebp, ebx
and edx, ebx
or ebp, edx
mov edx, dword [esp + 4]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5cc2cb
xor esi, esi
jmp 0x5cc2cd
sub esi, ecx
test esi, esi
jne 0x5ce83d
mov dword [esp + 0x48], edx
lea edi, [eax + 0x180]
mov dword [esp + 0x4c], edi
nop
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cc2f7
xor eax, eax
call fcn.0046336a
jmp 0x5cc309
lea eax, [0x6ad960]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00411030
mov eax, dword [esp + 0x198]
mov dword [eax + 0x194], 0xffffffff
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [esp + 0x100], edx
lea ebx, [0x69e840]
mov dword [esp], ebx
mov dword [esp + 4], ecx
call fcn.004092e0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x198]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x100]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 5
call fcn.005ced40
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x14]
test eax, eax
je 0x5cc556
mov ebp, dword [0x8e68b4]
cmp dword [0x8e68b0], ecx
je 0x5cc38c
xor ecx, ecx
jmp 0x5cc3b9
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x38], eax
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.004037d0
movzx eax, byte [esp + 0xc]
mov ebx, dword [esp + 0x8c]
mov ecx, eax
mov eax, dword [esp + 0x38]
test cl, cl
je 0x5cc3e0
mov ecx, dword [esp + 0x198]
mov edx, dword [ecx + 0x178]
cmp dword [ecx + 0x170], edx
jne 0x5cc3e7
mov eax, dword [0x8e6888]
mov ebx, dword [0x8e688c]
jmp 0x5cc3e7
mov ecx, dword [esp + 0x198]
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x38], eax
lea ecx, [0x6a7600]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
test eax, eax
jne 0x5cc41b
mov eax, 1
jmp 0x5cc42b
mov eax, dword [eax + 0x14]
mov dword [esp], ecx
call eax
movzx eax, byte [esp + 4]
xor eax, 1
test al, al
jne 0x5cc43f
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x38]
jmp 0x5cc541
lea eax, [0x6a7600]
mov dword [esp], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x8c]
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cc4b4
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ebx, dword [0x90e260]
test ebx, ebx
jne 0x5cc49d
mov eax, dword [esp + 0x8c]
mov dword [edx + 0xc8], eax
jmp 0x5cc541
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x8c]
call fcn.004630d0
jmp 0x5cc541
mov dword [esp + 0x100], edx
mov dword [esp + 0xe4], ecx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cc4f3
mov ecx, dword [esp + 0xe4]
mov dword [eax + 4], ecx
jmp 0x5cc506
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xe4]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cc52b
mov dword [edx + 0xc8], eax
jmp 0x5cc536
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x1a0], ecx
mov dword [esp + 0x1a4], eax
add esp, 0x194
ret
mov ebx, dword [esp + 0x198]
mov ebp, dword [ebx + 0x16c]
mov ecx, dword [ebx + 0x170]
mov edx, dword [ebx + 0x174]
mov eax, dword [ebx + 0x178]
cmp ecx, eax
jb 0x5ce9f7
sub edx, eax
mov ecx, edx
neg edx
sar edx, 0x1f
and eax, edx
cmp ecx, 5
jb 0x5ce9eb
movzx ecx, byte [ebp + eax]
mov edx, dword [esp + 0x48]
cmp edx, 1
je 0x5cc5a8
cmp cl, 0x80
je 0x5ce665
mov esi, edx
movzx edx, byte [ebp + eax + 1]
shl edx, 8
mov edi, ecx
movzx ecx, byte [ebp + eax + 2]
or edx, ecx
movzx ecx, byte [ebp + eax + 3]
shl ecx, 8
movzx ebp, byte [ebp + eax + 4]
or ecx, ebp
movzx ebp, byte [ebx + 0x26]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5cc897
mov eax, ecx
movzx ecx, word [ebx + 0x24]
cmp cx, 0x304
je 0x5cc88b
cmp cx, dx
jne 0x5cc5f7
xchg ebp, eax
test al, al
xchg ebp, eax
jmp 0x5cc88f
mov word [esp + 0x2a], dx
mov dword [esp], ebx
mov byte [esp + 4], 0x46
call fcn.005cf040
mov dword [esp + 0x10c], 0
mov dword [esp + 0x110], 0
mov dword [esp + 0x114], 0
mov dword [esp + 0x118], 0
movzx eax, word [esp + 0x2a]
mov word [esp], ax
call fcn.00409060
mov eax, dword [esp + 4]
lea ecx, [0x696b80]
mov dword [esp + 0x10c], ecx
mov dword [esp + 0x110], eax
mov eax, dword [esp + 0x198]
movzx edx, word [eax + 0x24]
mov word [esp], dx
call fcn.00409060
mov eax, dword [esp + 4]
lea ecx, [0x696b80]
mov dword [esp + 0x114], ecx
mov dword [esp + 0x118], eax
lea eax, [0x6e2293]
mov dword [esp], eax
mov dword [esp + 4], 0x39
lea eax, [esp + 0x10c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004c15b0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x30], ecx
lea edi, [esp + 0x14c]
mov edx, eax
xor eax, eax
call fcn.0046336a
mov dword [esp + 0x14c], edx
mov eax, dword [esp + 0x30]
mov dword [esp + 0x150], eax
mov eax, dword [esp + 0x198]
mov ecx, dword [eax + 0x170]
mov edx, dword [eax + 0x16c]
mov ebx, dword [eax + 0x174]
mov ebp, dword [eax + 0x178]
cmp ecx, ebp
jb 0x5ce9e4
sub ecx, ebp
sub ebx, ebp
neg ebx
sar ebx, 0x1f
and ebp, ebx
add edx, ebp
cmp ecx, 5
jl 0x5cc724
mov ecx, 5
lea ebx, [esp + 0x154]
cmp ebx, edx
je 0x5cc73f
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00463a60
lea edi, [esp + 0x17c]
lea esi, [esp + 0x14c]
call fcn.00463844
lea eax, [0x6b4820]
mov dword [esp], eax
lea eax, [esp + 0x17c]
mov dword [esp + 4], eax
call fcn.00408f90
mov eax, dword [esp + 8]
mov dword [esp + 0xfc], eax
lea ecx, [0x6a7600]
mov dword [esp], ecx
lea ecx, [0x75153c]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cc7e8
lea ecx, [0x75153c]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cc7d1
mov eax, dword [esp + 0xfc]
mov dword [edx + 0xc8], eax
jmp 0x5cc86a
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0xfc]
call fcn.004630d0
jmp 0x5cc86a
mov dword [esp + 0x100], edx
mov dword [esp + 0xdc], ecx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cc827
mov ecx, dword [esp + 0xdc]
mov dword [eax + 4], ecx
jmp 0x5cc83a
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xdc]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cc85f
mov dword [edx + 0xc8], eax
jmp 0x5cc86a
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x5cca95
jmp 0x5cc899
mov eax, ecx
xchg edi, eax
cmp al, 0x15
xchg edi, eax
je 0x5cc8a7
xchg edi, eax
cmp al, 0x16
xchg edi, eax
jne 0x5cc8b2
cmp dx, 0x1000
jb 0x5cca95
mov ecx, dword [ebx]
mov dword [esp + 0x40], ecx
mov edx, dword [ebx + 4]
lea edi, [esp + 0x134]
xor eax, eax
call fcn.0046336a
lea ecx, [0x6dff73]
mov dword [esp + 0x134], ecx
mov dword [esp + 0x138], 0x2f
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x144], ecx
mov dword [esp + 0x148], edx
mov ecx, dword [ebx + 0x170]
mov edx, dword [ebx + 0x16c]
mov ebp, dword [ebx + 0x174]
mov eax, dword [ebx + 0x178]
cmp ecx, eax
jb 0x5ce9df
sub ecx, eax
sub ebp, eax
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
add eax, edx
cmp ecx, 5
jl 0x5cc92e
mov ecx, 5
lea edx, [esp + 0x13c]
cmp edx, eax
je 0x5cc949
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00463a60
lea edi, [esp + 0x17c]
lea esi, [esp + 0x134]
call fcn.00463844
lea eax, [0x6b4820]
mov dword [esp], eax
lea eax, [esp + 0x17c]
mov dword [esp + 4], eax
call fcn.00408f90
mov eax, dword [esp + 8]
mov dword [esp + 0xfc], eax
lea ecx, [0x6a7600]
mov dword [esp], ecx
lea ecx, [0x75153c]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cc9f2
lea ecx, [0x75153c]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cc9db
mov eax, dword [esp + 0xfc]
mov dword [edx + 0xc8], eax
jmp 0x5cca74
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0xfc]
call fcn.004630d0
jmp 0x5cca74
mov dword [esp + 0x100], edx
mov dword [esp + 0xd8], ecx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cca31
mov ecx, dword [esp + 0xd8]
mov dword [eax + 4], ecx
jmp 0x5cca44
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xd8]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cca69
mov dword [edx + 0xc8], eax
jmp 0x5cca74
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov dword [esp + 0x44], eax
cmp word [ebx + 0x24], 0x304
jne 0x5ccaad
cmp eax, 0x4100
jg 0x5ccab8
jmp 0x5ccd03
cmp eax, 0x4800
jle 0x5ccd03
mov dword [esp], ebx
mov byte [esp + 4], 0x16
call fcn.005cf040
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call fcn.004090d0
mov eax, dword [esp + 4]
lea ecx, [0x696180]
mov dword [esp + 0x104], ecx
mov dword [esp + 0x108], eax
lea eax, [0x6ddc24]
mov dword [esp], eax
mov dword [esp + 4], 0x28
lea eax, [esp + 0x104]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004c15b0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x2c], ecx
lea edi, [esp + 0x11c]
mov edx, eax
xor eax, eax
call fcn.0046336a
mov dword [esp + 0x11c], edx
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x120], eax
mov eax, dword [esp + 0x198]
mov ecx, dword [eax + 0x170]
mov edx, dword [eax + 0x16c]
mov ebx, dword [eax + 0x174]
mov ebp, dword [eax + 0x178]
cmp ecx, ebp
jb 0x5ce9d8
sub ecx, ebp
sub ebx, ebp
neg ebx
sar ebx, 0x1f
and ebp, ebx
add edx, ebp
cmp ecx, 5
jl 0x5ccb9c
mov ecx, 5
lea ebx, [esp + 0x124]
cmp ebx, edx
je 0x5ccbb7
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00463a60
lea edi, [esp + 0x17c]
lea esi, [esp + 0x11c]
call fcn.00463844
lea eax, [0x6b4820]
mov dword [esp], eax
lea eax, [esp + 0x17c]
mov dword [esp + 4], eax
call fcn.00408f90
mov eax, dword [esp + 8]
mov dword [esp + 0xfc], eax
lea ecx, [0x6a7600]
mov dword [esp], ecx
lea ecx, [0x75153c]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5ccc60
lea ecx, [0x75153c]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ccc49
mov eax, dword [esp + 0xfc]
mov dword [edx + 0xc8], eax
jmp 0x5ccce2
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0xfc]
call fcn.004630d0
jmp 0x5ccce2
mov dword [esp + 0xd4], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ccc9f
mov ecx, dword [esp + 0xd4]
mov dword [eax + 4], ecx
jmp 0x5cccb2
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xd4]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cccd7
mov dword [edx + 0xc8], eax
jmp 0x5ccce2
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov eax, dword [ebx]
mov ecx, dword [ebx + 4]
mov dword [esp + 0x100], ecx
lea edx, [0x69e840]
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.004092e0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x198]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x100]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x44]
add eax, 5
mov dword [esp + 0x44], eax
mov dword [esp + 0xc], eax
call fcn.005ced40
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
test edx, edx
jne 0x5ce4e7
nop
mov ebx, dword [esp + 0x198]
mov byte [ebx + 0x17c], 0
nop
mov edx, dword [ebx + 0x174]
mov ebp, dword [ebx + 0x16c]
mov esi, dword [ebx + 0x170]
mov eax, dword [ebx + 0x178]
sub esi, eax
mov edi, dword [esp + 0x44]
cmp esi, edi
jl 0x5ccd9a
mov esi, edi
lea ecx, [esi + eax]
cmp edx, ecx
jb 0x5ce9d3
cmp eax, ecx
ja 0x5ce9ce
mov dword [ebx + 0x178], ecx
sub edx, eax
mov ecx, edx
neg edx
sar edx, 0x1f
and eax, edx
add eax, ebp
test esi, esi
jle 0x5ccdcb
mov byte [ebx + 0x17c], 0xff
lea edx, [ebx + 0xbc]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], esi
mov dword [esp + 0xc], ecx
call fcn.005ca830
movzx eax, byte [esp + 0x1c]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x24]
test ebp, ebp
je 0x5ccf54
lea eax, [0x751550]
cmp esi, eax
jne 0x5ce9b2
movzx eax, byte [edi]
mov ecx, dword [esp + 0x198]
mov dword [esp], ecx
mov byte [esp + 4], al
call fcn.005cf040
mov eax, dword [esp + 8]
mov dword [esp + 0x100], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x84], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cceb1
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cce9a
mov eax, dword [esp + 0x84]
mov dword [edx + 0xc8], eax
jmp 0x5ccf33
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x84]
call fcn.004630d0
jmp 0x5ccf33
mov dword [esp + 0xcc], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ccef0
mov ecx, dword [esp + 0xcc]
mov dword [eax + 4], ecx
jmp 0x5ccf03
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xcc]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ccf28
mov dword [edx + 0xc8], eax
jmp 0x5ccf33
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
cmp edx, 0x4000
jg 0x5ce3ad
mov ebp, dword [esp + 0x198]
mov esi, dword [ebp + 0xd0]
test esi, esi
jne 0x5ccf7a
cmp al, 0x17
je 0x5ce283
cmp al, 0x15
je 0x5ccf92
cmp al, 0x14
je 0x5ccf92
test edx, edx
je 0x5ccf92
mov dword [ebp + 0x1cc], 0
movzx esi, word [ebp + 0x24]
cmp si, 0x304
jne 0x5cd0ee
cmp al, 0x16
je 0x5cddd7
mov edi, ebx
mov ebx, dword [ebp + 0x19c]
sub ebx, dword [ebp + 0x1a4]
test ebx, ebx
jg 0x5ccfc4
cmp al, 0x15
jmp 0x5cd0f3
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call fcn.005cf040
mov eax, dword [esp + 8]
mov dword [esp + 0x100], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x78], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cd04b
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd037
mov eax, dword [esp + 0x78]
mov dword [edx + 0xc8], eax
jmp 0x5cd0cd
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x78]
call fcn.004630d0
jmp 0x5cd0cd
mov dword [esp + 0x100], edx
mov dword [esp + 0xc0], ecx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd08a
mov ecx, dword [esp + 0xc0]
mov dword [eax + 4], ecx
jmp 0x5cd09d
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xc0]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd0c2
mov dword [edx + 0xc8], eax
jmp 0x5cd0cd
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
cmp al, 0x15
mov edi, ebx
ja 0x5cddcc
cmp al, 0x14
jne 0x5cd736
cmp edx, 1
jne 0x5cd110
cmp byte [ecx], 1
je 0x5cd23a
mov dword [esp], ebp
mov byte [esp + 4], 0x32
call fcn.005cf040
mov eax, dword [esp + 8]
mov dword [esp + 0x100], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x64], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cd197
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd183
mov eax, dword [esp + 0x64]
mov dword [edx + 0xc8], eax
jmp 0x5cd219
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x64]
call fcn.004630d0
jmp 0x5cd219
mov dword [esp + 0xa4], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd1d6
mov ecx, dword [esp + 0xa4]
mov dword [eax + 4], ecx
jmp 0x5cd1e9
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xa4]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd20e
mov dword [edx + 0xc8], eax
jmp 0x5cd219
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov ecx, dword [ebp + 0x19c]
sub ecx, dword [ebp + 0x1a4]
test ecx, ecx
jg 0x5cd60c
cmp si, 0x304
je 0x5cd5db
movzx ecx, byte [esp + 0x19c]
test cl, cl
je 0x5cd4b1
mov ecx, dword [ebp + 0xf8]
mov eax, dword [ebp + 0xfc]
test ecx, ecx
je 0x5cd35b
cmp word [ebp + 0xcc], 0x304
je 0x5cd35b
mov dword [ebp + 0xd0], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd2a4
mov dword [ebp + 0xd4], eax
jmp 0x5cd2af
lea edi, [ebp + 0xd4]
call fcn.004630d0
mov eax, dword [ebp + 0x104]
mov ecx, dword [ebp + 0x100]
mov dword [ebp + 0xd8], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd2d3
mov dword [ebp + 0xdc], eax
jmp 0x5cd2de
lea edi, [ebp + 0xdc]
call fcn.004630d0
mov dword [ebp + 0xf8], 0
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd2fe
mov dword [ebp + 0xfc], 0
jmp 0x5cd30b
lea edi, [ebp + 0xfc]
xor eax, eax
call fcn.004630d0
mov dword [ebp + 0x100], 0
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd32b
mov dword [ebp + 0x104], 0
jmp 0x5cd338
lea edi, [ebp + 0x104]
xor eax, eax
call fcn.004630d0
lea eax, [ebp + 0xe0]
mov dword [esp], eax
mov dword [esp + 4], 8
call fcn.00463890
mov ebp, dword [esp + 0x198]
xor ecx, ecx
xor eax, eax
jmp 0x5cd36f
mov eax, 0x50
lea ecx, [0x8b91c0]
lea eax, [ecx + eax*8]
lea ecx, [0x751550]
test ecx, ecx
je 0x5cdfe9
lea edx, [0x751550]
cmp ecx, edx
jne 0x5ce996
movzx eax, byte [eax]
mov dword [esp], ebp
mov byte [esp + 4], al
call fcn.005cf040
mov eax, dword [esp + 8]
mov dword [esp + 0x100], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x58], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cd40e
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd3fa
mov eax, dword [esp + 0x58]
mov dword [edx + 0xc8], eax
jmp 0x5cd490
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x58]
call fcn.004630d0
jmp 0x5cd490
mov dword [esp + 0x98], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd44d
mov ecx, dword [esp + 0x98]
mov dword [eax + 4], ecx
jmp 0x5cd460
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x98]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd485
mov dword [edx + 0xc8], eax
jmp 0x5cd490
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call fcn.005cf040
mov eax, dword [esp + 8]
mov dword [esp + 0x100], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x5c], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cd538
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd524
mov eax, dword [esp + 0x5c]
mov dword [edx + 0xc8], eax
jmp 0x5cd5ba
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x5c]
call fcn.004630d0
jmp 0x5cd5ba
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd577
mov ecx, dword [esp + 0x9c]
mov dword [eax + 4], ecx
jmp 0x5cd58a
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x9c]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd5af
mov dword [edx + 0xc8], eax
jmp 0x5cd5ba
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov dword [esp], ebp
movzx eax, byte [esp + 0x19c]
mov byte [esp + 4], al
call fcn.005cea10
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call fcn.005cf040
mov eax, dword [esp + 8]
mov dword [esp + 0x100], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x60], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cd693
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd67f
mov eax, dword [esp + 0x60]
mov dword [edx + 0xc8], eax
jmp 0x5cd715
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x60]
call fcn.004630d0
jmp 0x5cd715
mov dword [esp + 0x100], edx
mov dword [esp + 0xa0], ecx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd6d2
mov ecx, dword [esp + 0xa0]
mov dword [eax + 4], ecx
jmp 0x5cd6e5
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xa0]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd70a
mov dword [edx + 0xc8], eax
jmp 0x5cd715
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
cmp al, 0x15
jne 0x5ce159
cmp edx, 2
jne 0x5cdca2
movzx eax, byte [ecx + 1]
test al, al
je 0x5cdb87
mov byte [esp + 0x29], al
cmp si, 0x304
je 0x5cda2d
movzx ecx, byte [ecx]
cmp cl, 1
je 0x5cd9fc
cmp cl, 2
jne 0x5cd8d2
lea eax, [0x6b5f80]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [esp + 0xf8], eax
mov dword [eax + 4], 0xc
lea ecx, [0x6d0b40]
mov dword [eax], ecx
lea ecx, [0x751550]
mov dword [eax + 0x20], ecx
movzx ecx, byte [esp + 0x29]
movzx ecx, cl
lea edx, [0x8b91c0]
lea ecx, [edx + ecx*8]
mov dword [eax + 0x24], ecx
lea ecx, [0x6a7600]
mov dword [esp], ecx
lea ecx, [0x7511f4]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cd82f
lea ecx, [0x7511f4]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd818
mov eax, dword [esp + 0xf8]
mov dword [edx + 0xc8], eax
jmp 0x5cd8b1
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0xf8]
call fcn.004630d0
jmp 0x5cd8b1
mov dword [esp + 0xac], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd86e
mov ecx, dword [esp + 0xac]
mov dword [eax + 4], ecx
jmp 0x5cd881
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xac]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd8a6
mov dword [edx + 0xc8], eax
jmp 0x5cd8b1
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call fcn.005cf040
mov eax, dword [esp + 8]
mov dword [esp + 0x100], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x68], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cd959
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd945
mov eax, dword [esp + 0x68]
mov dword [edx + 0xc8], eax
jmp 0x5cd9db
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x68]
call fcn.004630d0
jmp 0x5cd9db
mov dword [esp + 0xa8], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd998
mov ecx, dword [esp + 0xa8]
mov dword [eax + 4], ecx
jmp 0x5cd9ab
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xa8]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cd9d0
mov dword [edx + 0xc8], eax
jmp 0x5cd9db
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov dword [esp], ebp
movzx eax, byte [esp + 0x19c]
mov byte [esp + 4], al
call fcn.005cea10
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
lea eax, [0x6b5f80]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [esp + 0xf8], eax
mov dword [eax + 4], 0xc
lea ecx, [0x6d0b40]
mov dword [eax], ecx
lea ecx, [0x751550]
mov dword [eax + 0x20], ecx
movzx ecx, byte [esp + 0x29]
movzx ecx, cl
lea edx, [0x8b91c0]
lea ecx, [edx + ecx*8]
mov dword [eax + 0x24], ecx
lea ecx, [0x6a7600]
mov dword [esp], ecx
lea ecx, [0x7511f4]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cdae4
lea ecx, [0x7511f4]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cdacd
mov eax, dword [esp + 0xf8]
mov dword [edx + 0xc8], eax
jmp 0x5cdb66
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0xf8]
call fcn.004630d0
jmp 0x5cdb66
mov dword [esp + 0xb0], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cdb23
mov ecx, dword [esp + 0xb0]
mov dword [eax + 4], ecx
jmp 0x5cdb36
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xb0]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cdb5b
mov dword [edx + 0xc8], eax
jmp 0x5cdb66
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov eax, dword [0x8e688c]
mov dword [esp + 0x6c], eax
mov ecx, dword [0x8e6888]
mov dword [esp + 0x34], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cdbff
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cdbeb
mov eax, dword [esp + 0x6c]
mov dword [edx + 0xc8], eax
jmp 0x5cdc81
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x6c]
call fcn.004630d0
jmp 0x5cdc81
mov dword [esp + 0xb4], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cdc3e
mov ecx, dword [esp + 0xb4]
mov dword [eax + 4], ecx
jmp 0x5cdc51
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xb4]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cdc76
mov dword [edx + 0xc8], eax
jmp 0x5cdc81
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call fcn.005cf040
mov eax, dword [esp + 8]
mov dword [esp + 0x100], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x70], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cdd29
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cdd15
mov eax, dword [esp + 0x70]
mov dword [edx + 0xc8], eax
jmp 0x5cddab
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x70]
call fcn.004630d0
jmp 0x5cddab
mov dword [esp + 0xb8], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cdd68
mov ecx, dword [esp + 0xb8]
mov dword [eax + 4], ecx
jmp 0x5cdd7b
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xb8]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cdda0
mov dword [edx + 0xc8], eax
jmp 0x5cddab
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
cmp al, 0x16
jne 0x5cdf34
mov ebx, edi
test edx, edx
je 0x5cddeb
movzx eax, byte [esp + 0x19c]
test al, al
je 0x5cdf15
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call fcn.005cf040
mov eax, dword [esp + 8]
mov dword [esp + 0x100], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x50], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5cde72
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cde5e
mov eax, dword [esp + 0x50]
mov dword [edx + 0xc8], eax
jmp 0x5cdef4
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x50]
call fcn.004630d0
jmp 0x5cdef4
mov dword [esp + 0x90], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cdeb1
mov ecx, dword [esp + 0x90]
mov dword [eax + 4], ecx
jmp 0x5cdec4
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x90]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5cdee9
mov dword [edx + 0xc8], eax
jmp 0x5cdef4
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
lea eax, [ebp + 0x198]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.004ce130
jmp 0x5cdfe9
cmp al, 0x17
jne 0x5ce159
mov ebx, dword [esp + 0x48]
cmp ebx, 1
jne 0x5ce02f
movzx ebx, byte [esp + 0x19c]
test bl, bl
jne 0x5ce02f
test edx, edx
je 0x5ce006
mov dword [esp + 0xec], ecx
nop
mov ebx, dword [0x90e260]
test ebx, ebx
jne 0x5cdf90
xor eax, eax
mov ebx, edi
mov edi, dword [esp + 0x4c]
call fcn.0046336a
mov ecx, dword [esp + 0xec]
mov dword [ebp + 0x180], ecx
jmp 0x5cdfd3
mov dword [esp + 0x44], edi
mov dword [esp + 0x3c], edx
lea eax, [0x6ad960]
mov dword [esp], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 4], eax
call fcn.00411030
mov eax, dword [esp + 0x198]
lea edi, [eax + 0x180]
mov ecx, eax
mov eax, dword [esp + 0xec]
call fcn.004630d0
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x44]
mov ebp, ecx
mov dword [ebp + 0x184], edx
mov dword [ebp + 0x188], ebx
mov dword [ebp + 0x194], 0xffffffff
mov dword [esp + 0x1a0], 0
mov dword [esp + 0x1a4], 0
add esp, 0x194
ret
mov dword [esp], ebp
mov byte [esp + 4], bl
call fcn.005cea10
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call fcn.005cf040
mov eax, dword [esp + 8]
mov dword [esp + 0x100], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x54], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5ce0b6
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce0a2
mov eax, dword [esp + 0x54]
mov dword [edx + 0xc8], eax
jmp 0x5ce138
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x54]
call fcn.004630d0
jmp 0x5ce138
mov dword [esp + 0x94], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce0f5
mov ecx, dword [esp + 0x94]
mov dword [eax + 4], ecx
jmp 0x5ce108
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x94]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce12d
mov dword [edx + 0xc8], eax
jmp 0x5ce138
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call fcn.005cf040
mov eax, dword [esp + 8]
mov dword [esp + 0x100], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x74], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5ce1e0
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce1cc
mov eax, dword [esp + 0x74]
mov dword [edx + 0xc8], eax
jmp 0x5ce262
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x74]
call fcn.004630d0
jmp 0x5ce262
mov dword [esp + 0xbc], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce21f
mov ecx, dword [esp + 0xbc]
mov dword [eax + 4], ecx
jmp 0x5ce232
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xbc]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce257
mov dword [edx + 0xc8], eax
jmp 0x5ce262
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call fcn.005cf040
mov eax, dword [esp + 8]
mov dword [esp + 0x100], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x7c], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5ce30a
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce2f6
mov eax, dword [esp + 0x7c]
mov dword [edx + 0xc8], eax
jmp 0x5ce38c
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x7c]
call fcn.004630d0
jmp 0x5ce38c
mov dword [esp + 0xc4], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce349
mov ecx, dword [esp + 0xc4]
mov dword [eax + 4], ecx
jmp 0x5ce35c
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xc4]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce381
mov dword [edx + 0xc8], eax
jmp 0x5ce38c
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov eax, dword [esp + 0x198]
mov dword [esp], eax
mov byte [esp + 4], 0x16
call fcn.005cf040
mov eax, dword [esp + 8]
mov dword [esp + 0x100], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x80], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5ce444
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce42d
mov eax, dword [esp + 0x80]
mov dword [edx + 0xc8], eax
jmp 0x5ce4c6
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x80]
call fcn.004630d0
jmp 0x5ce4c6
mov dword [esp + 0x100], edx
mov dword [esp + 0xc8], ecx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce483
mov ecx, dword [esp + 0xc8]
mov dword [eax + 4], ecx
jmp 0x5ce496
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xc8]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce4bb
mov dword [edx + 0xc8], eax
jmp 0x5ce4c6
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov dword [esp + 0x100], eax
mov dword [esp + 0x88], ecx
lea edx, [0x6a7600]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
test eax, eax
jne 0x5ce51e
mov eax, 1
jmp 0x5ce52e
mov eax, dword [eax + 0x14]
mov dword [esp], ecx
call eax
movzx eax, byte [esp + 4]
xor eax, 1
test al, al
jne 0x5ce545
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x100]
jmp 0x5ce650
lea eax, [0x6a7600]
mov dword [esp], eax
mov eax, dword [esp + 0x100]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x88]
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5ce5c0
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ebx, dword [0x90e260]
test ebx, ebx
jne 0x5ce5a9
mov eax, dword [esp + 0x88]
mov dword [edx + 0xc8], eax
jmp 0x5ce650
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x88]
call fcn.004630d0
jmp 0x5ce650
mov dword [esp + 0xd0], ecx
mov dword [esp + 0xf4], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xf4]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce5ff
mov ecx, dword [esp + 0xd0]
mov dword [eax + 4], ecx
jmp 0x5ce612
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xd0]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce637
mov dword [edx + 0xc8], eax
jmp 0x5ce642
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x100]
mov dword [esp + 0x1a0], ecx
mov dword [esp + 0x1a4], eax
add esp, 0x194
ret
mov dword [esp], ebx
mov byte [esp + 4], 0x46
call fcn.005cf040
lea edi, [esp + 0x164]
xor eax, eax
call fcn.0046336a
lea eax, [0x6dc57f]
mov dword [esp + 0x164], eax
mov dword [esp + 0x168], 0x24
mov eax, dword [esp + 0x198]
mov ecx, dword [eax + 0x170]
mov edx, dword [eax + 0x16c]
mov ebx, dword [eax + 0x174]
mov ebp, dword [eax + 0x178]
cmp ecx, ebp
jb 0x5ce98f
sub ecx, ebp
sub ebx, ebp
neg ebx
sar ebx, 0x1f
and ebp, ebx
add edx, ebp
cmp ecx, 5
jl 0x5ce6d6
mov ecx, 5
lea ebx, [esp + 0x16c]
cmp ebx, edx
je 0x5ce6f1
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00463a60
lea edi, [esp + 0x17c]
lea esi, [esp + 0x164]
call fcn.00463844
lea eax, [0x6b4820]
mov dword [esp], eax
lea eax, [esp + 0x17c]
mov dword [esp + 4], eax
call fcn.00408f90
mov eax, dword [esp + 8]
mov dword [esp + 0xfc], eax
lea ecx, [0x6a7600]
mov dword [esp], ecx
lea ecx, [0x75153c]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5ce79a
lea ecx, [0x75153c]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce783
mov eax, dword [esp + 0xfc]
mov dword [edx + 0xc8], eax
jmp 0x5ce81c
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0xfc]
call fcn.004630d0
jmp 0x5ce81c
mov dword [esp + 0xe0], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce7d9
mov ecx, dword [esp + 0xe0]
mov dword [eax + 4], ecx
jmp 0x5ce7ec
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xe0]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce811
mov dword [edx + 0xc8], eax
jmp 0x5ce81c
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
lea eax, [0x6a08e0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [esp + 0xf0], eax
mov dword [eax + 4], 0x4b
lea ecx, [0x6e3b8c]
mov dword [eax], ecx
lea ecx, [0x6a7600]
mov dword [esp], ecx
lea ecx, [0x751118]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5ce8d7
lea ecx, [0x751118]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce8c0
mov eax, dword [esp + 0xf0]
mov dword [edx + 0xc8], eax
jmp 0x5ce959
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0xf0]
call fcn.004630d0
jmp 0x5ce959
mov dword [esp + 0xe8], ecx
mov dword [esp + 0x100], edx
lea eax, [0x6a06a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x100]
mov dword [eax], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce916
mov ecx, dword [esp + 0xe8]
mov dword [eax + 4], ecx
jmp 0x5ce929
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xe8]
call fcn.004630d0
mov eax, ecx
lea ecx, [0x751028]
mov edx, dword [esp + 0x198]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x5ce94e
mov dword [edx + 0xc8], eax
jmp 0x5ce959
lea edi, [edx + 0xc8]
call fcn.004630d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x1a4], ecx
add esp, 0x194
ret
mov dword [esp + 0x1a0], ecx
mov dword [esp + 0x1a4], edx
add esp, 0x194
ret
mov eax, ebp
call fcn.004631b0
mov dword [esp], ecx
lea eax, [0x6a1940]
mov dword [esp + 4], eax
lea eax, [0x69e540]
mov dword [esp + 8], eax
call fcn.00408ed0
mov dword [esp], esi
lea eax, [0x6a1940]
mov dword [esp + 4], eax
lea eax, [0x69e540]
mov dword [esp + 8], eax
call fcn.00408ed0
call fcn.004631b0
call fcn.00463190
mov eax, ebp
call fcn.004631b0
call fcn.004631b0
mov eax, ebp
call fcn.004631b0
mov edx, ecx
mov ecx, 5
call fcn.00463190
call fcn.004631b0
nop
call fcn.00461cc0
jmp fcn.005cc240