Function at 0x1800b7630
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0x100
mov rax, qword [0x180229ec0]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov r14, rcx
xor edi, edi
mov dword [rsp + 0x30], edi
mov r13, rdx
cmp qword [rdx + 0x18], 7
jbe 0x1800b7678
mov r13, qword [rdx]
mov r12, qword [rdx + 0x10]
call fcn.1800cb128
mov dword [rbp - 0x59], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rdi
mov qword [rbp - 0x79], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x38], 0
mov dword [rsp + 0x30], 8
test r12, r12
je 0x1800b7793
cmp r12, 0x7fffffff
ja 0x1800b7ab9
mov dword [rsp + 0x20], edi
xor r9d, r9d
mov r8d, r12d
mov rdx, r13
mov ecx, eax
call fcn.1800cb198
mov rsi, rax
shr rax, 0x20
test eax, eax
jne 0x1800b7ac4
movsxd rcx, esi
mov rdx, qword [rsp + 0x48]
cmp rcx, rdx
ja 0x1800b7707
mov qword [rsp + 0x48], rcx
lea rax, [rsp + 0x38]
cmp qword [rbp - 0x79], 0xf
cmova rax, qword [rsp + 0x38]
mov byte [rax + rcx], 0
jmp 0x1800b7762
mov r15, rcx
sub r15, rdx
mov r8, qword [rbp - 0x79]
mov rax, r8
sub rax, rdx
cmp r15, rax
ja 0x1800b7747
mov qword [rsp + 0x48], rcx
lea rbx, [rsp + 0x38]
cmp r8, 0xf
cmova rbx, qword [rsp + 0x38]
add rbx, rdx
mov r8, r15
xor edx, edx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memset
mov byte [rbx + r15], 0
jmp 0x1800b7762
mov byte [rsp + 0x20], 0
mov r9, r15
movzx r8d, byte [rsp + 0x34]
mov rdx, r15
lea rcx, [rsp + 0x38]
call fcn.18000df40
lea r9, [rsp + 0x38]
cmp qword [rbp - 0x79], 0xf
cmova r9, qword [rsp + 0x38]
mov dword [rsp + 0x20], esi
mov r8d, r12d
mov rdx, r13
mov ecx, dword [rbp - 0x59]
call fcn.1800cb198
mov rcx, rax
shr rax, 0x20
test eax, eax
jne 0x1800b7aaf
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x49]
call fcn.18000a270
lea rbx, [rbp - 0x49]
mov rcx, qword [rbp - 0x49]
mov rdx, qword [rbp - 0x31]
cmp rdx, 0xf
cmova rbx, rcx
lea rsi, [rbp - 0x49]
cmova rsi, rcx
mov r8, qword [rbp - 0x39]
add rsi, r8
cmp rbx, rsi
je 0x1800b77ef
nop dword [rax]
movsx ecx, byte [rbx]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_tolower]
mov byte [rbx], al
inc rbx
cmp rbx, rsi
jne 0x1800b77d0
mov rdx, qword [rbp - 0x31]
mov r8, qword [rbp - 0x39]
mov rcx, qword [rbp - 0x49]
lea rax, [rbp - 0x49]
cmp rdx, 0xf
cmova rax, rcx
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], r8
xor r8d, r8d
lea rdx, [rbp - 0x59]
lea rcx, [rbp + 7]
call fcn.18001d470
mov r15d, gethostname
mov rdx, qword [rbp - 0x31]
cmp rdx, 0xf
jbe 0x1800b7857
inc rdx
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b7852
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800b7852
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800cbd7c
movdqa xmm0, xmmword [0x18020cea0]
movdqu xmmword [rbp - 0x39], xmm0
mov byte [rbp - 0x49], 0
mov rdx, qword [rbp - 0x79]
cmp rdx, 0xf
jbe 0x1800b78a7
inc rdx
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b78a2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800b78a2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800cbd7c
mov qword [rsp + 0x48], rdi
mov qword [rbp - 0x79], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x38], 0
mov rcx, qword [r14 + 0x78]
mov rax, qword [r14 + 0x80]
cmp rcx, rax
je 0x1800b7a74
sub rax, rcx
sar rax, 5
movsxd r8, dword [r14 + 0x90]
mov rdx, r8
cmp r8, rax
jae 0x1800b7a74
cmp byte [r14 + 0x94], 0
je 0x1800b79ab
test r8d, r8d
jne 0x1800b79ab
mov esi, 1
cmp rax, rsi
jbe 0x1800b79a4
mov edi, reloc.WLDAP32.dll_Ordinal_32
lea rax, [rdi + rcx]
mov rcx, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x1800b7923
mov rax, qword [rax]
mov qword [rbp - 9], rax
mov qword [rbp - 1], rcx
xor r8d, r8d
lea rdx, [rbp - 9]
lea rcx, [rbp - 0x29]
call fcn.18001d470
or r15d, 0x40
lea rax, [rbp - 0x29]
cmp qword [rbp - 0x11], 7
cmova rax, qword [rbp - 0x29]
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x19]
mov qword [rbp - 0x61], rax
movaps xmm0, xmmword [rbp - 0x69]
movdqa xmmword [rbp - 0x59], xmm0
lea rdx, [rbp - 0x59]
lea rcx, [rbp + 7]
call fcn.1800c1830
mov ebx, eax
lea rcx, [rbp - 0x29]
call fcn.18001b9c0
test ebx, ebx
je 0x1800b7a74
inc rsi
add rdi, 0x20
mov rcx, qword [r14 + 0x78]
mov rax, qword [r14 + 0x80]
sub rax, rcx
sar rax, 5
cmp rsi, rax
jb 0x1800b7911
xor bl, bl
jmp 0x1800b7a76
shl rdx, 5
lea rbx, [rdx + rcx]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800b79c0
mov rdx, qword [rbx]
mov rcx, qword [rbx + 0x10]
mov dword [rsp + 0x30], 0x1007c7b
nop dword [rax]
lea eax, [rdi + 0x55]
xor byte [rsp + rdi + 0x30], al
inc rdi
cmp rdi, 2
jb 0x1800b79d0
mov byte [rsp + 0x33], 0
lea rax, [rsp + 0x30]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1800b79f1
cmp r8, rcx
jne 0x1800b7a0e
lea rcx, [rsp + 0x30]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1800b7a74
mov rax, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0xf
jbe 0x1800b7a1c
mov rbx, qword [rbx]
mov qword [rbp - 0x69], rbx
mov qword [rbp - 0x61], rax
xor r8d, r8d
lea rdx, [rbp - 0x69]
lea rcx, [rbp - 0x29]
call fcn.18001d470
lea rax, [rbp - 0x29]
cmp qword [rbp - 0x11], 7
cmova rax, qword [rbp - 0x29]
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x19]
mov qword [rbp - 0x61], rax
movaps xmm0, xmmword [rbp - 0x69]
movdqa xmmword [rbp - 0x69], xmm0
lea rdx, [rbp - 0x69]
lea rcx, [rbp + 7]
call fcn.1800c1830
test eax, eax
sete bl
lea rcx, [rbp - 0x29]
call fcn.18001b9c0
jmp 0x1800b7a76
mov bl, 1
lea rcx, [rbp + 7]
call fcn.18001b9c0
movzx eax, bl
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.1800cbe10
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
shr rcx, 0x20
call fcn.18002f500
int3
mov ecx, reloc.WLDAP32.dll_Ordinal_22
call fcn.18002f4c0
int3
shr rsi, 0x20
mov ecx, esi
call fcn.18002f500
int3