Function at 0x100f52f0
Capabilities:
Receive data
Receive data on socket
Set socket configuration

Disassembly:
sub esp, 0x21c
mov eax, dword [0x101ce2ac]
xor eax, esp
mov dword [esp + 0x218], eax
push ebx
push ebp
mov ebp, dword [esp + 0x238]
push esi
mov esi, dword [esp + 0x230]
push edi
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], ebp
push ecx
pop ecx
test edx, edx
test bh, bh
test cl, cl
test cl, cl
nop
push ecx
pop ecx
mov edi, edi
test cl, cl
test dl, dl
push edx
pop edx
test cl, cl
test cl, cl
mov ch, ch
push edx
pop edx
test dl, dl
mov ebx, ebx
mov dword [esp + 0x18], 0xffffffff
mov bh, bh
test ebp, ebp
je 0x100f569a
mov dword [ebp], 0
push edx
pop edx
mov dword [esp + 0x1c], 4
push edx
pop edx
mov ebx, dword [esp + 0x230]
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1c]
push ecx
push 0x1006
push 0xffff
push ebx
call dword [sym.imp.WS2_32.dll_getsockopt]
cmp eax, 0xffffffff
jne 0x100f53a5
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebp], eax
test eax, 0x7863
test dl, dl
or esi, 0xffffffff
test ch, ch
jmp 0x100f56a8
mov edx, dword [esp + 0x23c]
push 4
lea eax, [esp + 0x18]
push eax
push 0x1006
push 0xffff
push ebx
mov dword [esp + 0x28], edx
call dword [sym.imp.WS2_32.dll_setsockopt]
cmp eax, 0xffffffff
jne 0x100f53e4
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebp], eax
push ebx
pop ebx
mov bh, bh
or esi, 0xffffffff
test cl, cl
jmp 0x100f56a8
test esi, esi
je 0x100f5530
mov eax, dword [esp + 0x238]
test eax, eax
je 0x100f5530
xor edi, edi
mov ch, ch
xor ebp, ebp
mov edx, edx
lea ebx, [eax + 4]
push eax
pop eax
cmp ebx, 0x200
jb 0x100f5419
mov esi, 0x200
test bh, bh
jmp 0x100f541d
mov esi, ebx
test dh, dh
push 0x200
lea ecx, [esp + 0x2c]
push 0
push ecx
call fcn.10117df0
add esp, 0xc
test dl, dl
mov dl, dl
mov eax, dword [esp + 0x230]
push 0
push esi
lea edx, [esp + 0x30]
push edx
push eax
call dword [sym.imp.WS2_32.dll_recv]
mov esi, eax
push edx
pop edx
cmp esi, 0xffffffff
je 0x100f54c0
test esi, esi
je 0x100f5521
test ebp, ebp
jne 0x100f5485
mov eax, dword [esp + 0x24]
lea ecx, [esi - 4]
push ecx
lea edx, [esp + 0x30]
push edx
add eax, edi
push eax
call fcn.10117a80
add esp, 0xc
mov eax, eax
lea edi, [edi + esi - 4]
test eax, 0x4ec8
jmp 0x100f54a0
mov edx, dword [esp + 0x24]
push esi
lea ecx, [esp + 0x2c]
push ecx
add edx, edi
push edx
call fcn.10117a80
add esp, 0xc
mov al, al
add edi, esi
push ebx
pop ebx
add ebp, 1
push eax
pop eax
sub ebx, esi
test ebx, ebx
test ebx, ebx
jg 0x100f5408
test dh, dh
mov esi, edi
mov bh, bh
mov ebp, dword [esp + 0x20]
jmp 0x100f56a1
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ecx, dword [esp + 0x20]
mov dword [ecx], eax
push edx
pop edx
mov eax, dword [ecx]
cmp eax, 0x2746
je 0x100f5511
cmp eax, 0x2745
je 0x100f5511
cmp eax, 0x274a
je 0x100f5511
cmp eax, 0x2744
je 0x100f5511
cmp eax, 0x274c
jne 0x100f5503
mov edi, edi
mov esi, 0xfffffffb
push ebx
pop ebx
mov ebp, ecx
jmp 0x100f56a1
mov al, al
or esi, 0xffffffff
push ecx
pop ecx
mov ebp, ecx
jmp 0x100f56a1
xchg ebx, eax
xchg ebx, eax
mov esi, 0xfffffffa
push ebx
pop ebx
mov ebp, ecx
jmp 0x100f56a1
push edx
pop edx
xor esi, esi
mov al, al
mov ebp, dword [esp + 0x20]
jmp 0x100f56a1
mov edi, dword [sym.imp.WS2_32.dll_recv]
xor esi, esi
test eax, 0x270f
lea ecx, [ecx]
mov dword [esp + 0x10], 0
test bh, bh
push 2
push 4
lea eax, [esp + 0x18]
push eax
push ebx
call edi
mov edi, edi
cmp eax, 0xffffffff
je 0x100f55b6
test eax, eax
je 0x100f560f
cmp eax, 4
jae 0x100f557a
cmp esi, 3
jge 0x100f561a
add esi, 1
test ch, ch
jmp 0x100f5540
jne 0x100f5626
mov esi, dword [esp + 0x10]
push eax
pop eax
cmp esi, 0xc521974f
jne 0x100f5685
push 0
push 4
lea ecx, [esp + 0x18]
push ecx
push ebx
call edi
cmp eax, 0xffffffff
je 0x100f5632
test eax, eax
jne 0x100f5536
test dl, dl
xor esi, esi
test eax, eax
jmp 0x100f56a8
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebp], eax
xchg ebx, eax
xchg ebx, eax
mov eax, dword [ebp]
cmp eax, 0x2746
je 0x100f5601
cmp eax, 0x2745
je 0x100f5601
cmp eax, 0x274a
je 0x100f5601
cmp eax, 0x2744
je 0x100f5601
cmp eax, 0x274c
jne 0x100f55f5
push ecx
pop ecx
mov esi, 0xfffffffb
mov dh, dh
jmp 0x100f56a8
test eax, eax
or esi, 0xffffffff
mov bl, bl
jmp 0x100f56a8
mov ebx, ebx
mov esi, 0xfffffffa
mov dh, dh
jmp 0x100f56a8
test bl, bl
xor esi, esi
test edx, edx
jmp 0x100f56a8
test ah, ah
or esi, 0xffffffff
mov dh, dh
jmp 0x100f56a8
test ch, ch
or esi, 0xffffffff
test eax, 0x1303
jmp 0x100f56a8
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebp], eax
push ebx
pop ebx
mov eax, dword [ebp]
cmp eax, 0x2746
je 0x100f567a
cmp eax, 0x2745
je 0x100f567a
cmp eax, 0x274a
je 0x100f567a
cmp eax, 0x2744
je 0x100f567a
cmp eax, 0x274c
jne 0x100f5671
test eax, 0x1b93
mov esi, 0xfffffffb
push eax
pop eax
jmp 0x100f56a8
mov bl, bl
or esi, 0xffffffff
test cl, cl
jmp 0x100f56a8
test cl, cl
mov esi, 0xfffffffa
mov dh, dh
jmp 0x100f56a8
test esi, esi
jg 0x100f5694
mov ecx, ecx
mov esi, 0xfffffff8
mov ecx, ecx
jmp 0x100f56a8
test dl, dl
mov ah, ah
jmp 0x100f56a8
mov ecx, ecx
or esi, 0xffffffff
test dl, dl
mov ebx, dword [esp + 0x230]
mov eax, dword [esp + 0x18]
cmp eax, 0xffffffff
je 0x100f56f0
mov edi, dword [sym.imp.WS2_32.dll_setsockopt]
mov dword [esp + 0x14], eax
mov ah, ah
push 4
lea edx, [esp + 0x18]
push edx
push 0x1006
push 0xffff
push ebx
call edi
cmp eax, 0xffffffff
jne 0x100f56f0
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebp], eax
push ecx
pop ecx
mov edx, edx
or esi, 0xffffffff
mov dh, dh
mov eax, dword [esp + 0x18]
cmp eax, esi
jne 0x100f56b7
mov ecx, dword [esp + 0x228]
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.10116cb9
add esp, 0x21c
ret