Function at 0x140118430
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x48
mov rax, qword [0x1402b3030]
xor rax, rsp
mov qword [rsp + 0x38], rax
cmp byte [rcx + 0xac2], 0
mov r12, r9
mov r13, qword [rcx + 0x1b0]
mov r14, r8
mov r15d, dword [rsp + 0xb8]
mov rbp, rdx
mov rsi, qword [rsp + 0xb0]
mov rbx, rcx
jne 0x1401184ab
cmp qword [rcx + 0xcb0], 0
lea rdi, [rcx + 0x6c8]
jne 0x1401184c4
mov ecx, dword [rdi]
call qword [sub.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rbx + 0xcb0], rax
test rax, rax
jne 0x1401184c4
mov eax, reloc.WLDAP32.dll_Ordinal_27
jmp 0x14011878c
test rsi, rsi
jne 0x140118787
test r15d, r15d
jne 0x140118787
lea rdi, [rcx + 0x6c8]
cmp byte [rbx + 0xac2], 0
je 0x1401185ca
test r14, r14
jne 0x1401184dd
xor eax, eax
jmp 0x14011878c
mov rax, qword [rbx + 0xd0]
test rax, rax
je 0x1401184f2
cmp byte [rax + 0x18b], 0
jne 0x14011850f
mov rax, qword [rbx + 0xd8]
test rax, rax
je 0x140118590
cmp byte [rax + 0x18b], 0
je 0x140118590
mov r10, qword [rbx + 0x18]
test r10, r10
jne 0x140118531
lea rdx, str.No_associated_connection
mov rcx, rbx
call fcn.140100cb0
mov eax, gethostname
jmp 0x14011878c
mov rax, qword [r10 + 0x350]
xor edi, edi
mov dword [rsp + 0x30], edi
cmp rax, 0xffffffffffffffff
je 0x140118550
lea edx, [rdi + 1]
cmp rax, qword [r10 + 0x1b0]
je 0x140118552
mov edx, edi
lea rcx, [rsp + 0x30]
mov eax, edx
mov qword [rsp + 0x20], rcx
mov r9, r14
mov rcx, rbx
mov r8, rbp
call qword [r10 + rax*8 + 0x1c8]
mov rbp, rax
test rax, rax
jns 0x1401185aa
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x140118589
cmp eax, 0x51
jne 0x1401185a8
mov rbp, rdi
jmp 0x1401185aa
mov edi, gethostname
jmp 0x1401185aa
lea r9, [rsp + 0x30]
mov r8, r14
mov rdx, rbp
mov rcx, rbx
call fcn.1400e1370
mov rbp, qword [rsp + 0x30]
mov edi, eax
mov r9, rbp
lea rdx, str.WS:_wanted_to_send__zu_bytes__sent__zu_bytes
mov r8, r14
mov rcx, rbx
call fcn.140100de0
mov eax, edi
mov qword [r12], rbp
jmp 0x14011878c
mov ecx, dword [rdi]
sub ecx, 0xa
cmp r14, rcx
cmova r14, rcx
xor edi, edi
test r15b, 0x20
je 0x140118630
test rsi, rsi
je 0x140118600
mov r8d, r15d
mov rdx, rsi
mov rcx, rbx
call fcn.140118290
mov r15, rax
sub rsi, r14
mov qword [r13 + 0x270], rsi
jmp 0x140118641
mov rsi, qword [r13 + 0x270]
mov r15, rdi
cmp r14, rsi
jle 0x1401185f4
mov r9, rsi
lea rdx, str.WS:_unaligned_frame_size__sending__zu_instead_of__zu_
mov r8, r14
mov rcx, rbx
call fcn.140100de0
mov rsi, rdi
mov qword [r13 + 0x270], rdi
jmp 0x140118641
mov r8d, r15d
mov rdx, r14
mov rcx, rbx
call fcn.140118290
mov r15, rax
mov r11, qword [rbx + 0xcb0]
test r14, r14
je 0x140118695
mov r8, qword [rbx + 0x1b0]
mov r10, r11
sub r10, rbp
mov r9, r14
add r10, r15
mov eax, dword [r8 + 0x278]
lea rbp, [rbp + 1]
movzx ecx, byte [rax + r8 + 0x209]
xor cl, byte [rbp - 1]
mov byte [r10 + rbp - 1], cl
mov eax, dword [r8 + 0x278]
inc eax
and eax, 3
mov dword [r8 + 0x278], eax
sub r9, 1
jne 0x140118660
cmp byte [rbx + 0xa89], dil
je 0x1401186bd
add r14, r15
lea r9, [rsp + 0x30]
mov r8, r14
mov rdx, r11
mov rcx, rbx
call fcn.1400e1370
mov rbp, qword [rsp + 0x30]
mov esi, eax
jmp 0x14011871c
mov r10, qword [rbx + 0x18]
mov dword [rsp + 0x30], edi
mov rax, qword [r10 + 0x350]
cmp rax, 0xffffffffffffffff
je 0x1401186e0
mov edx, 1
cmp rax, qword [r10 + 0x1b0]
je 0x1401186e2
mov edx, edi
lea rcx, [rsp + 0x30]
mov eax, edx
mov qword [rsp + 0x20], rcx
add r14, r15
mov rcx, rbx
mov r9, r14
mov r8, r11
call qword [r10 + rax*8 + 0x1c8]
mov rbp, rax
test rax, rax
js 0x14011870f
mov r9, rax
jmp 0x14011873d
mov esi, dword [rsp + 0x30]
test esi, esi
je 0x140118769
cmp esi, 0x51
je 0x140118737
mov r9, rbp
lea rdx, str.WS:_wanted_to_send__zu_bytes__sent__zu_bytes
mov r8, r14
mov rcx, rbx
call fcn.140100de0
test esi, esi
jne 0x140118783
jmp 0x140118751
mov rbp, rdi
mov r9, rdi
mov r8, r14
lea rdx, str.WS:_wanted_to_send__zu_bytes__sent__zu_bytes
mov rcx, rbx
mov esi, edi
call fcn.140100de0
cmp rbp, r15
jbe 0x140118761
sub rbp, r15
mov eax, esi
mov qword [r12], rbp
jmp 0x14011878c
mov qword [r12], rdi
mov eax, esi
jmp 0x14011878c
mov r9, rax
lea rdx, str.WS:_wanted_to_send__zu_bytes__sent__zu_bytes
mov r8, r14
mov rcx, rbx
mov esi, gethostname
call fcn.140100de0
mov eax, esi
jmp 0x14011878c
mov eax, Ordinal_46
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.14014d450
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret