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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 4]
cmp eax, dword [ecx + 8]
jbe 0x660d19
sub esp, 0x84
mov eax, 0
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x98]
test eax, eax
je 0x660ce3
lea ecx, [0x801400]
mov edx, dword [esp + 0x88]
mov dword [edx + 0xc], ecx
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x660cd6
mov dword [edx + 0x10], eax
mov ecx, dword [0xa7d830]
mov ebx, dword [0xa7d82c]
mov ebp, dword [0xa7d828]
mov esi, edx
mov edx, dword [eax + 0x24]
mov dword [esp + 0x38], edx
mov edi, edx
mov edx, dword [eax + 0x20]
mov dword [esp + 0x64], edx
mov dword [esp + 0x44], eax
xor eax, eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x44]
jmp 0x6609ac
mov eax, dword [esp + 0x34]
inc eax
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x38]
mov dword [esp + 0x34], eax
mov ebp, edx
mov eax, dword [esp + 0x98]
mov edx, dword [esp + 0x64]
mov edx, ecx
mov ecx, ebx
mov ebx, edx
mov edx, dword [esp + 0x64]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x34]
cmp ecx, edi
jge 0x660af0
mov eax, dword [edx + ecx*4]
mov dword [esp], esi
mov edi, dword [esp + 0x8c]
mov dword [esp + 4], edi
mov edi, dword [esp + 0x90]
mov dword [esp + 8], edi
mov edi, dword [esp + 0x94]
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x1c], eax
call fcn.00660e10
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
mov ebx, eax
and eax, 0x1f
cmp eax, 0x14
jne 0x660981
mov dword [esp + 0x30], ebx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x5c], edx
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
call fcn.004a8370
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x6c]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
test eax, eax
je 0x660a5b
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x30]
jmp 0x660981
mov eax, dword [esp + 0x5c]
mov dword [esp], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 8], eax
call fcn.004a5a60
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x660ae8
movzx edx, byte [0xa7d7a8]
test dl, dl
je 0x660aa4
mov dword [0xa7d7ac], ecx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x660adb
mov dword [0xa7d7b0], eax
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0x68]
test ecx, ecx
je 0x660ad3
movzx edx, byte [ecx + 0xf]
mov ebx, edx
and edx, 0x1f
test bl, 0x20
jne 0x660ac8
or edx, 0x80
mov ebx, edx
mov edx, ecx
mov ecx, eax
jmp 0x660981
xor edx, edx
xor eax, eax
xor ecx, ecx
jmp 0x660ac8
lea edi, [0xa7d7b0]
call fcn.0044c9e0
jmp 0x660aa4
xor edx, edx
xor eax, eax
xor ecx, ecx
jmp 0x660ac8
mov dword [esp + 0x50], ebx
mov dword [esp + 0x4c], ebp
mov ecx, dword [eax + 0x18]
mov dword [esp + 0x38], ecx
mov edx, dword [eax + 0x14]
mov dword [esp + 0x58], edx
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x3c]
jmp 0x660b4d
mov ecx, dword [esp + 0x34]
inc ecx
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x4c]
mov eax, dword [esp + 0x98]
mov edx, dword [esp + 0x58]
mov ebx, esi
mov ebp, edi
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x38]
mov ebx, dword [esp + 0x34]
cmp ebx, ecx
jge 0x660cb6
mov edx, dword [edx + ebx*4]
movzx ecx, byte [eax + 0x10]
test cl, cl
jne 0x660c71
mov ecx, dword [edx + 0xc]
mov edx, dword [edx + 0x10]
test edx, edx
jbe 0x660d0b
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
mov dword [esp + 0x54], ecx
lea edi, [esp + 0x70]
xor eax, eax
call fcn.0044cadb
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], edx
mov dword [esp + 0x78], ebp
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x7c], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x80], edx
mov edi, edx
mov edx, dword [esi + 0x18]
mov ecx, dword [esi + 0x14]
mov ebp, dword [esi + 0x1c]
lea ebx, [edx + 1]
cmp ebx, ebp
jg 0x660c15
lea ebx, [edx + 1]
mov dword [esi + 0x18], ebx
lea edx, [edx + edx*4]
lea ecx, [ecx + edx*4]
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x660be9
mov edx, edi
mov edi, ecx
mov ebx, esi
lea esi, [esp + 0x70]
call fcn.0044cfbe
jmp 0x660b1a
lea eax, [0x74f060]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [esp + 0x70]
mov dword [esp + 8], eax
call fcn.0040f700
xor eax, eax
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x88]
jmp 0x660b1a
lea eax, [0x74f060]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x88]
mov dword [ebx + 0x1c], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x660c67
mov dword [ebx + 0x14], eax
mov esi, ebx
mov edi, dword [esp + 0x2c]
mov edx, ecx
mov ecx, eax
xor eax, eax
jmp 0x660bbf
lea edi, [ebx + 0x14]
call fcn.0044c9e0
jmp 0x660c56
mov ecx, dword [edx + 0xc]
mov edx, dword [edx + 0x10]
test edx, edx
jbe 0x660d12
mov eax, dword [ecx + 4]
mov ecx, dword [ecx]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp], esi
mov dword [esp + 0xc], ebp
mov eax, dword [esp + 0x50]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edi
call fcn.0065e430
xor eax, eax
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x88]
jmp 0x660b1a
mov dword [esp + 0x9c], ebp
mov eax, dword [esp + 0x50]
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], edi
add esp, 0x84
ret
lea edi, [edx + 0x10]
call fcn.0044c9e0
jmp 0x66094d
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
add esp, 0x84
ret
call fcn.004266e0
ud2
call fcn.004266e0
ud2
call fcn.0044b280
jmp fcn.006608f0