Function at 0x1001143b
Capabilities:
Read file on windows
Receive data
Receive data on socket

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
mov eax, 0x2030
call fcn.10013a40
mov eax, dword [ecx]
mov esi, ecx
mov eax, dword [eax + edx*4]
mov ecx, dword [eax + 0x20]
mov ebx, dword [eax]
test ecx, ecx
je 0x1001151a
sub ecx, dword [eax + 0x28]
lea eax, [esp + 0x2c]
push 0
push ecx
push eax
mov dword [esp + 0x10], ebx
push ebx
mov ebx, edx
call dword [sym.imp.WS2_32.dll_recv]
mov edi, eax
mov eax, dword [esi]
mov dword [esp], esi
mov eax, dword [eax + ebx*4]
cmp dword [eax + 8], 1
je 0x10011738
test edi, edi
js 0x1001156b
je 0x10011595
mov ecx, dword [eax + 0x24]
add ecx, dword [eax + 0x28]
push edi
lea eax, [esp + 0x30]
push eax
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov esi, dword [esp]
mov eax, dword [esi]
mov eax, dword [eax + ebx*4]
add edi, dword [eax + 0x28]
mov dword [eax + 0x28], edi
cmp edi, dword [eax + 0x20]
ja 0x10011784
mov ecx, ebx
mov ebx, dword [esp + 4]
jne 0x10011730
push dword [eax + 0x34]
push 0xffff
push 0
push edi
push dword [eax + 0x24]
push ebx
push esi
mov edi, ecx
call dword [eax + 0x10]
add esp, 0x1c
mov ecx, esi
mov edx, ebx
push eax
call fcn.100117e1
pop eax
mov eax, dword [esi]
mov eax, dword [eax + edi*4]
push dword [eax + 0x28]
push 0
push dword [eax + 0x24]
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, dword [esi]
mov eax, dword [eax + edi*4]
and dword [eax + 0x28], 0
jmp 0x10011730
mov ecx, dword [eax + 8]
cmp ecx, 3
je 0x1001152a
test ecx, ecx
jne 0x100115c3
test ecx, ecx
mov dword [esp + 8], edx
je 0x10011656
cmp ecx, 3
jne 0x100116b0
mov edi, esi
lea esi, [esp + 0x10]
lea ecx, [esp + 0x2c]
push 0
push esi
push 0x2000
push ecx
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov ecx, eax
mov eax, dword [esi]
mov esi, edi
test ecx, ecx
setne dl
jmp 0x1001166f
mov edi, dword [eax + 0x18]
test edi, edi
je 0x100115b7
mov ecx, dword [eax]
call fcn.1001185f
mov esi, dword [esp]
mov ecx, dword [esi]
mov ecx, dword [ecx + ebx*4]
push dword [ecx + 0x34]
push eax
mov ebx, dword [esp + 0xc]
push ebx
push esi
call edi
add esp, 0x10
jmp 0x1001171a
mov ecx, dword [eax + 0x1c]
test ecx, ecx
je 0x100115b7
push dword [eax + 0x34]
mov edi, dword [esp + 8]
push edi
mov esi, dword [esp + 8]
push esi
call ecx
add esp, 0xc
mov ecx, esi
mov edx, edi
jmp 0x1001171e
mov ecx, dword [esp]
mov edx, dword [esp + 4]
jmp 0x1001172b
mov edi, edx
lea eax, [esp + 0x28]
xorps xmm0, xmm0
lea ecx, [esp + 0x10]
lea edx, [esp + 0x2c]
mov dword [eax], 0x10
movaps xmmword [ecx], xmm0
push eax
push ecx
push 0
push 0x2000
push edx
push ebx
call dword [sym.imp.WS2_32.dll_recvfrom]
test eax, eax
js 0x100116c2
mov ecx, dword [esi]
mov edx, dword [ecx + edi*4]
je 0x10011709
mov ecx, dword [edx + 0x10]
test ecx, ecx
je 0x10011730
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x14]
push ecx
mov dword [esp + 4], eax
call dword [sym.imp.WS2_32.dll_inet_ntoa]
mov dword [esp + 0xc], eax
movzx eax, word [esp + 0x12]
push eax
call dword [sym.imp.WS2_32.dll_ntohs]
mov ecx, dword [esi]
movzx eax, ax
mov ecx, dword [ecx + edi*4]
push dword [ecx + 0x34]
push eax
push dword [esp + 0x14]
push dword [esp + 0xc]
lea eax, [esp + 0x3c]
push eax
push ebx
push esi
call dword [esp + 0x20]
add esp, 0x1c
jmp 0x1001171a
lea eax, [esp + 0x2c]
push 0
push 0x2000
push eax
push ebx
call dword [sym.imp.WS2_32.dll_recv]
mov dword [esp + 0x10], eax
mov dl, 1
mov ecx, dword [esi]
test eax, eax
js 0x100116aa
test dl, dl
je 0x100116aa
mov edx, dword [esp + 8]
test eax, eax
mov ecx, dword [ecx + edx*4]
je 0x100116f9
mov edx, dword [ecx + 0x10]
test edx, edx
je 0x10011730
mov edi, esi
lea esi, [esp + 0x2c]
push dword [ecx + 0x34]
push 0xffff
push 0
push eax
push esi
push ebx
push edi
call edx
add esp, 0x1c
jmp 0x100116f1
mov edx, dword [esp + 8]
jmp 0x100116b2
mov ecx, dword [esi]
mov edi, esi
mov eax, dword [ecx + edx*4]
mov esi, dword [eax + 0x18]
test esi, esi
je 0x100116f5
mov ecx, dword [eax]
jmp 0x100116d8
mov eax, dword [esi]
mov edx, edi
mov eax, dword [eax + edi*4]
mov edi, esi
mov esi, dword [eax + 0x18]
test esi, esi
je 0x100116f5
mov ecx, dword [eax]
mov dword [esp + 8], edx
call fcn.1001185f
mov ecx, dword [edi]
mov edx, dword [esp + 8]
mov ecx, dword [ecx + edx*4]
push dword [ecx + 0x34]
push eax
push ebx
push edi
call esi
add esp, 0x10
mov ecx, edi
jmp 0x1001171c
mov ecx, edi
jmp 0x10011729
mov eax, dword [ecx + 0x1c]
test eax, eax
je 0x10011727
push dword [ecx + 0x34]
push ebx
push esi
call eax
jmp 0x10011717
mov ecx, dword [edx + 0x1c]
test ecx, ecx
je 0x10011727
push dword [edx + 0x34]
push ebx
push esi
call ecx
add esp, 0xc
mov ecx, esi
mov edx, ebx
push eax
call fcn.100117e1
pop eax
jmp 0x10011730
mov ecx, esi
mov edx, ebx
call fcn.1001107b
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 2
call dword [0x10016020]
add esp, 4
mov esi, eax
push 0
push 0x14
push 0x10017b30
call fcn.100129b9
add esp, 0xc
mov edi, eax
push 0
push 0x24
push 0x10017b50
call fcn.100129b9
add esp, 0xc
mov ebx, eax
push 0
push 0x30
push 0x10017ca0
call fcn.100129b9
add esp, 0xc
push eax
push 0x134
jmp 0x100117ce
push 2
call dword [0x10016020]
add esp, 4
mov esi, eax
push 0
push 0x14
push 0x10017b30
call fcn.100129b9
add esp, 0xc
mov edi, eax
push 0
push 0x24
push 0x10017b50
call fcn.100129b9
add esp, 0xc
mov ebx, eax
push 0
push 0x2d
push 0x10017cd0
call fcn.100129b9
add esp, 0xc
push eax
push 0x14f
push edi
push ebx
push esi
call fcn.10010f00
add esp, 0x14
push 1
call dword [sym.imp.KERNEL32.dll_ExitThread]