Function at 0x1801769c0
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xc0
mov r15, r9
mov rbx, r8
mov r12, rdx
mov r14, rcx
test r9b, 1
jne 0x180177022
mov eax, dword [0x18043b6e4]
test al, 1
jne 0x180176a1d
or eax, 1
mov dword [0x18043b6e4], eax
lea rcx, [0x18043b6e0]
call fcn.1801587d0
nop
mov eax, dword [0x18043b6e4]
test byte [0x18043b6e0], 8
je 0x180176a63
cmp r12, 0x10
jb 0x180176a63
mov rdi, r12
shr rdi, 4
imul rax, rdi, 0xfffffffffffffff0
add r12, rax
mov qword [rsp + 0x108], r12
mov r8, r15
mov rdx, rbx
mov rcx, r14
call fcn.1801fb9d0
add r14, 0x400
sub rdi, 1
jne 0x180176a42
mov eax, dword [0x18043b6e4]
test al, 1
jne 0x180176a7d
or eax, 1
mov dword [0x18043b6e4], eax
lea rcx, [0x18043b6e0]
call fcn.1801587d0
nop
test byte [0x18043b6e0], 4
je 0x180176abd
cmp r12, 8
jb 0x180176abd
mov rdi, r12
shr rdi, 3
imul rax, rdi, 0xfffffffffffffff8
add r12, rax
mov qword [rsp + 0x108], r12
mov r8, r15
mov rdx, rbx
mov rcx, r14
call fcn.1801fafd0
add r14, 0x200
sub rdi, 1
jne 0x180176aa2
call fcn.180158260
test al, al
je 0x180176afd
cmp r12, 4
jb 0x180176afd
mov rdi, r12
shr rdi, 2
imul rax, rdi, 0xfffffffffffffffc
add r12, rax
mov qword [rsp + 0x108], r12
mov r8, r15
mov rdx, rbx
mov rcx, r14
call fcn.1801fa480
add r14, 0x100
sub rdi, 1
jne 0x180176ae2
test r12, r12
je 0x180177007
shr r15, 1
mov qword [rsp + 0x118], r15
add r14, 8
mov qword [rsp + 0xb0], r14
nop dword [rax]
mov eax, dword [rbx]
mov dword [rsp + 0x64], eax
mov r13d, eax
mov ecx, dword [rbx + 4]
mov dword [rsp + 0x68], ecx
mov edx, dword [rbx + 8]
mov dword [rsp + 0x6c], edx
mov r8d, dword [rbx + 0xc]
mov dword [rsp + 0x70], r8d
mov r9d, dword [rbx + 0x10]
mov dword [rsp + 0x74], r9d
mov esi, r9d
mov r9d, dword [rbx + 0x14]
mov dword [rsp + 0x78], r9d
mov ebp, r9d
mov dword [rsp + 0x4c], r9d
mov r9d, dword [rbx + 0x18]
mov dword [rsp + 0x7c], r9d
mov dword [rsp + 0x50], r9d
mov r9d, dword [rbx + 0x1c]
mov dword [rsp + 0x80], r9d
mov dword [rsp + 0x54], r9d
mov r9d, dword [rbx + 0x20]
mov dword [rsp + 0x84], r9d
mov r10d, dword [rbx + 0x24]
mov dword [rsp + 0x88], r10d
mov r11d, dword [rbx + 0x28]
mov dword [rsp + 0x8c], r11d
mov edi, dword [rbx + 0x2c]
mov dword [rsp + 0x90], edi
mov dword [rsp + 0x34], edi
mov r12d, dword [rbx + 0x30]
mov dword [rsp + 0x94], r12d
mov dword [rsp + 0x58], r12d
mov r12d, dword [rbx + 0x34]
mov dword [rsp + 0x98], r12d
mov dword [rsp + 0x38], r12d
mov r12d, dword [rbx + 0x38]
mov dword [rsp + 0x9c], r12d
mov dword [rsp + 0x5c], r12d
mov r12d, dword [rbx + 0x3c]
mov dword [rsp + 0xa0], r12d
mov dword [rsp + 0x60], r12d
test r15, r15
mov r12, qword [rsp + 0x108]
je 0x180176f13
mov qword [rsp + 0xa8], r15
mov ebx, ecx
mov r15d, edx
mov r14d, r8d
mov r12d, r9d
mov edx, r11d
mov r9d, dword [rsp + 0x50]
mov r11d, dword [rsp + 0x58]
mov edi, dword [rsp + 0x38]
nop word [rax + rax]
add r13d, esi
xor r11d, r13d
mov eax, r11d
shr eax, 0x10
shl r11d, 0x10
or eax, r11d
add r12d, eax
xor esi, r12d
mov ecx, esi
shr ecx, 0x14
shl esi, 0xc
or ecx, esi
add r13d, ecx
xor eax, r13d
mov r11d, eax
shr r11d, 0x18
shl eax, 8
or r11d, eax
add r12d, r11d
xor ecx, r12d
mov ebp, ecx
shr ebp, 0x19
shl ecx, 7
or ebp, ecx
mov r8d, dword [rsp + 0x4c]
add ebx, r8d
xor edi, ebx
mov eax, edi
shr eax, 0x10
shl edi, 0x10
or eax, edi
add r10d, eax
xor r8d, r10d
mov ecx, r8d
shr ecx, 0x14
shl r8d, 0xc
or ecx, r8d
add ebx, ecx
xor eax, ebx
mov edi, eax
shr edi, 0x18
shl eax, 8
or edi, eax
add r10d, edi
mov dword [rsp + 0x38], r10d
xor ecx, r10d
mov r8d, ecx
shr r8d, 0x19
shl ecx, 7
or r8d, ecx
add r15d, r9d
mov ecx, dword [rsp + 0x5c]
xor ecx, r15d
mov eax, ecx
shr eax, 0x10
shl ecx, 0x10
or eax, ecx
add edx, eax
xor r9d, edx
mov ecx, r9d
shr ecx, 0x14
shl r9d, 0xc
or ecx, r9d
add r15d, ecx
xor eax, r15d
mov esi, eax
shr esi, 0x18
shl eax, 8
or esi, eax
add edx, esi
mov dword [rsp + 0x30], edx
xor ecx, edx
mov r9d, ecx
shr r9d, 0x19
shl ecx, 7
or r9d, ecx
mov edx, dword [rsp + 0x54]
add r14d, edx
mov ecx, dword [rsp + 0x60]
xor ecx, r14d
mov eax, ecx
shr eax, 0x10
shl ecx, 0x10
or eax, ecx
mov r10d, dword [rsp + 0x34]
add r10d, eax
xor edx, r10d
mov ecx, edx
shr ecx, 0x14
shl edx, 0xc
or ecx, edx
add r14d, ecx
xor eax, r14d
mov edx, eax
shr edx, 0x18
shl eax, 8
or edx, eax
add r10d, edx
mov dword [rsp + 0x34], r10d
xor ecx, r10d
mov r10d, ecx
shr r10d, 0x19
shl ecx, 7
or r10d, ecx
add r13d, r8d
xor edx, r13d
mov eax, edx
shr eax, 0x10
shl edx, 0x10
or eax, edx
mov edx, dword [rsp + 0x30]
add edx, eax
xor r8d, edx
mov ecx, r8d
shr ecx, 0x14
shl r8d, 0xc
or ecx, r8d
add r13d, ecx
xor eax, r13d
mov r8d, eax
shr r8d, 0x18
shl eax, 8
or r8d, eax
mov dword [rsp + 0x60], r8d
add edx, r8d
mov dword [rsp + 0x30], edx
xor ecx, edx
mov eax, ecx
shr eax, 0x19
shl ecx, 7
or eax, ecx
mov dword [rsp + 0x4c], eax
add ebx, r9d
xor r11d, ebx
mov eax, r11d
shr eax, 0x10
shl r11d, 0x10
or eax, r11d
mov r8d, dword [rsp + 0x34]
add r8d, eax
xor r9d, r8d
mov ecx, r9d
shr ecx, 0x14
shl r9d, 0xc
or ecx, r9d
add ebx, ecx
xor eax, ebx
mov r11d, eax
shr r11d, 0x18
shl eax, 8
or r11d, eax
add r8d, r11d
mov dword [rsp + 0x34], r8d
xor ecx, r8d
mov r9d, ecx
shr r9d, 0x19
shl ecx, 7
or r9d, ecx
add r15d, r10d
xor edi, r15d
mov eax, edi
shr eax, 0x10
shl edi, 0x10
or eax, edi
add r12d, eax
xor r10d, r12d
mov ecx, r10d
shr ecx, 0x14
shl r10d, 0xc
or ecx, r10d
add r15d, ecx
xor eax, r15d
mov edi, eax
shr edi, 0x18
shl eax, 8
or edi, eax
add r12d, edi
xor ecx, r12d
mov eax, ecx
shr eax, 0x19
shl ecx, 7
or eax, ecx
mov dword [rsp + 0x54], eax
add r14d, ebp
xor esi, r14d
mov eax, esi
shr eax, 0x10
shl esi, 0x10
or eax, esi
mov r10d, dword [rsp + 0x38]
add r10d, eax
xor ebp, r10d
mov ecx, ebp
shr ecx, 0x14
shl ebp, 0xc
or ecx, ebp
add r14d, ecx
xor eax, r14d
mov r8d, eax
shr r8d, 0x18
shl eax, 8
or r8d, eax
mov dword [rsp + 0x5c], r8d
add r10d, r8d
xor ecx, r10d
mov esi, ecx
shr esi, 0x19
shl ecx, 7
or esi, ecx
sub qword [rsp + 0xa8], 1
jne 0x180176c30
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x58], r11d
mov dword [rsp + 0x50], r9d
mov dword [rsp + 0x48], r12d
mov dword [rsp + 0x44], r14d
mov dword [rsp + 0x40], r15d
mov dword [rsp + 0x3c], ebx
mov rbx, qword [rsp + 0x110]
mov r14, qword [rsp + 0xb0]
mov r15, qword [rsp + 0x118]
mov r12, qword [rsp + 0x108]
mov ecx, dword [rsp + 0x3c]
mov edx, dword [rsp + 0x40]
mov r8d, dword [rsp + 0x44]
mov r9d, dword [rsp + 0x48]
mov r11d, dword [rsp + 0x30]
mov edi, dword [rsp + 0x34]
mov ebp, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x64]
add eax, r13d
mov dword [r14 - 8], eax
mov eax, dword [rsp + 0x68]
add eax, ecx
mov dword [r14 - 4], eax
mov eax, dword [rsp + 0x6c]
add eax, edx
mov dword [r14], eax
mov eax, dword [rsp + 0x70]
add eax, r8d
mov dword [r14 + 4], eax
mov eax, dword [rsp + 0x74]
add eax, esi
mov dword [r14 + 8], eax
mov eax, dword [rsp + 0x78]
add eax, ebp
mov dword [r14 + 0xc], eax
mov eax, dword [rsp + 0x50]
add eax, dword [rsp + 0x7c]
mov dword [r14 + 0x10], eax
mov eax, dword [rsp + 0x54]
add eax, dword [rsp + 0x80]
mov dword [r14 + 0x14], eax
mov eax, dword [rsp + 0x84]
add eax, r9d
mov dword [r14 + 0x18], eax
mov eax, dword [rsp + 0x88]
add eax, r10d
mov dword [r14 + 0x1c], eax
mov eax, dword [rsp + 0x8c]
add eax, r11d
mov dword [r14 + 0x20], eax
mov eax, dword [rsp + 0x90]
add eax, edi
mov dword [r14 + 0x24], eax
mov eax, dword [rsp + 0x58]
add eax, dword [rsp + 0x94]
mov dword [r14 + 0x28], eax
mov eax, dword [rsp + 0x38]
add eax, dword [rsp + 0x98]
mov dword [r14 + 0x2c], eax
mov eax, dword [rsp + 0x5c]
add eax, dword [rsp + 0x9c]
mov dword [r14 + 0x30], eax
mov eax, dword [rsp + 0x60]
add eax, dword [rsp + 0xa0]
mov dword [r14 + 0x34], eax
add dword [rbx + 0x30], 1
mov eax, 0
sete al
add dword [rbx + 0x34], eax
add r14, 0x40
mov qword [rsp + 0xb0], r14
sub r12, 1
mov qword [rsp + 0x108], r12
jne 0x180176b20
mov rbx, qword [rsp + 0x100]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov dword [rsp + 0x20], reloc.WS2_32.dll_WSASetLastError
lea r9, [0x1803e3dc0]
lea r8, str.chacha
lea rdx, str.Valid_rounds
lea rcx, str.rounds___2__0
call fcn.1800d1f70
int3