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

Disassembly:
sub esp, 0x16c
push ebx
push ebp
push esi
mov ebx, ecx
mov dword [esp + 0x34], edx
xor esi, esi
mov dword [esp + 0x50], ebx
xor ebp, ebp
mov dword [esp + 0xc], 0x10
inc esi
mov dword [esp + 0x14], ebp
push edi
mov dword [esp + 0x1c], esi
cmp dword [ebx + 0x29c], ebp
jne 0x1000f054
mov edx, dword [ebx + 0x298]
cmp edx, 0xffffffff
je 0x1000f054
call fcn.100096b5
mov dword [ebx + 0x29c], esi
mov eax, dword [sym.imp.WS2_32.dll_select]
lea edx, [ebx + 0x190]
mov dword [esp + 0x3c], eax
mov eax, dword [sym.imp.WS2_32.dll___WSAFDIsSet]
mov dword [esp + 0x14], eax
mov eax, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esp + 0x40], eax
mov eax, dword [sym.imp.WS2_32.dll_socket]
mov dword [esp + 0x44], eax
mov eax, dword [sym.imp.WS2_32.dll_setsockopt]
mov dword [esp + 0x20], eax
mov eax, dword [sym.imp.WS2_32.dll_connect]
mov dword [esp + 0x24], eax
mov eax, dword [sym.imp.WS2_32.dll_send]
mov dword [esp + 0x48], eax
mov eax, dword [sym.imp.WS2_32.dll_accept]
mov dword [esp + 0x4c], eax
mov eax, dword [sym.imp.WS2_32.dll_recvfrom]
mov dword [esp + 0x28], edx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x38]
lea edi, [esp + 0x70]
push 0x41
pop ecx
mov dword [esp + 0x6c], eax
mov esi, edx
rep movsd dword es:[edi], dword [esi]
xor ecx, ecx
lea eax, [esp + 0x68]
push eax
push ecx
push ecx
lea eax, [esp + 0x7c]
mov dword [esp + 0x74], ecx
push eax
mov eax, dword [ebx + 0x18c]
inc eax
push eax
call dword [esp + 0x50]
mov edi, eax
test edi, edi
je 0x1000f4bc
js 0x1000f4a9
mov eax, dword [ebx + 0x160]
add ebp, edi
mov esi, dword [esp + 0x14]
mov dword [esp + 0x18], ebp
cmp eax, 0xffffffff
je 0x1000f24f
lea ecx, [esp + 0x70]
push ecx
push eax
call esi
test eax, eax
je 0x1000f24f
push dword [ebx + 0x2c0]
mov ecx, dword [ebx + 0x160]
lea edx, [esp + 0x30]
push 5
call fcn.1000f706
pop ecx
pop ecx
test eax, eax
je 0x1000f4a2
cmp eax, 0xffffffff
je 0x1000f4a2
call dword [esp + 0x40]
cmp dword [esp + 0x2c], 0xffffffff
mov dword [ebx + 0x178], eax
je 0x1000f49d
push dword [ebx + 0x2c0]
mov ecx, dword [ebx + 0x160]
lea edx, [esp + 0x35]
push 4
call fcn.1000f706
pop ecx
pop ecx
test eax, eax
je 0x1000f4a2
cmp eax, 0xffffffff
je 0x1000f4a2
push 6
push 1
push 2
call dword [esp + 0x50]
mov esi, eax
cmp esi, 0xffffffff
je 0x1000f491
push 4
lea eax, [esp + 0x20]
push eax
push 1
push 6
push esi
call dword [esp + 0x34]
test eax, eax
js 0x1000f47b
lfence
push dword [esp + 0x10]
lea eax, [ebx + 0x168]
push eax
lea eax, [esp + 0x60]
push eax
call fcn.10027640
add esp, 0xc
lea eax, [esp + 0x58]
push dword [esp + 0x10]
push eax
push esi
call dword [esp + 0x30]
cmp eax, 0xffffffff
je 0x1000f47b
push 0
push 9
lea eax, [esp + 0x34]
push eax
lfence
push esi
mov byte [esp + 0x40], 3
call dword [esp + 0x58]
cmp eax, 9
jne 0x1000f47b
mov edx, esi
mov ecx, ebx
lfence
call fcn.100099cb
mov edx, dword [esp + 0x70]
xor ecx, ecx
test edx, edx
je 0x1000f242
mov eax, dword [ebx + 0x160]
cmp dword [esp + ecx*4 + 0x74], eax
je 0x1000f236
inc ecx
cmp ecx, edx
jb 0x1000f21c
jmp 0x1000f242
mov eax, dword [esp + ecx*4 + 0x78]
mov dword [esp + ecx*4 + 0x74], eax
inc ecx
mov edx, dword [esp + 0x70]
lea eax, [edx - 1]
cmp ecx, eax
jb 0x1000f229
dec edx
mov dword [esp + 0x70], edx
sub edi, 1
je 0x1000f4b7
mov esi, dword [esp + 0x14]
mov eax, dword [ebx + 0x184]
cmp eax, 0xffffffff
je 0x1000f2f0
lea ecx, [esp + 0x70]
push ecx
push eax
call esi
test eax, eax
je 0x1000f2f0
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x5c]
push eax
push dword [ebx + 0x184]
call dword [esp + 0x58]
mov esi, eax
cmp esi, 0xffffffff
je 0x1000f4a9
push 4
lea eax, [esp + 0x20]
push eax
push 1
push 6
push esi
call dword [esp + 0x34]
lfence
test eax, eax
js 0x1000f488
mov edx, esi
mov ecx, ebx
call fcn.100099cb
mov edx, dword [esp + 0x70]
xor ecx, ecx
test edx, edx
je 0x1000f2e7
mov eax, dword [ebx + 0x184]
cmp dword [esp + ecx*4 + 0x74], eax
je 0x1000f2db
inc ecx
cmp ecx, edx
jb 0x1000f2c1
jmp 0x1000f2e7
mov eax, dword [esp + ecx*4 + 0x78]
mov dword [esp + ecx*4 + 0x74], eax
inc ecx
mov edx, dword [esp + 0x70]
lea eax, [edx - 1]
cmp ecx, eax
jb 0x1000f2ce
dec edx
mov dword [esp + 0x70], edx
sub edi, 1
je 0x1000f4b7
mov eax, dword [ebx + 0x2a4]
cmp eax, 0xffffffff
je 0x1000f401
lea ecx, [esp + 0x70]
push ecx
push eax
call dword [esp + 0x1c]
test eax, eax
je 0x1000f401
cmp dword [ebx + 0x2a8], 0
jne 0x1000f321
mov ecx, ebx
call fcn.100099d4
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x5c]
push eax
push 2
push 1
lea eax, [esp + 0x3c]
push eax
push dword [ebx + 0x2a4]
call dword [esp + 0x68]
test eax, eax
jns 0x1000f352
mov ecx, ebx
call fcn.1000f515
and dword [ebx + 0x2ac], 0
jmp 0x1000f3c0
cmp dword [ebx + 0x2ac], 0
lea esi, [ebx + 0x2b0]
je 0x1000f377
push dword [esp + 0x10]
lea eax, [esp + 0x5c]
push esi
push eax
call sub.ntdll.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1000f3b9
push dword [esp + 0x10]
lea eax, [esp + 0x5c]
push eax
push esi
call fcn.10027640
add esp, 0xc
mov dword [ebx + 0x2ac], 1
lea eax, [esp + 0x58]
push dword [esp + 0x10]
push eax
push dword [ebx + 0x2a4]
call dword [esp + 0x30]
test eax, eax
js 0x1000f4ae
mov edx, dword [ebx + 0x2a4]
call fcn.1000cca4
mov ecx, ebx
call fcn.1000ccb5
mov edx, dword [esp + 0x70]
xor ecx, ecx
test edx, edx
je 0x1000f3f6
mov eax, dword [ebx + 0x2a4]
cmp dword [esp + ecx*4 + 0x74], eax
je 0x1000f3ea
inc ecx
cmp ecx, edx
jb 0x1000f3d0
jmp 0x1000f3f6
mov eax, dword [esp + ecx*4 + 0x78]
mov dword [esp + ecx*4 + 0x74], eax
inc ecx
mov edx, dword [esp + 0x70]
lea eax, [edx - 1]
cmp ecx, eax
jb 0x1000f3dd
dec edx
mov dword [esp + 0x70], edx
lea eax, [edi - 1]
test eax, eax
je 0x1000f4b7
mov ecx, ebx
call fcn.1000964a
mov edi, eax
mov ecx, edi
call fcn.1000968f
mov esi, eax
test esi, esi
je 0x1000f460
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x28]
cmp dword [esi + 0x2c], 0
jne 0x1000f44b
push ebx
push dword [esi + 0x14]
call ebp
test eax, eax
je 0x1000f444
lea eax, [esp + 0x70]
push eax
push dword [esi + 0x14]
call ebp
test eax, eax
je 0x1000f444
mov ecx, esi
call fcn.10009b38
mov ecx, esi
call fcn.1000a6b4
mov ecx, edi
call fcn.1000968f
mov esi, eax
test esi, esi
jne 0x1000f41f
mov ebx, dword [esp + 0x54]
mov ebp, dword [esp + 0x18]
mov ecx, edi
call fcn.100096b0
cmp dword [ebx + 0x34c], 0
je 0x1000f4b7
lea edx, [ebx + 0x190]
jmp 0x1000f0af
lfence
mov dword [ebx + 0x294], 2
push esi
call dword [sym.imp.WS2_32.dll_closesocket]
jmp 0x1000f4a9
mov dword [ebx + 0x294], 2
jmp 0x1000f4a9
xor eax, eax
inc eax
jmp 0x1000f50a
mov ecx, ebx
call fcn.1000ee3d
or eax, 0xffffffff
jmp 0x1000f50a
mov ecx, ebx
call fcn.1000f515
jmp 0x1000f4a9
lfence
jmp 0x1000f508
mov ecx, ebx
call fcn.1000964a
mov edi, eax
mov ecx, edi
call fcn.1000968f
mov esi, eax
test esi, esi
je 0x1000f501
mov ebp, dword [esp + 0x14]
cmp dword [esi + 0x2c], 0
jne 0x1000f4f0
push dword [esp + 0x28]
push dword [esi + 0x14]
call ebp
test eax, eax
je 0x1000f4f0
mov ecx, esi
call fcn.1000a6b4
mov ecx, edi
call fcn.1000968f
mov esi, eax
test esi, esi
jne 0x1000f4d6
mov ebp, dword [esp + 0x18]
mov ecx, edi
call fcn.100096b0
mov eax, ebp
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x16c
ret