Function at 0x676cac
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 0x6774ee
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 [0x4799b8]
call fcn.004a3ce0
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 0x67745d
push dword fs:[ecx]
mov dword fs:[ecx], esp
xor ebx, ebx
mov eax, dword [ebp - 0x1c]
call fcn.00673518
test al, al
je 0x676d52
call fcn.004099c8
jmp 0x67749e
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.00679024
test al, al
je 0x676da2
mov eax, dword [ebp - 0x1c]
mov byte [eax + 0x71], 1
mov dl, 5
mov eax, dword [ebp - 0x1c]
call fcn.006734b8
test al, al
jne 0x676dcf
call fcn.004099c8
jmp 0x67749e
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.006735c4
mov eax, 0x1f4
call fcn.004b11ac
inc ebx
cmp ebx, 0xa
jl 0x676d3c
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x71], 1
je 0x676de2
call fcn.004099c8
jmp 0x67749e
mov eax, dword [ebp - 0x1c]
call fcn.00673518
test al, al
je 0x676df8
call fcn.004099c8
jmp 0x67749e
mov dl, 6
mov eax, dword [ebp - 0x1c]
call fcn.006734b8
test al, al
jne 0x676e10
call fcn.004099c8
jmp 0x67749e
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.00677ffc
test al, al
jne 0x676e62
call fcn.004099c8
jmp 0x67749e
mov eax, dword [ebp - 0x1c]
call fcn.00673518
test al, al
je 0x676e78
call fcn.004099c8
jmp 0x67749e
mov dl, 7
mov eax, dword [ebp - 0x1c]
call fcn.006734b8
test al, al
jne 0x676e90
call fcn.004099c8
jmp 0x67749e
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 0x6770e3
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x38], 0
je 0x676fe9
mov edx, 0x67750c
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
call dword [ecx + 0x58]
test eax, eax
jge 0x676ee2
mov edx, 0x67752c
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
call dword [ecx + 0x58]
test eax, eax
jl 0x676fe9
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x70], 0
je 0x676efe
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x676ef7
sub eax, 4
mov eax, dword [eax]
test eax, eax
sete al
jmp 0x676f00
xor eax, eax
test al, al
je 0x676f0b
xor eax, eax
jmp 0x676feb
mov edx, 0x67750c
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
call dword [ecx + 0x58]
mov ebx, eax
test ebx, ebx
jge 0x676f2d
mov edx, 0x67752c
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
call dword [ecx + 0x58]
mov ebx, eax
test ebx, ebx
jl 0x676fe5
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.0065f1d8
test al, al
je 0x676fe5
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, 0x677538
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 0x676fa6
mov dl, 1
mov eax, dword [0x65e568]
call fcn.0065f448
mov edx, dword [ebp - 0x1c]
mov dword [edx + 0x50], eax
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x676fb2
sub eax, 4
mov eax, dword [eax]
test eax, eax
jle 0x676fcf
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.0065fab8
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + 0x50]
test edx, edx
je 0x676fdc
sub edx, 0xffffffd0
mov eax, ebx
call fcn.00660140
jmp 0x676feb
xor eax, eax
jmp 0x676feb
xor eax, eax
test al, al
je 0x6770d2
mov eax, dword [ebp - 0x1c]
call fcn.00673518
test al, al
je 0x677009
call fcn.004099c8
jmp 0x67749e
mov dl, 8
mov eax, dword [ebp - 0x1c]
call fcn.006734b8
test al, al
jne 0x677021
call fcn.004099c8
jmp 0x67749e
mov eax, dword [ebp - 0x1c]
call fcn.00673518
test al, al
je 0x677037
call fcn.004099c8
jmp 0x67749e
mov eax, dword [ebp - 0x1c]
mov byte [eax + 0x70], 1
mov eax, dword [ebp + 8]
cmp dword [eax], 0
jle 0x677090
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
call dword [edx + 0x14]
test al, al
je 0x677090
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.00677ad8
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.00676cac
jmp 0x67740a
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
call dword [edx + 0x14]
test al, al
je 0x6770a4
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.00673a4c
jmp 0x67740a
mov eax, dword [ebp - 0x1c]
mov byte [eax + 0x71], 6
call fcn.004099c8
jmp 0x67749e
cmp byte [ebp - 0x33], 0
je 0x6771b6
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
call dword [edx + 0x10]
mov eax, dword [ebp - 0x1c]
call fcn.00673518
test al, al
je 0x67710b
call fcn.004099c8
jmp 0x67749e
mov dl, 1
mov eax, dword [ebp - 0x1c]
call fcn.006734b8
test al, al
jne 0x677123
call fcn.004099c8
jmp 0x67749e
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.0067a114
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x67714b
sub eax, 4
mov eax, dword [eax]
test eax, eax
jne 0x67715a
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 0x24]
call fcn.0040a614
cmp byte [ebp - 0x34], 0
je 0x6771a3
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 0x6771a3
lea eax, [ebp - 0x64]
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x54]
mov edx, dword [edx]
mov ecx, 0x677538
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.0067400c
jmp 0x67740a
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x70], 0
je 0x6771f4
mov eax, dword [ebp - 0x1c]
mov byte [eax + 0x70], 0
mov eax, dword [ebp - 0x1c]
call fcn.00673518
test al, al
je 0x6771dc
call fcn.004099c8
jmp 0x67749e
mov dl, 9
mov eax, dword [ebp - 0x1c]
call fcn.006734b8
test al, al
jne 0x6771f4
call fcn.004099c8
jmp 0x67749e
cmp byte [ebp - 0x32], 0
jne 0x67720a
cmp dword [ebp - 0x2c], 0
jne 0x677204
cmp dword [ebp - 0x30], 0
je 0x677292
mov eax, dword [ebp - 0x1c]
call fcn.00673518
test al, al
je 0x677220
call fcn.004099c8
jmp 0x67749e
mov dl, 0xa
mov eax, dword [ebp - 0x1c]
call fcn.006734b8
test al, al
jne 0x677238
call fcn.004099c8
jmp 0x67749e
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.00677ad8
test al, al
jne 0x677264
call fcn.004099c8
jmp 0x67749e
mov eax, dword [ebp - 0x1c]
call fcn.00673518
test al, al
je 0x67727a
call fcn.004099c8
jmp 0x67749e
mov dl, 0xb
mov eax, dword [ebp - 0x1c]
call fcn.006734b8
test al, al
jne 0x677292
call fcn.004099c8
jmp 0x67749e
mov eax, dword [ebp - 0x1c]
call fcn.00673518
test al, al
je 0x6772a8
call fcn.004099c8
jmp 0x67749e
mov dl, 0xc
mov eax, dword [ebp - 0x1c]
call fcn.006734b8
test al, al
jne 0x6772c0
call fcn.004099c8
jmp 0x67749e
cmp byte [ebp - 0x31], 0
je 0x67734c
mov edx, dword [ebp - 4]
mov eax, edx
test eax, eax
je 0x6772d8
sub eax, 4
mov eax, dword [eax]
cmp eax, 0xa
jle 0x67734c
mov eax, edx
test eax, eax
je 0x6772e8
sub eax, 4
mov eax, dword [eax]
push 0
lea ecx, [ebp - 0x28]
add edx, 0xa
sub eax, 0xa
xchg edx, eax
call fcn.0065e018
mov ebx, eax
xor eax, eax
push ebp
push 0x677345
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 0x67734c
mov eax, dword [ebp - 0x28]
call fcn.004072b0
pop eax
jmp eax
mov eax, dword [ebp - 0x1c]
cmp dword [eax + 0x74], 0
je 0x677391
mov edx, dword [ebp - 4]
mov eax, edx
test eax, eax
je 0x677363
sub eax, 4
mov eax, dword [eax]
test eax, eax
jle 0x6773cc
mov eax, edx
test eax, eax
je 0x677372
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 0x6773cc
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 0x6773cc
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 [0x670c14]
call fcn.0067327c
mov eax, dword [ebp - 0x1c]
call fcn.00673518
test al, al
je 0x6773e2
call fcn.004099c8
jmp 0x67749e
mov dl, 0xd
mov eax, dword [ebp - 0x1c]
call fcn.006734b8
test al, al
jne 0x6773fa
call fcn.004099c8
jmp 0x67749e
mov eax, dword [ebp + 8]
cmp dword [eax], 0
jne 0x67740a
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 0x677464
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 0x6774f5
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