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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff9c
push ebx
push esi
xor ebx, ebx
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x54], ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 8], ebx
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], eax
mov esi, dword [ebp + 0x10]
xor eax, eax
push ebp
push 0x6774ea
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x1c]
add eax, 0x68
mov edx, dword [0x404cf0]
call fcn.0040d3a4
mov dl, 1
mov eax, dword [0x4799b4]
call fcn.004a3cdc
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 0x38]
mov dword [ebp - 0x48], edx
mov edx, dword [eax + 0x3c]
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 0x40]
mov dword [ebp - 0x50], edx
mov edx, dword [eax + 0x44]
mov dword [ebp - 0x4c], edx
xor ecx, ecx
push ebp
push 0x677459
push dword fs:[ecx]
mov dword fs:[ecx], esp
xor ebx, ebx
mov eax, dword [ebp - 0x1c]
call fcn.00673514
test al, al
je 0x676d4e
call fcn.004099c8
jmp 0x67749a
mov eax, dword [ebp - 0x1c]
mov byte [eax + 0x71], 0xc
mov eax, dword [ebp + 0x14]
push eax
push esi
mov eax, dword [ebp + 0xc]
push eax
mov edx, dword [0x404cf0]
lea eax, [ebp - 8]
call fcn.0040d3a4
push eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
call fcn.00679020
test al, al
je 0x676d9e
mov eax, dword [ebp - 0x1c]
mov byte [eax + 0x71], 1
mov dl, 5
mov eax, dword [ebp - 0x1c]
call fcn.006734b4
test al, al
jne 0x676dcb
call fcn.004099c8
jmp 0x67749a
mov eax, dword [ebp - 0x20]
movzx eax, word [eax + 0x10]
push eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + 0x2c]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
call fcn.006735c0
mov eax, 0x1f4
call fcn.004b11a8
inc ebx
cmp ebx, 0xa
jl 0x676d38
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x71], 1
je 0x676dde
call fcn.004099c8
jmp 0x67749a
mov eax, dword [ebp - 0x1c]
call fcn.00673514
test al, al
je 0x676df4
call fcn.004099c8
jmp 0x67749a
mov dl, 6
mov eax, dword [ebp - 0x1c]
call fcn.006734b4
test al, al
jne 0x676e0c
call fcn.004099c8
jmp 0x67749a
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x38]
push eax
lea eax, [ebp - 0x39]
push eax
lea eax, [ebp - 0x32]
push eax
lea eax, [ebp - 0x31]
push eax
lea eax, [ebp - 0x33]
push eax
lea eax, [ebp - 0x34]
push eax
mov eax, dword [ebp + 8]
push eax
lea eax, [ebp - 0xc]
call fcn.0040a1dc
push eax
lea eax, [ebp - 0x18]
call fcn.0040a1dc
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
call fcn.00677ff8
test al, al
jne 0x676e5e
call fcn.004099c8
jmp 0x67749a
mov eax, dword [ebp - 0x1c]
call fcn.00673514
test al, al
je 0x676e74
call fcn.004099c8
jmp 0x67749a
mov dl, 7
mov eax, dword [ebp - 0x1c]
call fcn.006734b4
test al, al
jne 0x676e8c
call fcn.004099c8
jmp 0x67749a
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x30]
mov dword [eax + 0x98], edx
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x9c], edx
cmp byte [ebp - 0x39], 0
je 0x6770df
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x38], 0
je 0x676fe5
mov edx, 0x677508
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
call dword [ecx + 0x58]
test eax, eax
jge 0x676ede
mov edx, 0x677528
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
call dword [ecx + 0x58]
test eax, eax
jl 0x676fe5
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x70], 0
je 0x676efa
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x676ef3
sub eax, 4
mov eax, dword [eax]
test eax, eax
sete al
jmp 0x676efc
xor eax, eax
test al, al
je 0x676f07
xor eax, eax
jmp 0x676fe7
mov edx, 0x677508
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
call dword [ecx + 0x58]
mov ebx, eax
test ebx, ebx
jge 0x676f29
mov edx, 0x677528
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
call dword [ecx + 0x58]
mov ebx, eax
test ebx, ebx
jl 0x676fe1
lea ecx, [ebp - 0x54]
mov edx, ebx
mov eax, dword [ebp - 0x38]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x1c]
add edx, 0x4f
call fcn.0065f1d4
test al, al
je 0x676fe1
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x34]
push eax
lea eax, [ebp - 0x58]
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x54]
mov edx, dword [edx]
mov ecx, 0x677534
call fcn.0040f074
mov eax, dword [ebp - 0x58]
mov edx, dword [ebp - 0x1c]
movzx edx, byte [edx + 0x4f]
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx + 0x30]
mov ebx, dword [eax]
call dword [ebx + 0x1c]
mov ebx, eax
mov eax, dword [ebp - 0x1c]
cmp dword [eax + 0x50], 0
jne 0x676fa2
mov dl, 1
mov eax, dword [0x65e564]
call fcn.0065f444
mov edx, dword [ebp - 0x1c]
mov dword [edx + 0x50], eax
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x676fae
sub eax, 4
mov eax, dword [eax]
test eax, eax
jle 0x676fcb
lea eax, [ebp - 0x5c]
mov edx, dword [ebp - 0x18]
call fcn.0040afa0
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x50]
call fcn.0065fab4
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + 0x50]
test edx, edx
je 0x676fd8
sub edx, 0xffffffd0
mov eax, ebx
call fcn.0066013c
jmp 0x676fe7
xor eax, eax
jmp 0x676fe7
xor eax, eax
test al, al
je 0x6770ce
mov eax, dword [ebp - 0x1c]
call fcn.00673514
test al, al
je 0x677005
call fcn.004099c8
jmp 0x67749a
mov dl, 8
mov eax, dword [ebp - 0x1c]
call fcn.006734b4
test al, al
jne 0x67701d
call fcn.004099c8
jmp 0x67749a
mov eax, dword [ebp - 0x1c]
call fcn.00673514
test al, al
je 0x677033
call fcn.004099c8
jmp 0x67749a
mov eax, dword [ebp - 0x1c]
mov byte [eax + 0x70], 1
mov eax, dword [ebp + 8]
cmp dword [eax], 0
jle 0x67708c
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
call dword [edx + 0x14]
test al, al
je 0x67708c
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
movzx eax, byte [ebp - 0x31]
push eax
lea eax, [ebp - 4]
push eax
movzx ecx, byte [ebp - 0x32]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
call fcn.00677ad4
mov eax, dword [ebp + 0x14]
push eax
push esi
mov eax, dword [ebp + 0xc]
push eax
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
call fcn.00676ca8
jmp 0x677406
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
call dword [edx + 0x14]
test al, al
je 0x6770a0
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
call dword [edx + 0x10]
mov eax, dword [ebp - 0x20]
movzx eax, word [eax + 0x10]
push eax
mov edx, dword [ebp - 0x24]
push edx
push eax
mov eax, dword [ebp + 0x14]
push eax
push esi
mov eax, dword [ebp + 0xc]
push eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + 0x2c]
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
mov eax, dword [ebp - 0x1c]
call fcn.00673a48
jmp 0x677406
mov eax, dword [ebp - 0x1c]
mov byte [eax + 0x71], 6
call fcn.004099c8
jmp 0x67749a
cmp byte [ebp - 0x33], 0
je 0x6771b2
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
call dword [edx + 0x10]
mov eax, dword [ebp - 0x1c]
call fcn.00673514
test al, al
je 0x677107
call fcn.004099c8
jmp 0x67749a
mov dl, 1
mov eax, dword [ebp - 0x1c]
call fcn.006734b4
test al, al
jne 0x67711f
call fcn.004099c8
jmp 0x67749a
lea eax, [ebp - 0x14]
call fcn.0040a1dc
push eax
lea eax, [ebp - 0x10]
call fcn.0040a1dc
mov edx, eax
mov eax, dword [ebp - 0xc]
pop ecx
call fcn.0067a110
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x677147
sub eax, 4
mov eax, dword [eax]
test eax, eax
jne 0x677156
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 0x24]
call fcn.0040a614
cmp byte [ebp - 0x34], 0
je 0x67719f
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax + 0x28]
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x60], ebx
mov eax, dword [ebp - 0x60]
call fcn.0042454c
test eax, eax
sete al
test al, al
jne 0x67719f
lea eax, [ebp - 0x64]
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x54]
mov edx, dword [edx]
mov ecx, 0x677534
call fcn.0040f074
mov eax, dword [ebp - 0x64]
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x28]
mov ecx, dword [ebp - 0x10]
mov ebx, dword [eax]
call dword [ebx + 0x24]
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
call fcn.00674008
jmp 0x677406
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x70], 0
je 0x6771f0
mov eax, dword [ebp - 0x1c]
mov byte [eax + 0x70], 0
mov eax, dword [ebp - 0x1c]
call fcn.00673514
test al, al
je 0x6771d8
call fcn.004099c8
jmp 0x67749a
mov dl, 9
mov eax, dword [ebp - 0x1c]
call fcn.006734b4
test al, al
jne 0x6771f0
call fcn.004099c8
jmp 0x67749a
cmp byte [ebp - 0x32], 0
jne 0x677206
cmp dword [ebp - 0x2c], 0
jne 0x677200
cmp dword [ebp - 0x30], 0
je 0x67728e
mov eax, dword [ebp - 0x1c]
call fcn.00673514
test al, al
je 0x67721c
call fcn.004099c8
jmp 0x67749a
mov dl, 0xa
mov eax, dword [ebp - 0x1c]
call fcn.006734b4
test al, al
jne 0x677234
call fcn.004099c8
jmp 0x67749a
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
movzx eax, byte [ebp - 0x31]
push eax
lea eax, [ebp - 4]
push eax
movzx ecx, byte [ebp - 0x32]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
call fcn.00677ad4
test al, al
jne 0x677260
call fcn.004099c8
jmp 0x67749a
mov eax, dword [ebp - 0x1c]
call fcn.00673514
test al, al
je 0x677276
call fcn.004099c8
jmp 0x67749a
mov dl, 0xb
mov eax, dword [ebp - 0x1c]
call fcn.006734b4
test al, al
jne 0x67728e
call fcn.004099c8
jmp 0x67749a
mov eax, dword [ebp - 0x1c]
call fcn.00673514
test al, al
je 0x6772a4
call fcn.004099c8
jmp 0x67749a
mov dl, 0xc
mov eax, dword [ebp - 0x1c]
call fcn.006734b4
test al, al
jne 0x6772bc
call fcn.004099c8
jmp 0x67749a
cmp byte [ebp - 0x31], 0
je 0x677348
mov edx, dword [ebp - 4]
mov eax, edx
test eax, eax
je 0x6772d4
sub eax, 4
mov eax, dword [eax]
cmp eax, 0xa
jle 0x677348
mov eax, edx
test eax, eax
je 0x6772e4
sub eax, 4
mov eax, dword [eax]
push 0
lea ecx, [ebp - 0x28]
add edx, 0xa
sub eax, 0xa
xchg edx, eax
call fcn.0065e014
mov ebx, eax
xor eax, eax
push ebp
push 0x677341
push dword fs:[eax]
mov dword fs:[eax], esp
push ebx
lea eax, [ebp - 4]
mov ecx, 1
mov edx, dword [0x404cf0]
call fcn.0040d280
add esp, 4
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x28]
mov ecx, ebx
call fcn.004077e0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x677348
mov eax, dword [ebp - 0x28]
call fcn.004072b0
pop eax
jmp eax
mov eax, dword [ebp - 0x1c]
cmp dword [eax + 0x74], 0
je 0x67738d
mov edx, dword [ebp - 4]
mov eax, edx
test eax, eax
je 0x67735f
sub eax, 4
mov eax, dword [eax]
test eax, eax
jle 0x6773c8
mov eax, edx
test eax, eax
je 0x67736e
sub eax, 4
mov eax, dword [eax]
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx + 0x74]
xchg ecx, eax
mov ebx, dword [eax]
call dword [ebx + 0x10]
lea eax, [ebp - 4]
mov edx, dword [0x404cf0]
call fcn.0040d3a4
jmp 0x6773c8
mov eax, dword [ebp - 0x1c]
add eax, 0x68
mov edx, dword [ebp - 4]
mov ecx, dword [0x404cf0]
call fcn.0040d3e8
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x4d], 0
je 0x6773c8
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
push eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x68]
push eax
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp - 0x24]
mov eax, dword [0x670c10]
call fcn.00673278
mov eax, dword [ebp - 0x1c]
call fcn.00673514
test al, al
je 0x6773de
call fcn.004099c8
jmp 0x67749a
mov dl, 0xd
mov eax, dword [ebp - 0x1c]
call fcn.006734b4
test al, al
jne 0x6773f6
call fcn.004099c8
jmp 0x67749a
mov eax, dword [ebp + 8]
cmp dword [eax], 0
jne 0x677406
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
call dword [edx + 0x10]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x677460
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x38]
sub eax, dword [ebp - 0x48]
sbb edx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x1c]
add dword [ecx + 0x78], eax
adc dword [ecx + 0x7c], edx
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 0x44]
mov eax, dword [eax + 0x40]
sub eax, dword [ebp - 0x50]
sbb edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x1c]
add dword [ecx + 0x80], eax
adc dword [ecx + 0x84], edx
mov eax, dword [ebp - 0x38]
xor edx, edx
mov dword [ebp - 0x38], edx
call fcn.00408510
pop eax
jmp eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x6774f1
lea eax, [ebp - 0x64]
call fcn.0040f030
lea eax, [ebp - 0x5c]
call fcn.0040a224
lea eax, [ebp - 0x58]
call fcn.0040f030
lea eax, [ebp - 0x54]
call fcn.0040a1dc
lea eax, [ebp - 0x18]
mov edx, 4
call fcn.0040a23c
lea eax, [ebp - 8]
mov edx, dword [0x404cf0]
mov ecx, 2
call fcn.0040be5c
pop eax
jmp eax