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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x160]
cmp eax, dword [ecx + 8]
jbe 0x655f76
sub esp, 0x1e0
mov eax, 0
mov dword [esp + 0x1d8], eax
mov dword [esp + 0x1dc], eax
mov byte [esp + 0x37], 0
lea edi, [esp + 0x174]
lea esi, [esp + 0x1fc]
call fcn.004664ce
lea edi, [esp]
lea esi, [esp + 0x174]
call fcn.004664ce
lea edi, [esp + 0x14]
lea esi, [esp + 0x22c]
call fcn.004664ce
call fcn.004853a0
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x8c], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x80], ecx
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x3b9aca00
call fcn.00460680
mov eax, dword [esp + 0x14]
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0x8c]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x80]
mov dword [esp], edx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x3b9aca00
call fcn.00460800
mov eax, dword [esp + 0x14]
mov dword [esp + 0x74], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x68], ecx
mov edx, dword [esp + 0x58]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x4c]
mov dword [esp], edx
call fcn.0044e8a0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xb0], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0xac], ecx
mov edx, dword [esp + 0x74]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x68]
mov dword [esp], edx
call fcn.0044e8a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 0xc], 0x41cdcd65
mov dword [esp + 8], 0
call fcn.0044d210
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xb0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xac]
mov dword [esp], edx
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
call fcn.0044c770
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0044d600
mov eax, dword [esp + 8]
lea edi, [esp + 0x188]
lea esi, [esp + 0x240]
call fcn.004664ce
lea edi, [esp + 0x160]
lea esi, [esp + 0x240]
call fcn.004664ce
mov ecx, dword [esp + 0x160]
mov edx, dword [esp + 0x164]
test edx, 0x80000000
je 0x6552e2
shl edx, 1
mov ebx, ecx
shr ecx, 0x1f
or edx, ecx
mov ecx, ebx
shl ebx, 1
mov ebp, edx
shl edx, 1
shr ebx, 0x1f
or ebx, edx
shr ebp, 0x1f
add ebx, 0xd7b17f80
adc ebp, 0xd
jmp 0x6552f0
mov ebx, dword [esp + 0x168]
mov ebp, dword [esp + 0x16c]
mov dword [esp + 0xb0], eax
test ebx, ebx
sete dl
test ebp, ebp
sete bl
and ebx, edx
test bl, bl
je 0x655322
test ecx, 0x3fffffff
jne 0x655322
lea edi, [esp + 0x188]
lea esi, [esp + 0x174]
call fcn.004664ce
lea edi, [esp]
lea esi, [esp + 0x188]
call fcn.004664ce
lea edi, [esp + 0x14]
lea esi, [esp + 0x22c]
call fcn.004664ce
call fcn.004853a0
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x7c], ecx
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x3b9aca00
call fcn.00460680
mov eax, dword [esp + 0x14]
mov dword [esp + 0x54], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x48], ecx
mov edx, dword [esp + 0x88]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x7c]
mov dword [esp], edx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x3b9aca00
call fcn.00460800
mov eax, dword [esp + 0x14]
mov dword [esp + 0x70], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x64], ecx
mov edx, dword [esp + 0x54]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x48]
mov dword [esp], edx
call fcn.0044e8a0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xac], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0xa8], ecx
mov edx, dword [esp + 0x70]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x64]
mov dword [esp], edx
call fcn.0044e8a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 0xc], 0x41cdcd65
mov dword [esp + 8], 0
call fcn.0044d210
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xac]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xa8]
mov dword [esp], edx
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
call fcn.0044c770
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0044d600
mov eax, dword [esp + 8]
mov dword [esp + 0xac], eax
movzx ecx, byte [esp + 0x254]
test cl, cl
jne 0x655477
xor ecx, ecx
jmp 0x6554d1
mov dword [esp], eax
mov dword [esp + 4], 0x3f666666
call fcn.0044e470
mov eax, dword [esp + 8]
mov dword [esp], 0x3f000000
xor eax, 0x80000000
mov dword [esp + 4], eax
call fcn.0044e350
mov eax, dword [esp + 8]
mov dword [esp + 0xa8], eax
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.0044e590
movzx eax, byte [esp + 8]
test al, al
je 0x6554cd
mov eax, dword [esp + 0xa8]
jmp 0x6554cf
xor eax, eax
mov ecx, eax
mov dword [esp + 0xa8], ecx
mov eax, dword [esp + 0xb0]
mov dword [esp], eax
mov dword [esp + 4], 0x3f666666
call fcn.0044e470
mov eax, dword [esp + 8]
mov dword [esp], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 4], eax
call fcn.0044e350
mov eax, dword [esp + 8]
mov dword [esp + 0xa4], eax
mov dword [esp], eax
mov dword [esp + 4], 0x3f000000
call fcn.0044e590
movzx eax, byte [esp + 8]
test al, al
je 0x655531
mov eax, 0x3f000000
jmp 0x655538
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xa4], eax
lea edi, [esp]
lea esi, [esp + 0x174]
call fcn.004664ce
lea edi, [esp + 0x14]
lea esi, [esp + 0x188]
call fcn.004664ce
call fcn.004853a0
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x78], ecx
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x3b9aca00
call fcn.00460680
mov eax, dword [esp + 0x14]
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x44], ecx
mov edx, dword [esp + 0x84]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x78]
mov dword [esp], edx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x3b9aca00
call fcn.00460800
mov eax, dword [esp + 0x14]
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x60], ecx
mov edx, dword [esp + 0x50]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x44]
mov dword [esp], edx
call fcn.0044e8a0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x9c], ecx
mov edx, dword [esp + 0x6c]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x60]
mov dword [esp], edx
call fcn.0044e8a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 0xc], 0x41cdcd65
mov dword [esp + 8], 0
call fcn.0044d210
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xa0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x9c]
mov dword [esp], edx
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
call fcn.0044c770
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0044d600
mov eax, dword [esp + 8]
mov dword [esp], eax
mov dword [esp + 4], 0x3f666666
call fcn.0044e470
mov eax, dword [esp + 8]
mov dword [esp], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 4], eax
call fcn.0044e350
mov eax, dword [esp + 8]
mov dword [esp + 0xa8], eax
mov dword [esp], eax
mov dword [esp + 4], 0x3f000000
call fcn.0044e590
movzx eax, byte [esp + 8]
test al, al
je 0x6556cf
add esp, 0x1e0
ret
mov eax, dword [esp + 0xa4]
mov dword [esp], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 4], eax
call fcn.0044e350
mov eax, dword [esp + 8]
mov dword [esp + 0xa8], eax
movzx ecx, byte [esp + 0x254]
test cl, cl
je 0x655709
mov ecx, dword [esp + 0xac]
jmp 0x655710
mov ecx, dword [esp + 0xb0]
mov dword [esp], ecx
mov dword [esp + 4], 0x3f000000
call fcn.0044e470
mov eax, dword [esp + 8]
lea edi, [esp + 0x14c]
lea esi, [esp + 0x240]
call fcn.004664ce
mov ecx, dword [esp + 0x14c]
mov edx, dword [esp + 0x150]
test edx, 0x80000000
je 0x655771
shl edx, 1
mov ebx, ecx
shr ecx, 0x1f
or edx, ecx
mov ecx, ebx
shl ebx, 1
mov ebp, edx
shl edx, 1
shr ebx, 0x1f
or ebx, edx
shr ebp, 0x1f
add ebx, 0xd7b17f80
adc ebp, 0xd
jmp 0x65577f
mov ebx, dword [esp + 0x154]
mov ebp, dword [esp + 0x158]
mov dword [esp + 0xb0], eax
test ebp, ebp
sete dl
test ebx, ebx
sete bl
and ebx, edx
test bl, bl
je 0x6557c5
test ecx, 0x3fffffff
je 0x6557a5
mov ecx, 1
jmp 0x6557ca
mov dword [esp], 0x3f800000
mov dword [esp + 4], eax
call fcn.0044e620
movzx eax, byte [esp + 8]
mov ecx, eax
mov eax, dword [esp + 0xb0]
jmp 0x6557ca
mov ecx, 1
test cl, cl
je 0x655827
lea edi, [esp + 0x19c]
xor eax, eax
call fcn.00465feb
mov ecx, dword [esp + 0x21c]
mov dword [esp + 0x148], ecx
lea edx, [0x6b5d40]
mov dword [esp], edx
lea edx, [esp + 0x19c]
mov dword [esp + 4], edx
call fcn.004095e0
mov ecx, dword [esp + 0x148]
test ecx, ecx
je 0x655820
mov dword [esp], ecx
lea eax, [0x785818]
mov dword [esp + 4], eax
call fcn.004ec260
mov eax, dword [esp + 0xb0]
mov dword [esp], eax
mov dword [esp + 4], 0x3f800000
call fcn.0044e590
movzx eax, byte [esp + 8]
test al, al
je 0x655847
mov eax, 0x3f800000
jmp 0x65584e
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb0], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp], ecx
mov dword [esp + 4], 0x3f000000
call fcn.0044e590
movzx eax, byte [esp + 8]
test al, al
jne 0x65587e
mov eax, dword [esp + 0xa8]
jmp 0x65589e
mov dword [esp], 0x3f800000
mov eax, dword [esp + 0xa8]
xor eax, 0x80000000
mov dword [esp + 4], eax
call fcn.0044e350
mov eax, dword [esp + 8]
mov dword [esp], eax
mov dword [esp + 4], 0x40000000
call fcn.0044e3e0
mov eax, dword [esp + 8]
mov dword [esp + 0xac], eax
mov dword [esp], eax
mov dword [esp + 4], eax
call fcn.0044e3e0
mov eax, dword [esp + 8]
mov dword [esp + 0xa8], eax
mov dword [esp], 0x40000000
mov ecx, dword [esp + 0xac]
mov dword [esp + 4], ecx
call fcn.0044e3e0
mov eax, dword [esp + 8]
mov dword [esp], 0x40400000
xor eax, 0x80000000
mov dword [esp + 4], eax
call fcn.0044e350
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xa8]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0044e3e0
mov eax, dword [esp + 8]
mov dword [esp + 0xac], eax
mov ecx, dword [esp + 0xb0]
mov dword [esp], ecx
mov dword [esp + 4], ecx
call fcn.0044e3e0
mov eax, dword [esp + 8]
mov dword [esp + 0xa8], eax
mov dword [esp], 0x40000000
mov ecx, dword [esp + 0xb0]
mov dword [esp + 4], ecx
call fcn.0044e3e0
mov eax, dword [esp + 8]
mov dword [esp], 0x40400000
xor eax, 0x80000000
mov dword [esp + 4], eax
call fcn.0044e350
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xa8]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0044e3e0
mov eax, dword [esp + 8]
mov dword [esp + 0xb0], eax
mov ecx, dword [esp + 0x1e4]
mov edx, dword [esp + 0x1e8]
cmp edx, ecx
jg 0x6559a6
mov edx, ecx
mov dword [esp + 0x40], edx
mov dword [esp], 0
mov dword [esp + 4], 0x40000000
call fcn.004ac730
mov eax, dword [esp + 0xc]
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x38], ecx
mov edx, dword [esp + 0x40]
mov dword [esp], edx
call fcn.0044e7d0
mov eax, dword [esp + 4]
mov dword [esp], eax
mov dword [esp + 4], 0x40000000
call fcn.0044e3e0
mov eax, dword [esp + 8]
mov dword [esp + 0xa8], eax
mov ecx, dword [esp + 0x3c]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp], ecx
call fcn.0044d600
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xa8]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0044e3e0
mov eax, dword [esp + 8]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
call fcn.0044e3e0
mov eax, dword [esp + 8]
mov dword [esp], eax
call fcn.0044e8f0
mov eax, dword [esp + 4]
mov dword [esp + 0x98], eax
mov dword [esp], 0x3f333333
mov ecx, dword [esp + 0xac]
mov dword [esp + 4], ecx
call fcn.0044e3e0
mov eax, dword [esp + 8]
mov dword [esp], eax
mov dword [esp + 4], 0x437f0000
call fcn.0044e3e0
mov eax, dword [esp + 8]
mov dword [esp], eax
call fcn.0044e8f0
mov eax, dword [esp + 0x220]
mov ecx, dword [esp + 4]
nop
movzx ecx, cl
mov edx, ecx
shl ecx, 8
sub ecx, edx
movzx edx, byte [eax + 0x2c]
test dl, dl
jne 0x655f51
mov dword [esp + 0xb0], ecx
mov dword [esp + 0x138], eax
mov edx, dword [eax + 8]
add edx, 5
mov ebx, dword [eax + 0xc]
mov ebp, dword [eax + 4]
cmp ebx, edx
jae 0x655af7
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 5
lea eax, [0x69be80]
mov dword [esp + 0x10], eax
call fcn.0044be60
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x94], ebx
mov dword [esp + 0x90], edx
mov dword [esp + 0x144], ebp
lea eax, [edx + ebp - 5]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.00466510
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 0x138]
mov dword [eax + 8], ecx
mov edx, dword [esp + 0x94]
mov dword [eax + 0xc], edx
mov ebx, dword [0x1eaa9f0]
test ebx, ebx
jne 0x655b51
mov ebx, dword [esp + 0x144]
mov dword [eax + 4], ebx
jmp 0x655b62
lea edi, [eax + 4]
mov eax, dword [esp + 0x144]
call fcn.00465d80
mov ebx, eax
lea eax, [ecx - 5]
cmp ecx, eax
jb 0x655f4c
sub edx, ecx
lea ecx, [edx + 5]
neg ecx
sar ecx, 0x1f
and eax, ecx
mov dword [ebx + eax], 0xccccccd1
mov ecx, eax
mov eax, 0x80808081
mov edx, dword [esp + 0xb0]
mul edx
shr edx, 7
mov byte [ebx + ecx + 4], dl
mov ecx, dword [esp + 0x98]
mov edx, ecx
shr ecx, 0x1f
add ecx, edx
sar ecx, 1
mov dword [esp + 0x5c], ecx
mov ebx, dword [esp + 0x224]
mov ebp, dword [esp + 0x228]
mov dword [esp + 0x94], ebp
sub ebx, ecx
mov dword [esp], ebx
call fcn.0044e7d0
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x5c]
sub ecx, edx
mov ebx, dword [esp + 4]
mov dword [esp + 0xb0], ebx
mov dword [esp], ecx
call fcn.0044e7d0
mov ecx, dword [esp + 4]
mov dword [esp + 0xac], ecx
lea edi, [esp + 0xfc]
xor eax, eax
call fcn.00465fea
lea edi, [esp + 0xcc]
call fcn.00465fea
mov ecx, dword [esp + 0xfc]
mov dword [esp + 0xcc], ecx
mov ecx, dword [esp + 0x100]
mov dword [esp + 0xd0], ecx
mov ecx, dword [esp + 0x104]
mov dword [esp], ecx
mov ecx, dword [esp + 0xb0]
mov dword [esp + 4], ecx
call fcn.0044e350
mov ecx, dword [esp + 8]
mov dword [esp + 0xd4], ecx
mov ecx, dword [esp + 0x108]
mov dword [esp + 0xd8], ecx
mov ecx, dword [esp + 0x10c]
mov dword [esp + 0xdc], ecx
mov ecx, dword [esp + 0x110]
mov dword [esp], ecx
mov ecx, dword [esp + 0xac]
mov dword [esp + 4], ecx
call fcn.0044e350
mov ecx, dword [esp + 8]
mov dword [esp + 0xe0], ecx
lea edi, [esp + 0xe4]
lea esi, [esp + 0xcc]
call fcn.004664c4
lea edi, [esp + 0xb4]
xor eax, eax
call fcn.00465fea
lea edi, [esp + 0xb4]
lea esi, [esp + 0xe4]
call fcn.004664c4
mov ecx, dword [esp + 0x220]
mov dword [esp + 0x140], ecx
lea edi, [esp]
lea esi, [esp + 0xb4]
call fcn.004664c4
mov ecx, dword [esp + 0x140]
mov dword [esp + 0x18], ecx
call fcn.004dfbe0
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xb0], ecx
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x28]
lea edi, [esp + 0x1c4]
xor eax, eax
call fcn.00465feb
lea ecx, [0x655fe0]
mov dword [esp + 0x1c4], ecx
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0x1c8], ecx
mov dword [esp + 0x1cc], edx
mov dword [esp + 0x1d0], ebx
mov dword [esp + 0x1d4], ebp
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x1dc], ecx
mov byte [esp + 0x37], 1
lea edi, [esp + 0x114]
call fcn.00465fe8
mov ecx, dword [esp + 0x98]
mov dword [esp + 0x11c], ecx
mov dword [esp + 0x120], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x124], ecx
mov dword [esp + 0x128], ecx
mov dword [esp + 0x130], ecx
mov dword [esp + 0x12c], ecx
mov ecx, dword [esp + 0x220]
mov dword [esp + 0x140], ecx
lea edi, [esp]
lea esi, [esp + 0x114]
call fcn.004664b0
mov ecx, dword [esp + 0x140]
mov dword [esp + 0x20], ecx
call fcn.004f9660
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x13c], ecx
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x30]
lea edi, [esp + 0x1b0]
xor eax, eax
call fcn.00465feb
lea ecx, [0x655f80]
mov dword [esp + 0x1b0], ecx
mov ecx, dword [esp + 0x13c]
mov dword [esp + 0x1b4], ecx
mov dword [esp + 0x1b8], edx
mov dword [esp + 0x1bc], ebx
mov dword [esp + 0x1c0], ebp
lea ecx, [esp + 0x1b0]
mov dword [esp + 0x1d8], ecx
mov byte [esp + 0x37], 3
mov ecx, dword [esp + 0x220]
movzx edx, byte [ecx + 0x2c]
test dl, dl
jne 0x655f34
mov dword [esp + 0x134], ecx
mov eax, dword [ecx + 8]
inc eax
mov edx, dword [ecx + 0xc]
mov ebx, dword [ecx + 4]
cmp edx, eax
jae 0x655e86
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x69be80]
mov dword [esp + 0x10], eax
call fcn.0044be60
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x94], edx
mov dword [esp + 0x90], eax
mov dword [esp + 0x144], ebx
lea ecx, [eax + ebx - 1]
mov dword [esp], ecx
mov dword [esp + 4], 1
call fcn.00466510
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 0x134]
mov dword [eax + 8], ecx
mov edx, dword [esp + 0x94]
mov dword [eax + 0xc], edx
mov ebx, dword [0x1eaa9f0]
test ebx, ebx
jne 0x655ee0
mov ebx, dword [esp + 0x144]
mov dword [eax + 4], ebx
jmp 0x655ef1
lea edi, [eax + 4]
mov eax, dword [esp + 0x144]
call fcn.00465d80
mov ebx, eax
lea eax, [ecx - 1]
cmp ecx, eax
jb 0x655f2f
sub edx, ecx
lea ecx, [edx + 1]
neg ecx
sar ecx, 0x1f
and eax, ecx
mov byte [ebx + eax], 0xd0
mov byte [esp + 0x37], 1
mov edx, dword [esp + 0x1d8]
mov eax, dword [edx]
call eax
mov byte [esp + 0x37], 0
mov edx, dword [esp + 0x1dc]
mov eax, dword [edx]
call eax
add esp, 0x1e0
ret
call fcn.00465e60
lea eax, [0x69bcc0]
mov dword [esp], eax
lea eax, [0x78498c]
mov dword [esp + 4], eax
call fcn.00436d20
call fcn.00465e60
lea eax, [0x69bcc0]
mov dword [esp], eax
lea eax, [0x78498c]
mov dword [esp + 4], eax
call fcn.00436d20
nop
call fcn.004362d0
add esp, 0x1e0
ret
call fcn.004649b0
jmp fcn.006550f0