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

Disassembly:
sub esp, 0x30
mov eax, dword [0x6b0d44]
xor eax, esp
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x34]
and dword [esp + 0xc], 0
push ebx
push ebp
push esi
mov esi, ecx
mov dword [esp + 0xc], eax
xor eax, eax
inc eax
push edi
cmp dword [esi + 0x30], 0xffffffff
mov dword [esp + 0x14], eax
jne 0x4687bd
push 7
pop ecx
xor eax, eax
lea ebx, [esi + 0x3c]
push 0x38
mov edi, ebx
push eax
rep stosd dword es:[edi], eax
lea eax, [esi + 0x58]
push eax
call fcn.0059de40
mov edi, dword [esp + 0x1c]
add esp, 0xc
xor eax, eax
inc eax
movzx ecx, word [edi]
push 0x10
pop ebp
push 0x17
pop edx
mov dword [esp + 0x18], edx
cmp cx, ax
jne 0x46849b
mov word [ebx], ax
jmp 0x4684b3
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
push 0x38a
xor edx, edx
xor eax, eax
push 0x75fe28
inc edx
mov dword [esi + 0x34], eax
push edx
push dword [esi + 0x1fc]
mov dword [esi + 0x38], eax
push dword [esi + 0x1f4]
mov dword [esi + 0x1e4], eax
mov eax, dword [esp + 0x60]
mov dword [esi + 0x1d8], eax
mov eax, dword [esp + 0x5c]
mov dword [esi + 0x1c8], eax
call fcn.005ce1d0
add esp, 0x14
test eax, eax
jne 0x46852d
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov esi, 0xfe
mov edi, 0x38a
push esi
push edi
mov edx, 0x75fe48
xor ecx, ecx
call fcn.0047145c
add esp, 0xc
push edi
push 0x75fe68
push 0x75fe88
jmp 0x4687f9
movzx edx, word [ebx]
mov dword [esi + 0x1f4], eax
mov eax, dword [esi + 0x1fc]
mov dword [esi + 0x1f8], eax
xor eax, eax
inc eax
cmp dx, ax
je 0x468620
push 7
xor eax, eax
lea edi, [esp + 0x24]
pop ecx
rep stosd dword es:[edi], eax
movzx eax, word [esi + 0x90]
mov edi, dword [esp + 0x10]
test ax, ax
jne 0x46856c
mov ax, word [edi]
mov word [esp + 0x20], ax
lea ecx, [esp + 0x20]
cmp ax, 2
jne 0x4685cc
cmp word [esp + 0x22], 0
je 0x468626
mov edi, 0x39e
push edi
push 0x75feac
push 0x75fecc
call fcn.004010b4
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov esi, 0xfd
mov edx, 0x75fee4
push esi
push edi
xor ecx, ecx
call fcn.0047145c
add esp, 0xc
push edi
push 0x75ff04
push 0x75ff24
jmp 0x4687f9
cmp ax, word [esp + 0x18]
jne 0x468626
cmp word [esp + 0x22], 0
je 0x468626
mov edi, 0x39f
push edi
push 0x75ff48
push 0x75ff68
call fcn.004010b4
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov esi, 0xfd
mov edx, 0x75ff80
push esi
push edi
xor ecx, ecx
call fcn.0047145c
add esp, 0xc
push edi
push 0x75ffa0
push 0x75ffc0
jmp 0x4687f9
mov ecx, dword [esp + 0x1c]
jmp 0x468629
xor eax, eax
inc eax
cmp dx, ax
je 0x468671
push 6
mov edx, eax
call fcn.0046e961
mov dword [esi + 0x30], eax
pop ecx
test eax, eax
jne 0x4686b4
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov esi, 0xfd
mov edi, 0x3a6
push esi
push edi
mov edx, 0x75ffe4
xor ecx, ecx
call fcn.0047145c
add esp, 0xc
push edi
push 0x760004
push 0x760024
jmp 0x4687f9
push 0
push eax
push eax
call dword [sym.imp.WS2_32.dll_socket]
mov dword [esi + 0x30], eax
test eax, eax
jns 0x4686b4
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov esi, 0xfd
mov edi, 0x3aa
push esi
push edi
mov edx, 0x760048
xor ecx, ecx
call fcn.0047145c
add esp, 0xc
push edi
push 0x760068
push 0x760088
jmp 0x4687f9
xor eax, eax
mov dword [esi + 0x1e8], eax
mov dword [esi + 0x21c], eax
mov dword [esi + 0x1ec], eax
mov dword [esi + 0x1f0], eax
inc eax
cmp word [ebx], ax
je 0x468716
push 4
lea eax, [esp + 0x18]
push eax
push 8
push 0xffff
push dword [esi + 0x30]
call dword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
je 0x468716
push 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x3b8
mov edx, 0x7600ac
xor ecx, ecx
call fcn.0047145c
add esp, 0xc
push 0xfd
jmp 0x468802
lea eax, [esp + 0x14]
push eax
push 0x8004667e
push dword [esi + 0x30]
call dword [sym.imp.WS2_32.dll_ioctlsocket]
lea eax, [esi + 0x90]
movzx ecx, word [eax]
test cx, cx
je 0x46878e
xor edx, edx
inc edx
cmp word [ebx], dx
je 0x46878e
push 0x17
pop edx
push 0x1c
cmp cx, dx
pop ecx
cmove ebp, ecx
push ebp
push eax
push dword [esi + 0x30]
call dword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
je 0x4687a6
mov ecx, dword [esi + 0x1d4]
mov edx, esi
or dword [esi + 0x1e8], 0xffffffff
push 0
push fcn.004682f1
push 0
call fcn.0046f894
add esp, 0xc
mov ecx, dword [esp + 0x3c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0059b3f0
add esp, 0x30
ret
xor eax, eax
inc eax
cmp word [ebx], ax
je 0x46875b
push 0x17
pop eax
cmp word [edi], ax
push 0x1c
pop ecx
cmove ebp, ecx
push ebp
push edi
jmp 0x46874d
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x2733
jne 0x46875b
mov ecx, dword [esi + 0xc]
call fcn.0046c589
jmp 0x46877b
mov edi, 0x36e
push edi
push 0x75fd8c
push 0x75fdac
call fcn.004010b4
add esp, 0xc
mov edx, 0x75fdc4
xor ecx, ecx
push dword [esi + 0x30]
mov esi, 0xfd
push esi
push edi
call fcn.0047145c
add esp, 0xc
push edi
push 0x75fde4
push str.CRITICALEXIT2__FILE:__s__LINE:__d_r_n
call fcn.004010b4
add esp, 0xc
push esi
call fcn.005aae60
int3