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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101338c0
mov eax, dword fs:[0]
push eax
sub esp, 0x60
mov eax, dword [0x10194008]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x3c], edi
cmp byte [edi + 0x3c], 0
jne 0x10069b19
mov byte [edi + 0x3c], 1
mov edx, dword [edi + 4]
push ecx
mov ecx, dword [edi]
call fcn.1006a860
mov eax, dword [edi]
lea ecx, [ebp - 0x6c]
add esp, 4
mov dword [edi + 4], eax
movzx eax, byte [edi + 0x3d]
push eax
call fcn.10071f60
mov esi, eax
mov dword [ebp - 4], 0
lea ebx, [edi + 0xc]
cmp ebx, esi
je 0x1006969d
push dword [ebp - 0x30]
mov ecx, ebx
push dword [esi + 4]
push dword [esi]
call fcn.1006afc0
lea eax, [esi + 0xc]
lea ecx, [ebx + 0xc]
cmp ecx, eax
je 0x100696b4
push dword [ebp - 0x30]
push dword [eax + 4]
push dword [eax]
call fcn.1006ad80
lea eax, [esi + 0x18]
lea ecx, [ebx + 0x18]
cmp ecx, eax
je 0x100696cb
push dword [ebp - 0x30]
push dword [eax + 4]
push dword [eax]
call fcn.1006ab20
lea ecx, [esi + 0x24]
lea esi, [ebx + 0x24]
call fcn.10004ba0
cmp esi, eax
je 0x100696f4
call fcn.100065e0
mov edx, dword [eax]
call fcn.10004ba0
push dword [ebp - 0x30]
mov ecx, esi
push edx
mov eax, dword [eax]
push eax
call fcn.10010c70
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x48]
call fcn.10006590
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x54]
call fcn.1006a040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x60]
call fcn.1006a0c0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6c]
call fcn.1006a140
push edi
mov ecx, ebx
call fcn.100739e0
mov eax, dword [edi + 4]
cmp dword [edi], eax
jne 0x10069815
lea ecx, [ebp - 0x30]
call fcn.100655d0
mov dword [ebp - 4], 6
mov edx, dword [edi + 4]
push ecx
mov ecx, dword [edi]
call fcn.1006a860
mov eax, dword [edi]
add esp, 4
mov ecx, edi
mov dword [edi + 4], eax
call fcn.10078050
mov esi, dword [edi]
cmp esi, dword [edi + 4]
je 0x10069803
lea ecx, [esi + 0x18]
call fcn.100055f0
test al, al
jne 0x10069792
push str.000000000000
lea ecx, [esi + 0x18]
call fcn.10006bb0
mov byte [ebp - 0x29], 1
test al, al
je 0x10069796
mov byte [ebp - 0x29], 0
lea eax, [esi + 0x30]
mov ecx, eax
call fcn.100055f0
test al, al
jne 0x100697b9
push str.000000000000
lea ecx, [esi + 0x30]
call fcn.10006bb0
test al, al
jne 0x100697b9
mov al, 1
jmp 0x100697bb
xor al, al
cmp byte [ebp - 0x29], 0
jne 0x100697d5
test al, al
jne 0x100697d5
push esi
lea eax, [ebp - 0x34]
mov ecx, edi
push eax
call fcn.10069d80
mov esi, dword [eax]
jmp 0x100697f7
lea ecx, [esi + 0x18]
call fcn.10057160
lea ecx, [esi + 0x30]
call fcn.10057160
or byte [esi + 0x60], 1
lea ecx, [esi + 0x64]
call fcn.10014230
add esi, 0x94
cmp esi, dword [edi + 4]
jne 0x10069771
lea ebx, [edi + 0xc]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x30]
call fcn.10065690
mov eax, dword [edi + 4]
mov esi, dword [edi]
cmp esi, eax
je 0x1006984b
nop dword [eax + eax]
lea eax, [esi + 0x7c]
mov ecx, ebx
push eax
push esi
call fcn.10073580
test al, al
jne 0x10069840
push esi
lea eax, [ebp - 0x30]
mov ecx, edi
push eax
call fcn.10069d80
mov esi, dword [eax]
jmp 0x10069846
add esi, 0x94
cmp esi, dword [edi + 4]
jne 0x10069820
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
movq qword [ebp - 0x28], xmm0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 4], 8
movq qword [ebp - 0x1c], xmm0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov byte [ebp - 4], 9
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x28]
mov ecx, ebx
push eax
call fcn.100733c0
mov ecx, dword [ebp - 0x24]
mov eax, 0x81848da9
mov ebx, dword [ebp - 0x28]
sub ecx, ebx
imul ecx
add edx, ecx
sar edx, 9
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov dword [ebp - 0x38], ecx
je 0x100699fa
xor eax, eax
mov dword [ebp - 0x34], eax
mov esi, dword [edi]
add ebx, eax
cmp esi, dword [edi + 4]
je 0x100699e3
mov ecx, ebx
call fcn.10004a70
mov ecx, esi
mov edi, eax
call fcn.10004a70
cmp eax, edi
jne 0x100699cb
mov ecx, ebx
call fcn.100065d0
mov ecx, esi
mov edi, eax
call fcn.100065d0
mov edx, edi
mov ecx, eax
call fcn.10056e70
test al, al
je 0x100699cb
lea ecx, [ebx + 0x30]
call fcn.100055f0
test al, al
jne 0x10069963
push str.0.0.0.0
lea ecx, [ebx + 0x30]
call fcn.10006bb0
test al, al
jne 0x10069963
lea ecx, [ebx + 0x30]
lea edx, [esi + 0x64]
call fcn.10004ba0
cmp edx, eax
je 0x10069963
lea ecx, [ebx + 0x30]
call fcn.10004ba0
mov edx, eax
cmp dword [eax + 0x14], 8
jb 0x10069957
mov edx, dword [eax]
push dword [eax + 0x10]
lea ecx, [esi + 0x64]
push edx
call fcn.10004c10
or byte [esi + 0x60], 2
lea edi, [esi + 0x30]
mov ecx, edi
call fcn.100055f0
test al, al
je 0x1006999b
lea ecx, [ebx + 0x78]
call fcn.10004ba0
cmp edi, eax
je 0x1006999b
call fcn.10004ba0
mov ecx, eax
cmp dword [eax + 0x14], 8
jb 0x10069990
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
mov ecx, edi
call fcn.10004c10
lea ecx, [esi + 0x48]
call fcn.100055f0
test al, al
je 0x100699cb
cmp dword [ebx + 0x2b8], 5
jne 0x100699cb
push 0x10159f50
call fcn.100058c0
add esp, 4
lea ecx, [esi + 0x48]
push eax
push 0x10159f50
call fcn.10004c10
mov edi, dword [ebp - 0x3c]
add esi, 0x94
cmp esi, dword [edi + 4]
jne 0x100698e0
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x28]
add eax, 0x3f4
sub ecx, 1
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], ecx
jne 0x100698d3
mov ecx, dword [ebp - 0x18]
mov eax, 0x92492493
mov ebx, dword [ebp - 0x1c]
sub ecx, ebx
imul ecx
mov dword [ebp - 0x30], 0
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x10069afe
xor ecx, ecx
mov dword [ebp - 0x34], ecx
mov esi, dword [edi]
lea eax, [ebx + ecx]
mov dword [ebp - 0x38], eax
cmp esi, dword [edi + 4]
je 0x10069ace
lea edi, [esi + 0x30]
nop dword [eax + eax]
mov ecx, eax
call fcn.10004a70
mov ecx, esi
mov ebx, eax
call fcn.10004a70
cmp eax, ebx
jne 0x10069aaa
mov ecx, dword [ebp - 0x38]
call fcn.100065d0
mov ecx, esi
mov ebx, eax
call fcn.100065d0
mov edx, ebx
mov ecx, eax
call fcn.10056e70
test al, al
je 0x10069aaa
or byte [edi + 0x30], 4
mov ecx, edi
call fcn.100055f0
test al, al
je 0x10069aaa
mov ecx, dword [ebp - 0x38]
add ecx, 0x18
call fcn.10004ba0
cmp edi, eax
je 0x10069aaa
call fcn.10004ba0
mov ecx, eax
cmp dword [eax + 0x14], 8
jb 0x10069a9f
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
mov ecx, edi
call fcn.10004c10
mov eax, dword [ebp - 0x3c]
add esi, 0x94
add edi, 0x94
cmp esi, dword [eax + 4]
mov eax, dword [ebp - 0x38]
jne 0x10069a40
mov ebx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x34]
mov esi, dword [ebp - 0x30]
add ecx, 0x38
mov dword [ebp - 0x34], ecx
mov eax, 0x92492493
mov ecx, dword [ebp - 0x18]
inc esi
sub ecx, ebx
mov dword [ebp - 0x30], esi
imul ecx
add edx, ecx
mov ecx, dword [ebp - 0x34]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x10069a27
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x1c]
call fcn.1006a0c0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.1006a140
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100fc499
mov esp, ebp
pop ebp
ret