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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x158
mov esi, esp
mov dword [esi + 0x140], ebp
mov dword [esi + 0x144], esp
mov dword [esi + 0x150], 0xffffffff
mov dword [esi + 0x14c], 0x100f69b0
mov eax, dword [ebp + 0xc]
lea ecx, [esi + 0x148]
mov edx, dword fs:[0]
mov dword [esi + 0x148], edx
mov dword fs:[0], ecx
movsd xmm1, qword [eax + 0xa]
movzx ecx, word [eax]
movsd xmm0, qword [eax + 2]
movsd xmm2, qword [eax + 0x12]
movsd qword [esi + 0x128], xmm1
movsd xmm1, qword [eax + 0x18]
mov word [esi + 0x36], cx
test cx, cx
mov eax, 2
mov ecx, 0x17
movsd qword [esi + 0x130], xmm2
movsd qword [esi + 0x120], xmm0
cmove ecx, eax
lea eax, [esi + 0x38]
movsd qword [esi + 0x136], xmm1
push 6
push 1
push 1
push ecx
push eax
call fcn.10162da0
add esp, 0x14
cmp byte [esi + 0x38], 4
jne 0x100f5ca7
mov eax, dword [esi + 0x3c]
jmp 0x100f5d0d
mov eax, dword [esi + 0x38]
mov ecx, dword [esi + 0x3c]
mov edx, str.tcp_open_errortcp_set_nonblocking_error
mov dword [esi + 0x84], ecx
mov dword [esi + 0x80], eax
lea eax, [esi + 0x80]
lea ecx, [esi + 0x98]
push eax
push 0xe
call fcn.100f5160
add esp, 8
mov ecx, dword [esi + 0x98]
mov eax, dword [esi + 0x9c]
test ecx, ecx
je 0x100f5d0d
mov edx, dword [ebp + 8]
mov ebx, dword [esi + 0xa0]
mov edi, dword [esi + 0xa4]
mov dword [edx + 4], ecx
mov ecx, edx
mov dword [edx + 8], eax
mov dword [edx + 0xc], ebx
mov dword [edx + 0x10], edi
mov dword [edx], 1
jmp 0x100f66ee
mov dword [esi + 0x28], eax
mov byte [esi + 7], 1
mov dword [esi + 0x150], 0
lea ecx, [esi + 0x28]
lea eax, [esi + 0x58]
push 1
push ecx
push eax
call fcn.10162ec0
add esp, 0xc
cmp byte [esi + 0x58], 4
je 0x100f5d98
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x5c]
mov byte [esi + 7], 1
mov edx, 0x101e1f5a
mov dword [esi + 0x88], eax
lea eax, [esi + 0x88]
mov dword [esi + 0x8c], ecx
lea ecx, [esi + 0x98]
push eax
push 0x19
call fcn.100f5160
add esp, 8
mov eax, dword [esi + 0x98]
movsd xmm0, qword [esi + 0x9c]
mov ecx, dword [esi + 0xa4]
test eax, eax
movsd qword [esi + 0x38], xmm0
mov dword [esi + 0x40], ecx
je 0x100f5d98
mov ecx, dword [esi + 0x40]
mov edx, dword [ebp + 8]
movsd xmm0, qword [esi + 0x38]
jmp 0x100f611e
mov edi, dword [ebp + 0x10]
mov eax, dword [edi + 0x38]
cmp eax, 0x3b9aca00
je 0x100f5f66
mov ecx, dword [edi + 0x30]
mov edx, dword [edi + 0x34]
mov byte [esi + 7], 1
mov dword [esi + 0x98], ecx
mov dword [esi + 0x9c], edx
mov dword [esi + 0xa0], eax
lea eax, [esi + 0x98]
mov dword [esi + 0xb0], 0x3b9aca00
lea ecx, [esi + 0x6c]
push eax
lea eax, [esi + 0x28]
push eax
push ecx
call fcn.10162ff0
add esp, 0xc
cmp byte [esi + 0x6c], 4
mov edi, dword [ebp + 0x10]
je 0x100f5f66
movsd xmm0, qword [esi + 0x6c]
mov eax, dword [0x1027132c]
movsd qword [esi + 0x2c], xmm0
mov eax, dword [eax]
cmp eax, 4
jae 0x100f5f0b
movzx eax, byte [0x1026fca8]
movzx ecx, al
lea edx, [ecx - 1]
cmp edx, 2
jb 0x100f5e49
test ecx, ecx
je 0x100f5f0b
mov dword [esi + 0x150], 9
push 0x1026fca0
call fcn.101c9ee0
add esp, 4
mov edi, dword [ebp + 0x10]
test al, al
je 0x100f5f0b
mov ecx, dword [0x1026fca0]
movzx eax, al
mov dword [esi + 0x150], 9
push eax
push ecx
call fcn.10149b60
add esp, 8
mov edi, dword [ebp + 0x10]
test al, al
je 0x100f5f0b
mov eax, dword [0x1026fca0]
cmp dword [eax + 0x20], 0
je 0x100f6704
lea ecx, [eax + 0x1c]
mov edx, dword [ecx]
test edx, edx
je 0x100f6704
mov dword [esi + 0x58], edx
lea edx, [eax + 0x20]
lea edi, [esi + 0x2c]
lea ebx, [esi + 0x14]
movsd xmm0, qword [edx]
movsd qword [esi + 0x5c], xmm0
mov edx, dword [edx + 8]
mov dword [esi + 0x14], edi
lea edi, [esi + 0x74]
mov dword [esi + 0x38], 0x101e1fa0
mov dword [esi + 0x3c], 1
mov dword [esi + 0x48], 0
mov dword [esi + 0x40], ebx
mov dword [esi + 0x18], fcn.101979c0
mov dword [esi + 0x44], 1
mov dword [esi + 0x1c], edi
mov dword [esi + 0x20], 1
mov dword [esi + 0x24], ecx
lea ecx, [esi + 0x58]
mov dword [esi + 0x74], ecx
lea ecx, [esi + 0x38]
mov dword [esi + 0x78], ecx
lea ecx, [esi + 0x1c]
mov dword [esi + 0x7c], 0x101e1ee4
mov dword [esi + 0x64], edx
mov dword [esi + 0x68], 0
push ecx
push eax
call fcn.1014a450
add esp, 8
mov edi, dword [ebp + 0x10]
cmp byte [esi + 0x2c], 3
jne 0x100f5f66
mov eax, dword [esi + 0x30]
mov ecx, dword [eax]
mov dword [esi + 0x10], eax
mov eax, dword [eax + 4]
mov dword [esi + 8], eax
mov eax, dword [eax]
mov dword [esi + 0xc], ecx
test eax, eax
je 0x100f5f3d
mov dword [esi + 0x150], 8
push dword [esi + 0xc]
call eax
mov edi, dword [ebp + 0x10]
add esp, 4
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
mov eax, dword [edx + 4]
test eax, eax
je 0x100f5f57
push dword [edx + 8]
push eax
push ecx
call fcn.10013780
add esp, 0xc
push 4
push 0xc
push dword [esi + 0x10]
call fcn.10013780
add esp, 0xc
cmp word [esi + 0x36], 0
je 0x100f5fea
cmp byte [edi + 0x46], 0
mov ax, 1
mov dword [esi + 0x150], 0
je 0x100f6045
movsd xmm0, qword [edi + 0x47]
movsd xmm1, qword [edi + 0x4f]
lea eax, [esi + 0x38]
mov byte [esi + 7], 1
lea ecx, [esi + 0x98]
movsd qword [esi + 0x44], xmm1
movsd qword [esi + 0x3c], xmm0
mov dword [esi + 0x4c], 0
mov dword [esi + 0x50], 0
mov word [esi + 0x54], 0
mov word [esi + 0x38], 1
push eax
push ecx
call fcn.10162c90
add esp, 8
lea ecx, [esi + 0x98]
mov byte [esi + 7], 1
lea eax, [esi + 0x1c]
push ecx
lea ecx, [esi + 0x28]
push ecx
push eax
call fcn.10162e40
add esp, 0xc
jmp 0x100f6094
movzx ecx, byte [edi + 0x41]
mov eax, dword [edi + 0x42]
mov dword [esi + 0x150], 0
test cl, 1
je 0x100f6043
mov dword [esi + 0x3a], eax
lea eax, [esi + 0x38]
mov word [esi + 0x3e], 0
mov word [esi + 0x38], 0
mov byte [esi + 7], 1
lea ecx, [esi + 0x98]
push eax
push ecx
call fcn.10162c90
add esp, 8
lea ecx, [esi + 0x98]
mov byte [esi + 7], 1
lea eax, [esi + 0x1c]
push ecx
lea ecx, [esi + 0x28]
push ecx
push eax
call fcn.10162e40
add esp, 0xc
jmp 0x100f6094
xor eax, eax
mov word [esi + 0x38], ax
xorps xmm0, xmm0
lea eax, [esi + 0x38]
mov dword [esi + 0x52], 0
mov byte [esi + 7], 1
lea ecx, [esi + 0x98]
movsd qword [esi + 0x3a], xmm0
movsd qword [esi + 0x42], xmm0
movsd qword [esi + 0x4a], xmm0
push eax
push ecx
call fcn.10162c90
add esp, 8
lea ecx, [esi + 0x98]
mov byte [esi + 7], 1
lea eax, [esi + 0x1c]
push ecx
lea ecx, [esi + 0x28]
push ecx
push eax
call fcn.10162e40
add esp, 0xc
cmp byte [esi + 0x1c], 4
mov edi, dword [ebp + 0x10]
je 0x100f6142
mov ecx, dword [esi + 0x20]
mov eax, dword [esi + 0x1c]
mov edx, ecx
shld ecx, eax, 0x18
shr edx, 8
cmp al, 4
je 0x100f6142
shld edx, ecx, 8
shl ecx, 8
movzx eax, al
mov byte [esi + 7], 1
or eax, ecx
mov dword [esi + 0x94], edx
lea ecx, [esi + 0x98]
mov edx, str.tcp_bind_local_error_
mov dword [esi + 0x90], eax
lea eax, [esi + 0x90]
push eax
push 0x14
call fcn.100f5160
add esp, 8
mov eax, dword [esi + 0x98]
movsd xmm0, qword [esi + 0x9c]
mov ecx, dword [esi + 0xa4]
mov edi, dword [ebp + 0x10]
test eax, eax
movsd qword [esi + 0x58], xmm0
mov dword [esi + 0x60], ecx
je 0x100f6142
mov ecx, dword [esi + 0x60]
mov edx, dword [ebp + 8]
movsd xmm0, qword [esi + 0x58]
mov dword [edx + 0x10], ecx
mov ecx, edx
movsd qword [edx + 8], xmm0
mov dword [ecx + 4], eax
mov dword [ecx], 1
push dword [esi + 0x28]
call dword [sym.imp.ws2_32.dll_closesocket]
mov ecx, dword [ebp + 8]
jmp 0x100f66ee
mov eax, dword [esi + 0x28]
cmp byte [edi + 0x58], 0
mov dword [esi + 0x6c], eax
je 0x100f6300
mov dword [esi + 0x150], 1
lea eax, [esi + 0x6c]
lea ecx, [esi + 0x2c]
push 1
push eax
push ecx
call fcn.10162390
add esp, 0xc
cmp byte [esi + 0x2c], 4
mov edi, dword [ebp + 0x10]
je 0x100f6300
movsd xmm0, qword [esi + 0x2c]
mov eax, dword [0x1027132c]
movsd qword [esi + 0x14], xmm0
mov eax, dword [eax]
cmp eax, 4
jae 0x100f62a5
movzx eax, byte [0x1026fc9c]
movzx ecx, al
lea edx, [ecx - 1]
cmp edx, 2
jb 0x100f61d1
test ecx, ecx
je 0x100f62a5
mov dword [esi + 0x150], 7
push 0x1026fc94
call fcn.101c9ee0
add esp, 4
mov edi, dword [ebp + 0x10]
test al, al
je 0x100f62a5
mov ecx, dword [0x1026fc94]
movzx eax, al
mov dword [esi + 0x150], 7
push eax
push ecx
call fcn.10149b60
add esp, 8
mov edi, dword [ebp + 0x10]
test al, al
je 0x100f62a5
mov eax, dword [0x1026fc94]
cmp dword [eax + 0x20], 0
je 0x100f671a
lea ecx, [eax + 0x1c]
mov edx, dword [ecx]
test edx, edx
je 0x100f671a
mov dword [esi + 0x38], edx
lea edx, [eax + 0x20]
lea edi, [esi + 0x14]
lea ebx, [esi + 0x74]
movsd xmm0, qword [edx]
movsd qword [esi + 0x3c], xmm0
mov edx, dword [edx + 8]
mov dword [esi + 0x74], edi
lea edi, [esi + 0x38]
mov dword [esi + 0x98], 0x101e1fec
mov dword [esi + 0x9c], 1
mov dword [esi + 0xa8], 0
mov dword [esi + 0xa0], ebx
lea ebx, [esi + 0x98]
mov dword [esi + 0x78], fcn.101979c0
mov dword [esi + 0xa4], 1
mov dword [esi + 0x1c], edi
lea edi, [esi + 0x1c]
mov dword [esi + 0x20], ebx
mov dword [esi + 0x24], 0x101e1ee4
mov dword [esi + 0x58], edi
mov dword [esi + 0x5c], 1
mov dword [esi + 0x60], ecx
lea ecx, [esi + 0x58]
mov dword [esi + 0x44], edx
mov dword [esi + 0x48], 0
push ecx
push eax
call fcn.1014a450
add esp, 8
mov edi, dword [ebp + 0x10]
cmp byte [esi + 0x14], 3
jne 0x100f6300
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
mov dword [esi + 0x10], eax
mov eax, dword [eax + 4]
mov dword [esi + 8], eax
mov eax, dword [eax]
mov dword [esi + 0xc], ecx
test eax, eax
je 0x100f62d7
mov dword [esi + 0x150], 4
push dword [esi + 0xc]
call eax
mov edi, dword [ebp + 0x10]
add esp, 4
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
mov eax, dword [edx + 4]
test eax, eax
je 0x100f62f1
push dword [edx + 8]
push eax
push ecx
call fcn.10013780
add esp, 0xc
push 4
push 0xc
push dword [esi + 0x10]
call fcn.10013780
add esp, 0xc
test byte [edi], 1
mov ecx, dword [ebp + 8]
je 0x100f64bf
mov eax, dword [edi + 4]
mov dword [esi + 0x150], 1
lea ecx, [esi + 0x6c]
lea edx, [esi + 0x2c]
push eax
push ecx
push edx
call fcn.101623b0
add esp, 0xc
cmp byte [esi + 0x2c], 4
mov edi, dword [ebp + 0x10]
je 0x100f64bc
movsd xmm0, qword [esi + 0x2c]
mov eax, dword [0x1027132c]
movsd qword [esi + 0x14], xmm0
mov eax, dword [eax]
cmp eax, 4
jae 0x100f6461
movzx eax, byte [0x1026fc90]
movzx ecx, al
lea edx, [ecx - 1]
cmp edx, 2
jb 0x100f638d
test ecx, ecx
je 0x100f6461
mov dword [esi + 0x150], 6
push 0x1026fc88
call fcn.101c9ee0
add esp, 4
mov edi, dword [ebp + 0x10]
test al, al
je 0x100f6461
mov ecx, dword [0x1026fc88]
movzx eax, al
mov dword [esi + 0x150], 6
push eax
push ecx
call fcn.10149b60
add esp, 8
mov edi, dword [ebp + 0x10]
test al, al
je 0x100f6461
mov eax, dword [0x1026fc88]
cmp dword [eax + 0x20], 0
je 0x100f6730
lea ecx, [eax + 0x1c]
mov edx, dword [ecx]
test edx, edx
je 0x100f6730
mov dword [esi + 0x38], edx
lea edx, [eax + 0x20]
lea edi, [esi + 0x14]
lea ebx, [esi + 0x74]
movsd xmm0, qword [edx]
movsd qword [esi + 0x3c], xmm0
mov edx, dword [edx + 8]
mov dword [esi + 0x74], edi
lea edi, [esi + 0x38]
mov dword [esi + 0x98], 0x101e2020
mov dword [esi + 0x9c], 1
mov dword [esi + 0xa8], 0
mov dword [esi + 0xa0], ebx
lea ebx, [esi + 0x98]
mov dword [esi + 0x78], fcn.101979c0
mov dword [esi + 0xa4], 1
mov dword [esi + 0x1c], edi
lea edi, [esi + 0x1c]
mov dword [esi + 0x20], ebx
mov dword [esi + 0x24], 0x101e1ee4
mov dword [esi + 0x58], edi
mov dword [esi + 0x5c], 1
mov dword [esi + 0x60], ecx
lea ecx, [esi + 0x58]
mov dword [esi + 0x44], edx
mov dword [esi + 0x48], 0
push ecx
push eax
call fcn.1014a450
add esp, 8
mov edi, dword [ebp + 0x10]
cmp byte [esi + 0x14], 3
jne 0x100f64bc
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
mov dword [esi + 0x10], eax
mov eax, dword [eax + 4]
mov dword [esi + 8], eax
mov eax, dword [eax]
mov dword [esi + 0xc], ecx
test eax, eax
je 0x100f6493
mov dword [esi + 0x150], 3
push dword [esi + 0xc]
call eax
mov edi, dword [ebp + 0x10]
add esp, 4
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
mov eax, dword [edx + 4]
test eax, eax
je 0x100f64ad
push dword [edx + 8]
push eax
push ecx
call fcn.10013780
add esp, 0xc
push 4
push 0xc
push dword [esi + 0x10]
call fcn.10013780
add esp, 0xc
mov ecx, dword [ebp + 8]
test byte [edi + 8], 1
je 0x100f668c
mov eax, dword [edi + 0xc]
mov dword [esi + 0x150], 1
lea ecx, [esi + 0x6c]
lea edx, [esi + 0x2c]
push eax
push ecx
push edx
call fcn.101623d0
add esp, 0xc
cmp byte [esi + 0x2c], 4
mov ecx, dword [ebp + 8]
je 0x100f668c
mov ebx, dword [esi + 0x2c]
mov edx, dword [esi + 0x30]
mov eax, dword [0x1027132c]
mov dword [esi + 0x18], edx
mov dword [esi + 0x14], ebx
mov eax, dword [eax]
cmp eax, 4
jae 0x100f6635
mov dword [esi + 0xc], edx
movzx eax, byte [0x1026fc84]
mov dword [esi + 8], ebx
movzx ecx, al
lea edx, [ecx - 1]
cmp edx, 2
jb 0x100f6552
test ecx, ecx
je 0x100f662f
mov dword [esi + 0x150], 5
push 0x1026fc7c
call fcn.101c9ee0
add esp, 4
mov ebx, dword [esi + 8]
test al, al
je 0x100f662f
mov ecx, dword [0x1026fc7c]
movzx eax, al
mov dword [esi + 0x150], 5
push eax
push ecx
call fcn.10149b60
add esp, 8
mov ebx, dword [esi + 8]
test al, al
je 0x100f662f
mov eax, dword [0x1026fc7c]
cmp dword [eax + 0x20], 0
je 0x100f6746
lea ecx, [eax + 0x1c]
mov edx, dword [ecx]
test edx, edx
je 0x100f6746
mov dword [esi + 0x38], edx
lea edx, [eax + 0x20]
lea edi, [esi + 0x14]
lea ebx, [esi + 0x74]
movsd xmm0, qword [edx]
movsd qword [esi + 0x3c], xmm0
mov edx, dword [edx + 8]
mov dword [esi + 0x74], edi
lea edi, [esi + 0x38]
mov dword [esi + 0x98], 0x101e2058
mov dword [esi + 0x9c], 1
mov dword [esi + 0xa8], 0
mov dword [esi + 0xa0], ebx
lea ebx, [esi + 0x98]
mov dword [esi + 0x78], fcn.101979c0
mov dword [esi + 0xa4], 1
mov dword [esi + 0x1c], edi
lea edi, [esi + 0x1c]
mov dword [esi + 0x20], ebx
mov dword [esi + 0x24], 0x101e1ee4
mov dword [esi + 0x58], edi
mov dword [esi + 0x5c], 1
mov dword [esi + 0x60], ecx
lea ecx, [esi + 0x58]
mov dword [esi + 0x44], edx
mov dword [esi + 0x48], 0
push ecx
push eax
call fcn.1014a450
add esp, 8
movzx ebx, byte [esi + 0x14]
mov edx, dword [esi + 0x18]
mov ecx, dword [ebp + 8]
jmp 0x100f6635
mov ecx, dword [ebp + 8]
mov edx, dword [esi + 0xc]
cmp bl, 3
jb 0x100f668c
mov eax, dword [edx]
mov dword [esi + 0xc], edx
mov dword [esi + 8], eax
mov eax, dword [edx + 4]
mov dword [esi + 0x10], eax
mov eax, dword [eax]
test eax, eax
je 0x100f6660
mov dword [esi + 0x150], 2
push dword [esi + 8]
call eax
add esp, 4
mov edx, dword [esi + 0x10]
mov ecx, dword [esi + 8]
mov eax, dword [edx + 4]
test eax, eax
je 0x100f667a
push dword [edx + 8]
push eax
push ecx
call fcn.10013780
add esp, 0xc
push 4
push 0xc
push dword [esi + 0xc]
call fcn.10013780
add esp, 0xc
mov ecx, dword [ebp + 8]
movsd xmm0, qword [esi + 0x136]
movsd xmm1, qword [esi + 0x130]
movsd xmm2, qword [esi + 0x120]
mov edx, dword [ebp + 0x18]
mov eax, dword [ebp + 0x14]
mov ebx, dword [ebp + 0x1c]
movzx edi, word [esi + 0x36]
movsd qword [ecx + 0x30], xmm0
movsd qword [ecx + 0x2a], xmm1
movsd xmm1, qword [esi + 0x128]
movsd qword [ecx + 0x1a], xmm2
movsd qword [ecx + 0x22], xmm1
mov dword [ecx], 0
mov dword [ecx + 0xc], edx
mov edx, dword [esi + 0x6c]
mov dword [ecx + 8], eax
mov dword [ecx + 0x10], ebx
mov word [ecx + 0x18], di
mov dword [ecx + 0x38], edx
mov byte [ecx + 0x60], 0
mov byte [ecx + 0x64], 0
mov eax, dword [esi + 0x148]
mov dword fs:[0], eax
mov eax, ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x101e1f74
push 0x22
push 0x101e1e07
call fcn.101cc830
add esp, 0xc
jmp 0x100f675a
push 0x101e1fbc
push 0x22
push 0x101e1e07
call fcn.101cc830
add esp, 0xc
jmp 0x100f675a
push 0x101e1ff4
push 0x22
push 0x101e1e07
call fcn.101cc830
add esp, 0xc
jmp 0x100f675a
push 0x101e2028
push 0x22
push 0x101e1e07
call fcn.101cc830
add esp, 0xc
ud2