Function at 0x47d3b6
Capabilities:
Connect socket
Set socket configuration
Terminate process

Disassembly:
sub esp, 0x30
mov eax, dword [0x6ccd44]
xor eax, esp
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x34]
xor edx, edx
push esi
mov esi, ecx
mov dword [esp + 4], eax
xor eax, eax
mov dword [esp + 0x10], edx
inc eax
push edi
cmp dword [esi + 0x34], 0xffffffff
mov dword [esp + 0xc], eax
jne 0x47d73f
push ebx
push ebp
push 7
pop ecx
lea ebx, [esi + 0x40]
xor eax, eax
mov edi, ebx
push 0x38
rep stosd dword es:[edi], eax
push edx
lea eax, [esi + 0x5c]
push eax
call fcn.005b5fd0
mov edi, dword [esp + 0x1c]
add esp, 0xc
push 0x10
pop ebp
push 0x17
pop edx
mov dword [esp + 0x18], edx
test edi, edi
je 0x47d43e
movzx ecx, word [edi]
xor eax, eax
inc eax
cmp cx, ax
jne 0x47d426
mov word [ebx], ax
jmp 0x47d43e
cmp cx, dx
mov eax, ebp
push 0x1c
pop ecx
cmove eax, ecx
mov edx, ecx
push eax
push edi
mov ecx, ebx
call section..text
pop ecx
pop ecx
xor eax, eax
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], eax
mov dword [esi + 0x1e8], eax
mov eax, dword [esp + 0x4c]
mov dword [esi + 0x1dc], eax
mov eax, dword [esp + 0x48]
mov dword [esi + 0x1cc], eax
xor eax, eax
push 0x3a3
push 0x71f0a0
inc eax
push eax
push dword [esi + 0x200]
push dword [esi + 0x1f8]
call fcn.005e80c0
add esp, 0x14
test eax, eax
je 0x47d783
movzx edx, word [ebx]
xor ecx, ecx
inc ecx
mov dword [esi + 0x1f8], eax
mov eax, dword [esi + 0x200]
mov dword [esi + 0x1fc], eax
cmp dx, cx
je 0x47d577
push 7
xor eax, eax
lea edi, [esp + 0x24]
pop ecx
rep stosd dword es:[edi], eax
movzx eax, word [esi + 0x94]
mov edi, dword [esp + 0x10]
test ax, ax
jne 0x47d4c9
mov ax, word [edi]
mov word [esp + 0x20], ax
lea ecx, [esp + 0x20]
cmp ax, 2
jne 0x47d526
cmp word [esp + 0x22], 0
je 0x47d57b
mov edi, 0x3be
push edi
push 0x71f124
push 0x71f144
call fcn.00401109
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov esi, 0xfd
mov edx, 0x71f15c
push esi
push edi
xor ecx, ecx
call fcn.00488a50
push edi
push 0x71f17c
push 0x71f19c
jmp 0x47d7ad
cmp ax, word [esp + 0x18]
jne 0x47d57b
cmp word [esp + 0x22], 0
je 0x47d57b
mov edi, 0x3bf
push edi
push 0x71f1c0
push 0x71f1e0
call fcn.00401109
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov esi, 0xfd
mov edx, 0x71f1f8
push esi
push edi
xor ecx, ecx
call fcn.00488a50
push edi
push 0x71f218
push 0x71f238
jmp 0x47d7ad
mov ecx, dword [esp + 0x1c]
xor eax, eax
inc eax
cmp dx, ax
je 0x47d5af
xor eax, eax
cmp word [ecx], ax
je 0x47d59c
push 6
lea edx, [eax + 1]
call fcn.004859bb
mov dword [esi + 0x34], eax
pop ecx
test eax, eax
jne 0x47d5f2
push eax
push 0x3ca
mov dword [esi + 0x34], eax
push 0x71f25c
jmp 0x47d70e
xor ecx, ecx
push 0
inc ecx
push ecx
push ecx
call dword [sym.imp.WS2_32.dll_socket]
mov dword [esi + 0x34], eax
test eax, eax
jns 0x47d5f2
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov esi, 0xfd
mov edi, 0x3d0
push esi
push edi
mov edx, 0x71f27c
xor ecx, ecx
call fcn.00488a50
push edi
push 0x71f29c
push 0x71f2bc
jmp 0x47d7ad
xor eax, eax
mov dword [esi + 0x1ec], eax
mov dword [esi + 0x220], eax
mov dword [esi + 0x1f0], eax
mov dword [esi + 0x1f4], eax
inc eax
cmp word [ebx], ax
je 0x47d654
push 4
lea eax, [esp + 0x18]
push eax
push 8
push 0xffff
push dword [esi + 0x34]
call dword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
je 0x47d654
push 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x3de
mov edx, 0x71f2e0
xor ecx, ecx
call fcn.00488a50
add esp, 0xc
push 0xfd
jmp 0x47d7b6
lea eax, [esp + 0x14]
push eax
push 0x8004667e
push dword [esi + 0x34]
call dword [sym.imp.WS2_32.dll_ioctlsocket]
lea eax, [esi + 0x94]
movzx ecx, word [eax]
test cx, cx
je 0x47d6a8
xor edx, edx
inc edx
cmp word [ebx], dx
je 0x47d6a8
push 0x17
pop edx
push 0x1c
cmp cx, dx
pop ecx
cmove ebp, ecx
push ebp
push eax
push dword [esi + 0x34]
call dword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
je 0x47d6db
xor eax, eax
push eax
push 0x3f1
push 0x71f300
jmp 0x47d70e
xor eax, eax
inc eax
cmp word [ebx], ax
je 0x47d701
push 0x17
pop eax
cmp word [edi], ax
push 0x1c
pop ecx
cmove ebp, ecx
push ebp
push edi
push dword [esi + 0x34]
call dword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
je 0x47d6db
xor eax, eax
push eax
push 0x3fd
push 0x71f320
jmp 0x47d70e
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x2733
je 0x47d6f7
xor eax, eax
push eax
push 0x41e
push 0x71f360
jmp 0x47d70e
mov ecx, dword [esi + 0x10]
call fcn.00481a5b
jmp 0x47d72c
xor eax, eax
push eax
push 0x409
push 0x71f340
mov ecx, dword [esi + 0x1d8]
mov edx, esi
or dword [esi + 0x1ec], 0xffffffff
push eax
push fcn.0047d29f
push eax
call fcn.004868db
add esp, 0x18
mov ecx, dword [esp + 0x3c]
pop ebp
pop ebx
pop edi
pop esi
xor ecx, esp
call fcn.005b35b0
add esp, 0x30
ret
mov edi, 0x384
push edi
push 0x71f004
push 0x71f024
call fcn.00401109
push dword [esi + 0x34]
mov esi, 0xfd
mov edx, 0x71f03c
push esi
push edi
xor ecx, ecx
call fcn.00488a50
push edi
push 0x71f05c
push str.CRITICALEXIT2__FILE:__s__LINE:__d_r_n
call fcn.00401109
add esp, 0x24
push esi
call fcn.005c3000
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov esi, 0xfe
mov edi, 0x3a3
push esi
push edi
mov edx, 0x71f0c0
xor ecx, ecx
call fcn.00488a50
push edi
push 0x71f0e0
push 0x71f100
call fcn.00401109
add esp, 0x18
push esi
call fcn.005c3000
int3