Function at 0x401c41
Capabilities:
Send data
Send data on socket

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0xc0
mov qword [rbp + 0x10], rcx
mov eax, 1
mov dword [rbp - 4], eax
lea rax, [rbp - 4]
mov qword [rbp - 0x30], rax
mov eax, 2
mov dword [rbp - 0x34], eax
mov eax, 4
mov dword [rbp - 0x38], eax
mov eax, 1
mov dword [rbp - 0x24], eax
lea rax, [rbp - 0x38]
mov qword [rbp - 0x20], rax
mov eax, 0
mov dword [rbp - 0x28], eax
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax]
add rcx, 0x50
mov rax, qword [rbp + 0x10]
add rax, 0x78
lea rdx, [rbp - 0x28]
mov r11, rdx
mov r10, rax
mov qword [rbp - 0x58], rcx
mov rcx, r10
mov rdx, r11
mov r11, qword [rbp - 0x58]
mov r11, qword [r11]
call r11
mov dword [rbp - 0x4c], eax
mov eax, dword [rbp - 0x4c]
cmp eax, 0
jge 0x401ce8
mov eax, dword [rbp - 0x4c]
mov r11, rax
lea rax, str.Error_0x_x_returned_by_ApplyControlToken_n
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_wprintf
jmp 0x401eb9
mov eax, 0xc11c
mov dword [rbp - 0x3c], eax
movabs rax, 0
mov qword [rbp - 0x30], rax
mov eax, 2
mov dword [rbp - 0x34], eax
mov eax, 0
mov dword [rbp - 0x38], eax
mov eax, 1
mov dword [rbp - 0x24], eax
lea rax, [rbp - 0x38]
mov qword [rbp - 0x20], rax
mov eax, 0
mov dword [rbp - 0x28], eax
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax]
add rcx, 0x30
mov rax, qword [rbp + 0x10]
add rax, 0x68
mov rdx, qword [rbp + 0x10]
add rdx, 0x78
mov qword [rbp - 0x58], rcx
mov rcx, qword [rbp + 0x10]
add rcx, 0x78
mov qword [rbp - 0x60], rax
lea rax, [rbp - 0x48]
mov qword [rsp + 0x58], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x50], rax
lea rax, [rbp - 0x28]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rcx
mov eax, 0
mov qword [rsp + 0x38], rax
movabs rax, 0
mov qword [rsp + 0x30], rax
mov eax, 0x10
mov qword [rsp + 0x28], rax
mov eax, 0
mov qword [rsp + 0x20], rax
mov eax, dword [rbp - 0x3c]
mov r9, rax
movabs rax, 0
mov r8, rax
mov r11, rdx
mov rax, qword [rbp - 0x60]
mov r10, rax
mov rcx, r10
mov rdx, r11
mov r11, qword [rbp - 0x58]
mov r11, qword [r11]
call r11
mov dword [rbp - 0x4c], eax
mov eax, dword [rbp - 0x4c]
cmp eax, 0
jge 0x401dfa
mov eax, dword [rbp - 0x4c]
mov r11, rax
lea rax, str.Error_0x_x_returned_by_InitializeSecurityContext_n
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_wprintf
jmp 0x401eb9
mov rax, qword [rbp - 0x30]
mov qword [rbp - 0x10], rax
mov eax, dword [rbp - 0x38]
mov dword [rbp - 0x14], eax
mov rax, qword [rbp - 0x10]
cmp rax, 0
je 0x401eb9
mov eax, dword [rbp - 0x14]
cmp eax, 0
je 0x401eb9
mov rax, qword [rbp + 0x10]
add rax, 0x60
mov ecx, 0
mov r9, rcx
mov ecx, dword [rbp - 0x14]
mov r8, rcx
mov rcx, qword [rbp - 0x10]
mov r11, rcx
mov rcx, qword [rax]
mov r10, rcx
mov rcx, r10
mov rdx, r11
call sub.ws2_32.dll_send
mov dword [rbp - 0x18], eax
mov eax, dword [rbp - 0x18]
cmp eax, 0xffffffff
je 0x401e6b
mov eax, dword [rbp - 0x18]
cmp eax, 0
jne 0x401e93
call sub.ws2_32.dll_WSAGetLastError
mov dword [rbp - 0x4c], eax
mov eax, dword [rbp - 0x4c]
mov r11, rax
lea rax, str.Error__d_sending_close_notify_n
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_wprintf
jmp 0x401eb9
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax]
add rcx, 0x80
mov rax, qword [rbp - 0x10]
mov r10, rax
mov qword [rbp - 0x58], rcx
mov rcx, r10
mov r11, qword [rbp - 0x58]
mov r11, qword [r11]
call r11
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax]
add rcx, 0x48
mov rax, qword [rbp + 0x10]
add rax, 0x78
mov r10, rax
mov qword [rbp - 0x58], rcx
mov rcx, r10
mov r11, qword [rbp - 0x58]
mov r11, qword [r11]
call r11
mov rax, qword [rbp + 0x10]
add rax, 0x60
mov rcx, qword [rax]
mov r10, rcx
mov rcx, r10
call sub.ws2_32.dll_closesocket
mov eax, dword [rbp - 0x4c]
leave
ret