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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x158
vmovups xmmword [rsp + 0x130], xmm6
vmovups xmmword [rsp + 0x140], xmm7
mov rsi, rcx
mov rcx, r8
mov r14, rdx
mov rbx, r8
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov ecx, 7
mov edx, 4
mov rbp, rax
call sub.api_ms_win_crt_heap_l1_1_0.dll_calloc
mov rcx, rax
test rbp, rbp
je 0x140009675
mov rdi, rbx
lea r12, [rbx + rbp]
mov r11, rbx
lea r10, [0x14016f65f]
movzx r8d, byte [r11]
mov eax, 1
xor r9d, r9d
cmp r8b, 0x31
je 0x140008ee0
nop dword [rax + rax]
mov r9, rax
add rax, 1
movzx r13d, byte [r10 + rax]
cmp r13b, r8b
je 0x140008ee0
test r13b, r13b
jne 0x140008d20
call fcn.1400b5948
lea r8, [rbp - 8]
cmp r8, 0x52
ja 0x140008ed8
mov rdx, rbp
lea r8, [rbp - 1]
xor r12d, r12d
and edx, 7
je 0x140008e19
cmp rdx, 1
je 0x140008dfa
cmp rdx, 2
je 0x140008de4
cmp rdx, 3
je 0x140008dce
cmp rdx, 4
je 0x140008db8
cmp rdx, 5
je 0x140008da2
cmp rdx, 6
jne 0x1400092fc
mov r10, r12
add r12, 1
cmp byte [rbx + r8], 0x31
je 0x1400091fb
sub r8, 1
mov r10, r12
add r12, 1
cmp byte [rbx + r8], 0x31
je 0x1400091fb
sub r8, 1
mov r10, r12
add r12, 1
cmp byte [rbx + r8], 0x31
je 0x1400091fb
sub r8, 1
mov r10, r12
add r12, 1
cmp byte [rbx + r8], 0x31
je 0x1400091fb
sub r8, 1
mov r10, r12
add r12, 1
cmp byte [rbx + r8], 0x31
je 0x1400091fb
sub r8, 1
mov r10, r12
add r12, 1
cmp byte [rbx + r8], 0x31
je 0x1400091fb
sub r8, 1
cmp rbp, r12
je 0x140008ed8
lea r13, [r12 + 1]
cmp byte [rbx + r8], 0x31
mov r10, r12
mov r12, r13
je 0x1400091fb
lea rcx, [r8 - 1]
mov r10, r12
add r12, 1
cmp byte [rbx + rcx], 0x31
mov r8, rcx
je 0x1400091fb
sub r8, 1
mov r10, r12
lea r12, [r13 + 2]
cmp byte [rbx + r8], 0x31
je 0x1400091fb
cmp byte [rbx + rcx - 2], 0x31
mov r10, r12
lea r8, [rcx - 2]
lea r12, [r13 + 3]
je 0x1400091fb
cmp byte [rbx + rcx - 3], 0x31
mov r10, r12
lea r8, [rcx - 3]
lea r12, [r13 + 4]
je 0x1400091fb
cmp byte [rbx + rcx - 4], 0x31
mov r10, r12
lea r8, [rcx - 4]
lea r12, [r13 + 5]
je 0x1400091fb
cmp byte [rbx + rcx - 5], 0x31
mov r10, r12
lea r8, [rcx - 5]
lea r12, [r13 + 6]
je 0x1400091fb
cmp byte [rbx + rcx - 6], 0x31
mov r10, r12
lea r8, [rcx - 6]
lea r12, [r13 + 7]
je 0x1400091fb
lea r8, [rcx - 7]
cmp rbp, r12
jne 0x140008e19
xor eax, eax
jmp 0x1400091a5
mov r15d, dword [rcx + 0x18]
mov eax, dword [rcx + 0x14]
imul r8, r15, 0x3a
mov r15d, dword [rcx + 0x10]
add r8, r9
imul r9, rax, 0x3a
mov eax, dword [rcx + 0xc]
mov rdx, r8
mov dword [rcx + 0x18], r8d
imul r8, r15, 0x3a
mov r15d, dword [rcx + 8]
shr rdx, 0x20
add r9, rdx
mov r13, r9
mov dword [rcx + 0x14], r9d
shr r13, 0x20
add r8, r13
imul r13, rax, 0x3a
mov rdx, r8
imul rax, r15, 0x3a
mov dword [rcx + 0x10], r8d
mov r8d, dword [rcx + 4]
shr rdx, 0x20
add r13, rdx
imul r15, r8, 0x3a
mov r9, r13
shr r9, 0x20
add rax, r9
mov r9d, dword [rcx]
mov rdx, rax
vmovd xmm4, eax
shr rdx, 0x20
imul r8, r9, 0x3a
vpinsrd xmm1, xmm4, r13d, 1
add r15, rdx
mov rdx, r15
shr rdx, 0x20
add r8, rdx
vmovd xmm5, r8d
mov r13, r8
mov edx, r8d
vpinsrd xmm0, xmm5, r15d, 1
shr r13, 0x20
vpunpcklqdq xmm2, xmm0, xmm1
vmovdqu xmmword [rcx], xmm2
jne 0x140008d3a
cmp r8d, 0xff
ja 0x140008d3a
add r11, 1
cmp r11, r12
jne 0x140008d05
mov eax, dword [rcx + 8]
mov r8d, dword [rcx + 0xc]
vmovd xmm3, edx
mov r9d, dword [rcx + 4]
mov r10d, dword [rcx + 0x10]
mov r11d, eax
vmovd xmm5, eax
mov r12d, eax
mov r13d, eax
shr r11d, 0x18
mov eax, dword [rcx + 0x18]
mov edi, r9d
mov ebp, r9d
mov dword [rsp + 0x2c], r11d
mov r11d, r8d
shr edi, 0x10
mov r15d, r9d
shr r11d, 0x10
shr ebp, 8
vmovd xmm7, edi
mov edi, eax
mov dword [rsp + 0x3c], r11d
shr r12d, 0x10
shr r13d, 8
mov r11d, r10d
mov dword [rsp + 0x28], ebp
mov ebp, r8d
shr r15d, 0x18
vmovd xmm6, r9d
mov dword [rsp + 0x30], r12d
shr ebp, 0x18
shr edi, 0x10
mov r12d, r10d
mov dword [rsp + 0x38], ebp
shr r12d, 0x18
mov r9d, dword [rcx + 0x14]
shr r11d, 0x10
mov dword [rsp + 0x34], r13d
mov r13d, r8d
mov ebp, r10d
vmovd xmm2, dword [rsp + 0x3c]
shr r13d, 8
vpinsrb xmm1, xmm3, r15d, 1
mov r15d, eax
shr ebp, 8
vpinsrb xmm0, xmm5, byte [rsp + 0x38], 1
mov byte [rsp + 0x88], al
shr r15d, 0x18
vpinsrb xmm5, xmm2, r13d, 1
and eax, 0xff00
movzx r13d, dil
vmovd xmm4, dword [rsp + 0x30]
mov edx, r9d
vpinsrb xmm3, xmm6, byte [rsp + 0x2c], 1
or rax, r13
vpinsrb xmm6, xmm4, byte [rsp + 0x34], 1
shr edx, 0x18
vmovd xmm4, r8d
shl rax, 8
mov r8d, r9d
movzx edx, dl
vpinsrb xmm2, xmm4, r12d, 1
movzx r12d, r15b
vmovd xmm4, r11d
movzx r11d, r9b
or rax, r12
shr r8d, 0x10
movzx r13d, r10b
vpinsrb xmm4, xmm4, ebp, 1
shl rax, 8
movzx r8d, r8b
vpinsrb xmm7, xmm7, byte [rsp + 0x28], 1
or rax, r11
mov rbp, rax
mov eax, r9d
vpunpcklwd xmm1, xmm1, xmm7
mov r15, rbp
movzx edi, ah
vpunpcklwd xmm7, xmm3, xmm6
shl r15, 8
vpunpcklwd xmm3, xmm0, xmm5
vpunpcklwd xmm6, xmm2, xmm4
or r15, rdi
vpunpckldq xmm5, xmm1, xmm7
vpunpckldq xmm0, xmm3, xmm6
shl r15, 8
vpunpcklqdq xmm2, xmm5, xmm0
lea rdi, [rsp + 0x70]
or r15, r8
vmovdqu xmmword [rsp + 0x70], xmm2
shl r15, 8
or r15, rdx
shl r15, 8
mov r10, r15
or r10, r13
mov qword [rsp + 0x80], r10
call fcn.1400b5948
lea rcx, [rsp + 0xd0]
mov r8d, 0x15
mov rdx, rdi
call fcn.14000c2b0
mov ecx, dword [rsp + 0x85]
cmp dword [rsp + 0xd0], ecx
jne 0x140008ed8
movzx r12d, byte [rsp + 0x70]
movzx r11d, byte [rbx]
xor ebp, ebp
test r12b, r12b
je 0x140009182
jmp 0x140009628
add rbp, 1
cmp byte [rdi + rbp], 0
jne 0x140009190
cmp byte [rbx + rbp], 0x31
je 0x140009178
jmp 0x140008ed8
cmp byte [rbx + rbp], 0x31
je 0x140008ed8
cmp r14, 0x18
ja 0x1400091cb
mov eax, 0x19
vmovups xmm6, xmmword [rsp + 0x130]
vmovups xmm7, xmmword [rsp + 0x140]
add rsp, 0x158
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
vmovdqu xmm1, xmmword [rsp + 0x71]
mov eax, 0xffffa976
mov r15d, 0xffffac88
mov r9d, dword [rsp + 0x81]
mov word [rsi], ax
mov byte [rsi + 2], 0x14
mov dword [rsi + 0x13], r9d
mov word [rsi + 0x17], r15w
vmovdqu xmmword [rsi + 3], xmm1
jmp 0x1400091a0
cmp r12, rbp
jae 0x140008ed8
cmp r10, 5
jbe 0x140008ed8
test r8, r8
je 0x140009976
xor r11d, r11d
xor eax, eax
mov r15d, 1
xor ecx, ecx
jmp 0x1400092ce
lea r13d, [r9 - 0x41]
cmp r13d, 0x19
ja 0x140009247
add r9d, 0x20
mov r11d, 1
mov edx, r9d
mov r12d, r15d
mov byte [rsp + rcx + 0xd0], dl
shl r15d, 5
add rcx, 1
shr r12d, 0x19
and r15d, 0x3fffffe0
sar r9d, 5
mov r13d, r12d
mov edx, r12d
and r13d, 1
shr edx, 4
neg r13d
neg edx
and r13d, 0x3b6a57b2
and edx, 0x2a1462b3
xor r15d, r13d
mov r13d, r12d
xor r15d, edx
shl r13d, 0x1e
mov edx, r12d
sar r13d, 0x1f
shl edx, 0x1d
sar edx, 0x1f
and r13d, 0x26508e6d
shl r12d, 0x1c
xor r15d, r13d
and edx, 0x1ea119fa
sar r12d, 0x1f
xor r15d, edx
and r12d, 0x3d4233dd
xor r15d, r12d
xor r15d, r9d
cmp rcx, r8
je 0x140009319
movsx r9d, byte [rbx + rcx]
lea r13d, [r9 - 0x21]
mov edx, r9d
cmp r13d, 0x5d
ja 0x140008ed8
lea r12d, [r9 - 0x61]
cmp r12d, 0x19
ja 0x140009230
mov eax, 1
jmp 0x140009247
xor r10d, r10d
cmp byte [rbx + r8], 0x31
mov r12d, 1
je 0x1400091fb
lea r8, [rbp - 2]
jmp 0x140008d8c
mov byte [rsp + r8 + 0xd0], 0
mov r9d, r15d
shl r15d, 5
shr r9d, 0x19
mov edx, r15d
mov r15d, r9d
mov ecx, r9d
mov r12d, r9d
mov r13d, r9d
and r15d, 1
shr ecx, 4
and edx, 0x3fffffe0
shl r12d, 0x1e
neg r15d
neg ecx
shl r13d, 0x1d
sar r12d, 0x1f
and r15d, 0x3b6a57b2
and ecx, 0x2a1462b3
sar r13d, 0x1f
xor edx, r15d
shl r9d, 0x1c
lea r15, [rbx + r8]
and r12d, 0x26508e6d
xor edx, ecx
and r13d, 0x1ea119fa
sar r9d, 0x1f
xor edx, r12d
and r9d, 0x3d4233dd
xor edx, r13d
xor edx, r9d
test r8b, 1
je 0x140009420
mov ecx, edx
movzx r12d, byte [rbx]
shl edx, 5
shr ecx, 0x19
and edx, 0x3fffffe0
mov edi, ecx
mov r13d, ecx
mov r9d, ecx
and r12d, 0x1f
shr r13d, 4
and edi, 1
shl r9d, 0x1e
neg edi
neg r13d
sar r9d, 0x1f
and edi, 0x3b6a57b2
and r13d, 0x2a1462b3
and r9d, 0x26508e6d
xor edx, edi
mov edi, ecx
shl ecx, 0x1c
shl edi, 0x1d
xor edx, r12d
sar ecx, 0x1f
xor edx, r13d
sar edi, 0x1f
and ecx, 0x3d4233dd
and edi, 0x1ea119fa
xor edx, r9d
xor edx, edi
lea rdi, [rbx + 1]
xor edx, ecx
cmp rdi, r15
je 0x14000951f
mov ecx, edx
shl edx, 5
movzx r13d, byte [rdi]
shr ecx, 0x19
mov r12d, edx
mov edx, ecx
and r12d, 0x3fffffe0
mov r9d, ecx
and r13d, 0x1f
and edx, 1
shr r9d, 4
neg edx
neg r9d
and edx, 0x3b6a57b2
and r9d, 0x2a1462b3
xor r12d, edx
mov edx, ecx
shl edx, 0x1e
xor r12d, r13d
mov r13d, ecx
shl ecx, 0x1c
sar edx, 0x1f
xor r12d, r9d
shl r13d, 0x1d
movzx r9d, byte [rdi + 1]
and edx, 0x26508e6d
sar r13d, 0x1f
xor r12d, edx
mov edx, ecx
and r13d, 0x1ea119fa
sar edx, 0x1f
xor r12d, r13d
and edx, 0x3d4233dd
xor edx, r12d
mov ecx, edx
shl edx, 5
shr ecx, 0x19
and edx, 0x3fffffe0
mov r12d, ecx
mov r13d, ecx
and r12d, 1
neg r12d
and r12d, 0x3b6a57b2
xor edx, r12d
and r9d, 0x1f
mov r12d, ecx
shr r13d, 4
xor edx, r9d
neg r13d
mov r9d, ecx
shl r12d, 0x1e
and r13d, 0x2a1462b3
sar r12d, 0x1f
add rdi, 2
shl r9d, 0x1d
xor edx, r13d
and r12d, 0x26508e6d
shl ecx, 0x1c
sar r9d, 0x1f
xor edx, r12d
sar ecx, 0x1f
and r9d, 0x1ea119fa
and ecx, 0x3d4233dd
xor edx, r9d
xor edx, ecx
cmp rdi, r15
jne 0x140009420
add r8, 1
cmp r8, rbp
jae 0x14000967c
mov r15, r10
add r8, 6
lea rdi, [rbp + 6]
sub r15, rbp
lea r12, [0x14016f5e0]
lea r13, [rsp + r15 + 0x70]
jmp 0x1400095ff
movsx r9, cl
lea r15d, [rcx - 0x61]
movzx r9d, byte [r12 + r9]
cmp r15b, 0x19
ja 0x140009614
mov eax, 1
cmp r9b, 0xff
je 0x140008ed8
mov ecx, edx
shl edx, 5
shr ecx, 0x19
and edx, 0x3fffffe0
mov r15d, ecx
and r15d, 1
neg r15d
and r15d, 0x3b6a57b2
xor edx, r15d
movsx r15d, r9b
xor edx, r15d
mov r15d, ecx
shl r15d, 0x1e
sar r15d, 0x1f
and r15d, 0x26508e6d
xor edx, r15d
mov r15d, ecx
shl r15d, 0x1d
sar r15d, 0x1f
and r15d, 0x1ea119fa
xor edx, r15d
mov r15d, ecx
shl ecx, 0x1b
shl r15d, 0x1c
sar ecx, 0x1f
sar r15d, 0x1f
and ecx, 0x2a1462b3
and r15d, 0x3d4233dd
xor edx, r15d
xor edx, ecx
cmp r8, rbp
jae 0x1400095f6
mov byte [r13 + r8 - 6], r9b
add r8, 1
cmp rdi, r8
je 0x14000967c
movzx ecx, byte [rbx + r8 - 6]
test cl, cl
jns 0x140009550
xor eax, eax
jmp 0x1400091a5
sub ecx, 0x41
cmp cl, 0x19
mov ecx, 1
cmovbe r11d, ecx
jmp 0x14000956c
cmp r11b, 0x31
je 0x140008ed8
cmp r12b, 5
je 0x140009642
cmp r12b, 0xc4
jne 0x14000919a
cmp r14, 0x16
jbe 0x14000966b
mov ebx, 0x14a9
mov r14d, dword [rsp + 0x81]
vmovdqu xmm4, xmmword [rsp + 0x71]
mov byte [rsi + 0x16], 0x87
mov word [rsi], bx
mov dword [rsi + 0x12], r14d
vmovdqu xmmword [rsi + 2], xmm4
mov eax, 0x17
jmp 0x1400091a5
mov edx, dword [rax]
jmp 0x140008fa7
and eax, r11d
jne 0x140008ed8
cmp edx, 1
jne 0x140008ed8
lea rbp, [r10 - 7]
cmp rbp, 0x40
ja 0x140008ed8
movzx r11d, byte [rsp + 0x70]
cmp r11b, 0x10
ja 0x140008ed8
test rbp, rbp
je 0x140008ed8
lea r15, [rsp + r10 + 0x6a]
xor edx, edx
lea r10, [rsp + 0x71]
xor r8d, r8d
mov ecx, eax
jmp 0x1400096d3
mov rdx, r13
movzx edi, byte [r10]
shl r8d, 5
lea r12d, [rcx + 5]
add r10, 1
or r8d, edi
cmp r12d, 7
jle 0x140009920
sub ecx, 3
mov r9d, r8d
lea r13, [rdx + 1]
shr r9d, cl
mov byte [rsp + rdx + 0x40], r9b
cmp r10, r15
jne 0x1400096d0
mov ebx, ecx
mov ecx, 8
sub ecx, ebx
shl r8d, cl
test r8b, r8b
jne 0x140008ed8
cmp ebx, 4
jg 0x140008ed8
lea r8, [r13 - 2]
cmp r8, 0x26
ja 0x140008ed8
test r11b, r11b
jne 0x14000992b
cmp r13, 0x14
je 0x14000995c
cmp r13, 0x20
jne 0x140008ed8
mov r10d, 0x20
mov eax, 0x22
cmp r14, 0x21
jbe 0x140008ed8
mov byte [rsi], r11b
lea r14, [rsi + 2]
lea r11, [rsp + 0x40]
mov edx, r13d
mov byte [rsi + 1], r10b
cmp r13d, 8
jae 0x1400097b8
and r13d, 4
jne 0x140009944
test edx, edx
je 0x1400091a5
movzx ebp, byte [rsp + 0x40]
mov byte [rsi + 2], bpl
test dl, 2
je 0x1400091a5
movzx edi, word [r11 + rdx - 2]
mov word [r14 + rdx - 2], di
jmp 0x1400091a5
mov r12, qword [rsp + 0x40]
mov r9d, r13d
add rsi, 0xa
mov qword [rsi - 8], r12
mov rbx, qword [r11 + r9 - 8]
and rsi, 0xfffffffffffffff8
mov qword [r14 + r9 - 8], rbx
sub r14, rsi
add r13d, r14d
sub r11, r14
mov r9d, r13d
and r9d, 0xfffffff8
cmp r9d, 8
jb 0x1400091a5
xor ecx, ecx
lea r13d, [r9 - 1]
mov r14d, 8
mov r8, qword [r11 + rcx]
shr r13d, 3
and r13d, 7
mov qword [rsi + rcx], r8
cmp r14d, r9d
jae 0x1400091a5
test r13d, r13d
je 0x1400098b3
cmp r13d, 1
je 0x14000989b
cmp r13d, 2
je 0x14000988c
cmp r13d, 3
je 0x14000987d
cmp r13d, 4
je 0x14000986e
cmp r13d, 5
je 0x14000985f
cmp r13d, 6
je 0x140009850
mov r10, qword [r11 + r14]
mov qword [rsi + r14], r10
mov r14d, 0x10
mov edx, r14d
add r14d, 8
mov r15, qword [r11 + rdx]
mov qword [rsi + rdx], r15
mov ebp, r14d
add r14d, 8
mov rdi, qword [r11 + rbp]
mov qword [rsi + rbp], rdi
mov r12d, r14d
add r14d, 8
mov rbx, qword [r11 + r12]
mov qword [rsi + r12], rbx
mov r13d, r14d
add r14d, 8
mov rcx, qword [r11 + r13]
mov qword [rsi + r13], rcx
mov r8d, r14d
add r14d, 8
mov r10, qword [r11 + r8]
mov qword [rsi + r8], r10
mov edx, r14d
add r14d, 8
mov r15, qword [r11 + rdx]
mov qword [rsi + rdx], r15
cmp r14d, r9d
jae 0x1400091a5
mov ebp, r14d
lea r12d, [r14 + 8]
lea r13d, [r14 + 0x10]
mov rdi, qword [r11 + rbp]
lea r8d, [r14 + 0x18]
lea edx, [r14 + 0x20]
mov qword [rsi + rbp], rdi
mov rbx, qword [r11 + r12]
lea ebp, [r14 + 0x28]
mov qword [rsi + r12], rbx
mov rcx, qword [r11 + r13]
lea r12d, [r14 + 0x30]
mov qword [rsi + r13], rcx
mov r10, qword [r11 + r8]
lea r13d, [r14 + 0x38]
add r14d, 0x40
mov qword [rsi + r8], r10
mov r15, qword [r11 + rdx]
mov qword [rsi + rdx], r15
mov rdi, qword [r11 + rbp]
mov qword [rsi + rbp], rdi
mov rbx, qword [r11 + r12]
mov qword [rsi + r12], rbx
mov rcx, qword [r11 + r13]
mov qword [rsi + r13], rcx
cmp r14d, r9d
jb 0x1400098b3
jmp 0x1400091a5
mov r13, rdx
mov ecx, r12d
jmp 0x140009702
lea rax, [r13 + 2]
cmp r14, rax
jb 0x140008ed8
add r11d, 0x50
mov r10d, r13d
jmp 0x140009765
mov r15d, dword [rsp + 0x40]
mov dword [rsi + 2], r15d
mov esi, dword [r11 + rdx - 4]
mov dword [r14 + rdx - 4], esi
jmp 0x1400091a5
cmp r14, 0x15
jbe 0x140008ed8
mov r10d, 0x14
mov eax, 0x16
jmp 0x140009765
xor r11d, r11d
xor eax, eax
mov r8d, 1
mov edx, 0x20
mov byte [rsp + 0xd0], 0
jmp 0x14000952c