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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x670c34
sub esp, 0x70
mov eax, dword [esp + 0x74]
mov dword [esp], eax
call fcn.00670fc0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 4]
mov ebp, dword [esp + 8]
test eax, eax
jne 0x670c12
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebp
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x6c]
mov edx, ebx
add ebx, ecx
mov dword [esp + 0x34], ebx
mov esi, dword [eax + 0x40]
mov dword [esp + 0x14], esi
mov edi, 0xffffffff
sub edi, esi
mov esi, dword [eax + 0x70]
add ecx, edx
adc esi, ebp
mov dword [esp + 0x3c], esi
cmp edi, ebx
setae cl
mov edi, dword [eax + 0x44]
mov dword [esp + 0x4c], edi
mov ebp, 0xffffffff
mov edx, dword [esp + 0x14]
sub ebp, edx
mov ebp, 0x7fffffff
sbb ebp, edi
cmp ebp, esi
xchg ebp, ebx
setg bl
xchg ebp, ebx
xchg esi, ebx
sete bl
xchg esi, ebx
mov edi, dword [eax + 0x68]
mov dword [esp + 0x60], edi
mov eax, dword [eax + 0x64]
mov dword [esp + 0x2c], eax
and ecx, esi
or ecx, ebp
test cl, cl
je 0x670903
add ebx, edx
mov ebp, dword [esp + 0x3c]
mov esi, dword [esp + 0x4c]
adc ebp, esi
jmp 0x67090d
mov ebp, 0x7fffffff
mov ebx, 0xffffffff
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x24], ebp
lea eax, [0x6f0ee0]
mov dword [esp], eax
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x2c]
mov dword [eax], ecx
mov ecx, dword [0x9b1930]
test ecx, ecx
jne 0x670940
mov ecx, dword [esp + 0x60]
mov dword [eax + 4], ecx
jmp 0x670950
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x60]
call fcn.00463350
mov eax, ecx
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 0x34]
mov dword [eax + 8], ecx
mov edx, dword [esp + 0x3c]
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], edx
mov ecx, dword [esp + 0x1c]
mov dword [eax + 0x18], ecx
mov ecx, dword [esp + 0x24]
mov dword [eax + 0x1c], ecx
mov ecx, dword [esp + 0x74]
mov edx, dword [ecx + 0x60]
movzx ebx, word [ecx + 0x18]
mov dword [esp], edx
mov word [esp + 4], bx
call fcn.00670770
mov edx, dword [esp + 8]
test edx, edx
je 0x670be4
mov eax, dword [edx]
lea ecx, [0x79d63c]
mov dword [esp], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 4], ecx
call eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x6c], ecx
mov ebx, dword [esp + 0x74]
movzx ebp, word [ebx + 0x16]
test bp, 8
je 0x670ab5
mov edx, dword [ebx + 0x6c]
mov ebp, dword [esp + 0x44]
mov esi, ebp
add ebp, edx
mov edi, dword [esp + 0x14]
add edi, ebp
mov dword [esp + 0x30], edi
mov eax, dword [ebx + 0x70]
add esi, edx
mov edx, dword [esp + 0x48]
adc edx, eax
mov eax, dword [esp + 0x14]
add eax, ebp
mov eax, dword [esp + 0x4c]
adc edx, eax
mov dword [esp + 0x38], edx
cmp edx, 0x7fffffff
setl al
xchg ebp, ebx
sete bl
xchg ebp, ebx
cmp edi, 0xffffffef
xchg esi, ebx
setbe bl
xchg esi, ebx
mov ecx, dword [ebx + 0x68]
mov dword [esp + 0x5c], ecx
mov ebx, dword [ebx + 0x64]
mov dword [esp + 0x28], ebx
and esi, ebp
or esi, eax
xchg esi, eax
test al, al
xchg esi, eax
je 0x670a3c
add edi, 0x10
adc edx, 0
jmp 0x670a46
mov edx, 0x7fffffff
mov edi, 0xffffffff
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], edi
lea eax, [0x6f0ee0]
mov dword [esp], eax
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x28]
mov dword [eax], ecx
mov ecx, dword [0x9b1930]
test ecx, ecx
jne 0x670a79
mov ecx, dword [esp + 0x5c]
mov dword [eax + 4], ecx
jmp 0x670a89
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x5c]
call fcn.00463350
mov eax, ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 8], ecx
mov edx, dword [esp + 0x38]
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], edx
mov ecx, dword [esp + 0x18]
mov dword [eax + 0x18], ecx
mov ecx, dword [esp + 0x20]
mov dword [eax + 0x1c], ecx
mov edx, eax
lea ebp, [0x79d63c]
jmp 0x670ab9
xor edx, edx
xor ebp, ebp
mov dword [esp + 0x40], ebp
mov dword [esp + 0x64], edx
mov eax, dword [0x98912c]
mov dword [esp + 0x54], eax
lea ecx, [0x9b17e0]
mov dword [esp], ecx
lea ecx, [0x73b3f4]
mov dword [esp + 4], ecx
call fcn.0046ccc0
lea eax, [0x6e29c0]
mov dword [esp], eax
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov dword [esp + 0x68], eax
mov ecx, dword [0x9b1930]
test ecx, ecx
jne 0x670b0c
mov ecx, dword [esp + 0x54]
mov dword [eax + 4], ecx
jmp 0x670b18
lea edi, [eax + 4]
mov eax, dword [esp + 0x54]
call fcn.00463350
lea eax, [0x6f9c00]
mov dword [esp], eax
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x6c]
mov dword [eax], ecx
mov ecx, dword [0x9b1930]
test ecx, ecx
jne 0x670b43
mov ecx, dword [esp + 0x58]
mov dword [eax + 4], ecx
jmp 0x670b53
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x58]
call fcn.00463350
mov eax, ecx
lea ecx, [0x79f204]
mov dword [eax + 8], ecx
mov ecx, dword [0x9b1930]
test ecx, ecx
jne 0x670b76
mov ecx, dword [esp + 0x68]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x74]
mov dword [eax + 0x18], ecx
jmp 0x670b92
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0x68]
call fcn.00463350
lea edi, [ecx + 0x18]
mov eax, dword [esp + 0x74]
call fcn.00463350
mov eax, ecx
mov ecx, dword [esp + 0x40]
mov dword [eax + 0x1c], ecx
mov ecx, dword [0x9b1930]
test ecx, ecx
jne 0x670bac
mov ecx, dword [esp + 0x64]
mov dword [eax + 0x20], ecx
jmp 0x670bbc
lea edi, [eax + 0x20]
mov ecx, eax
mov eax, dword [esp + 0x64]
call fcn.00463350
mov eax, ecx
lea ecx, [0x79ddd0]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
add esp, 0x70
ret
mov eax, dword [0x989668]
mov ecx, dword [0x98966c]
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], ecx
add esp, 0x70
ret
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], edx
add esp, 0x70
ret
call fcn.00461f40
jmp fcn.00670840