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

Disassembly:
mov ecx, dword [0x98cddc]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x669b07
sub esp, 0x68
lea eax, [0x717520]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
lea eax, [0x729151]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 6
call fcn.0040e1c0
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x669705
mov dword [esp + 0x30], ecx
mov eax, dword [eax]
mov dword [esp + 0x54], eax
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [esp], ecx
mov dword [esp + 4], edx
lea ecx, [0x7a1e9c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
call fcn.004dfac0
mov eax, dword [esp + 0x10]
lea ecx, [0x6ef980]
mov dword [esp], ecx
mov dword [esp + 4], 0
mov edx, dword [esp + 0x30]
add eax, edx
mov dword [esp + 0x3c], eax
mov dword [esp + 8], eax
call fcn.0046ca20
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x3c]
xor ebp, ebp
xor esi, esi
jmp 0x66972b
lea eax, [0x98cc80]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
add esp, 0x68
ret
inc ebp
mov ecx, dword [esp + 0x54]
cmp ebp, edx
jge 0x66974a
lea edi, [ecx + ebp*8]
mov ecx, dword [edi]
mov edi, dword [edi + 4]
nop
jmp 0x66976e
mov edx, dword [esp + 0x30]
jmp 0x669790
mov edx, dword [esp + 0x30]
mov dword [esp + 0x48], ebp
jmp 0x6697bf
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], ebx
add esp, 0x68
ret
dec edi
mov edx, edi
neg edx
sar edx, 0x1f
and edx, 1
add ecx, edx
mov edx, dword [esp + 0x30]
test edi, edi
je 0x669790
movzx edx, byte [ecx]
cmp dl, 0x20
je 0x66975d
cmp dl, 9
je 0x66975d
cmp dl, 0xa
je 0x66975d
cmp dl, 0xd
je 0x66975d
jmp 0x66973a
dec edi
mov edx, dword [esp + 0x30]
test edi, edi
je 0x669744
movzx edx, byte [ecx + edi - 1]
cmp dl, 0x20
je 0x66978b
cmp dl, 9
je 0x66978b
cmp dl, 0xa
je 0x66978b
cmp dl, 0xd
je 0x66978b
jmp 0x669740
mov edi, ebx
mov ebx, eax
mov eax, ebp
mov esi, edx
mov edx, dword [esp + 0x30]
mov ebp, dword [esp + 0x48]
test edi, edi
je 0x669726
mov dword [esp + 0x38], esi
mov dword [esp + 0x5c], eax
mov dword [esp + 0x44], ebx
nop
mov dword [esp], ecx
mov dword [esp + 4], edi
lea eax, [0x7a1e9c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
call fcn.00476ec0
nop
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
jmp 0x669868
test edx, edx
je 0x669846
mov dword [esp + 0x34], ebx
mov dword [esp + 0x58], ecx
nop
mov dword [esp], eax
mov dword [esp + 4], edx
lea eax, [0x727bed]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
call fcn.00476ec0
nop
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
jmp 0x6698c9
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x38]
mov ebp, dword [esp + 0x5c]
jmp 0x6697af
dec edx
mov ebp, edx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 1
add eax, ebp
test edx, edx
je 0x66988e
movzx ebp, byte [eax]
xchg ebp, eax
cmp al, 0x20
xchg ebp, eax
je 0x669857
xchg ebp, eax
cmp al, 9
xchg ebp, eax
je 0x669857
xchg ebp, eax
cmp al, 0xa
xchg ebp, eax
je 0x669857
xchg ebp, eax
cmp al, 0xd
xchg ebp, eax
je 0x669857
jmp 0x66988e
dec edx
test edx, edx
je 0x669846
movzx ebp, byte [eax + edx - 1]
xchg ebp, eax
cmp al, 0x20
xchg ebp, eax
je 0x66988d
xchg ebp, eax
cmp al, 9
xchg ebp, eax
je 0x66988d
xchg ebp, eax
cmp al, 0xa
xchg ebp, eax
je 0x66988d
xchg ebp, eax
cmp al, 0xd
xchg ebp, eax
je 0x66988d
jmp 0x669805
dec edx
mov ebp, edx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 1
add eax, ebp
test edx, edx
je 0x6698ef
movzx ebp, byte [eax]
xchg ebp, eax
cmp al, 0x20
xchg ebp, eax
je 0x6698b8
xchg ebp, eax
cmp al, 9
xchg ebp, eax
je 0x6698b8
xchg ebp, eax
cmp al, 0xa
xchg ebp, eax
je 0x6698b8
xchg ebp, eax
cmp al, 0xd
xchg ebp, eax
je 0x6698b8
jmp 0x6698ef
dec edx
test edx, edx
je 0x669916
movzx ebp, byte [eax + edx - 1]
xchg ebp, eax
cmp al, 0x20
xchg ebp, eax
je 0x6698ee
xchg ebp, eax
cmp al, 9
xchg ebp, eax
je 0x6698ee
xchg ebp, eax
cmp al, 0xa
xchg ebp, eax
je 0x6698ee
xchg ebp, eax
cmp al, 0xd
xchg ebp, eax
je 0x6698ee
test edx, edx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x50], eax
jne 0x66992c
xor ebp, ebp
jmp 0x66995d
mov dword [esp], eax
mov dword [esp + 4], edx
lea ecx, [0x74d1ac]
mov dword [esp + 8], ecx
call fcn.004e1a50
mov eax, dword [esp + 0xc]
test eax, eax
setl al
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x40]
mov ebp, eax
mov eax, dword [esp + 0x50]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x669aee
mov ebp, dword [esp + 0x74]
test ebp, ebp
je 0x6699ae
cmp ebp, edx
je 0x66997a
mov esi, 1
jmp 0x6699b0
mov ecx, dword [esp + 0x70]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call fcn.00402e10
movzx eax, byte [esp + 0xc]
xor eax, 1
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x40]
mov ebp, dword [esp + 0x74]
mov esi, eax
mov eax, dword [esp + 0x50]
jmp 0x6699b0
xor esi, esi
xchg esi, eax
test al, al
xchg esi, eax
je 0x6699cf
mov ecx, dword [esp + 0x58]
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x38]
mov ebp, dword [esp + 0x5c]
jmp 0x6697af
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov byte [esp + 8], 1
call fcn.00669f30
movzx eax, byte [esp + 0x15]
movzx ecx, byte [esp + 0x14]
mov edx, dword [esp + 0x10]
test al, al
jne 0x669a0b
mov ecx, dword [esp + 0x58]
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x38]
mov ebp, dword [esp + 0x5c]
jmp 0x6697af
mov dword [esp + 0x28], edx
mov byte [esp + 0x27], cl
mov eax, dword [esp + 0xc]
mov dword [esp + 0x4c], eax
lea ecx, [0x714c40]
mov dword [esp], ecx
call fcn.0040bc10
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x2c]
mov dword [eax + 4], ecx
mov ecx, dword [0x98d0b8]
test ecx, ecx
jne 0x669a48
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
jmp 0x669a5a
call fcn.00471ac0
mov ecx, dword [esp + 0x50]
mov dword [edi], ecx
mov edx, dword [esp + 0x4c]
mov dword [edi + 4], edx
mov dword [eax], ecx
mov ecx, dword [esp + 0x28]
mov dword [eax + 0xc], ecx
mov dword [eax + 8], edx
movzx ecx, byte [esp + 0x27]
mov byte [eax + 0x10], cl
mov ecx, dword [esp + 0x38]
inc ecx
mov edx, dword [esp + 0x44]
cmp edx, ecx
jb 0x669a81
mov ebx, dword [esp + 0x5c]
jmp 0x669abf
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x6ef980]
mov dword [esp + 0x10], eax
call fcn.0046cad0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov edx, ebx
mov ebx, eax
mov eax, dword [esp + 0x64]
mov ebp, dword [0x98d0b8]
test ebp, ebp
je 0x669ad7
call fcn.00471ac0
mov dword [edi], eax
mov ebp, dword [ebx + ecx*4 - 4]
mov dword [edi + 4], ebp
mov dword [ebx + ecx*4 - 4], eax
mov eax, edx
mov edx, ecx
mov ebp, ebx
mov ecx, dword [esp + 0x58]
mov ebx, dword [esp + 0x34]
jmp 0x6697af
mov ecx, dword [esp + 0x58]
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x38]
mov ebp, dword [esp + 0x5c]
jmp 0x6697af
call fcn.004706b0
jmp fcn.00669650