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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x4d0]
sub rsp, 0x5d0
mov rax, qword [0x14005b178]
xor rax, rsp
mov qword [rbp + 0x4c0], rax
xor esi, esi
mov r14, r8
mov r13, rcx
mov rbx, rdx
lea rcx, [rsp + 0x31]
lea r8d, [rsi + 0x3f]
xor edx, edx
mov edi, r9d
mov byte [rsp + 0x30], sil
call fcn.140018a40
mov r15d, 0x104
lea rcx, [rbp + 0x3b1]
mov r8d, r15d
xor edx, edx
mov byte [rbp + 0x3b0], sil
call fcn.140018a40
lea rcx, [rbp + 0x81]
mov r8d, r15d
xor edx, edx
mov byte [rbp + 0x80], sil
call fcn.140018a40
lea rcx, [rsp + 0x71]
mov r8d, r15d
xor edx, edx
mov byte [rsp + 0x70], sil
call fcn.140018a40
lea rcx, [rbp + 0x191]
mov r8d, r15d
xor edx, edx
mov byte [rbp + 0x190], sil
call fcn.140018a40
lea rcx, [rbp + 0x2a1]
mov r8d, r15d
xor edx, edx
mov byte [rbp + 0x2a0], sil
call fcn.140018a40
test rbx, rbx
je 0x14000af3f
test r14, r14
je 0x14000af3f
or r15, 0xffffffffffffffff
mov rax, r15
inc rax
cmp byte [rbx + rax], sil
jne 0x14000aa3e
mov r12d, 0x105
test rax, rax
jne 0x14000ad58
mov rcx, qword [r13 + 0x118]
mov al, byte [rcx + 0x98]
cmp dword [rcx + 0x9c], esi
je 0x14000aa6d
or al, 0x40
test edi, edi
je 0x14000aa73
or al, 0x80
movzx eax, al
lea rdx, [rsp + 0x20]
shl eax, 0x18
mov dword [rsp + 0x20], eax
call fcn.14000ebb4
lea rdx, [rbp + 0x3b0]
lea rcx, str..Ne
mov r8d, r12d
call fcn.14000fe00
mov r9d, dword [rsp + 0x20]
lea r8, [rbp + 0x3b0]
lea rcx, [rsp + 0x30]
mov edx, 0x40
call fcn.140012eb8
mov al, byte [rsp + 0x30]
lea rdi, [rbp + 0x80]
mov byte [rbx], al
mov al, byte [rsp + 0x31]
mov rcx, r12
mov byte [rbx + 0x24], al
mov al, byte [rsp + 0x32]
mov byte [rbx + 0x1d], al
mov al, byte [rsp + 0x33]
mov byte [rbx + 0x1a], al
mov al, byte [rsp + 0x34]
mov byte [rbx + 0x22], al
mov al, byte [rsp + 0x35]
mov byte [rbx + 0xc], al
mov al, byte [rsp + 0x36]
mov byte [rbx + 0x10], al
mov al, byte [rsp + 0x37]
mov byte [rbx + 7], al
mov r8, qword [r13 + 0x118]
xor eax, eax
rep stosb byte [rdi], al
lea rax, [rbp + 0x80]
test rax, rax
je 0x14000ab39
mov rax, qword [r8 + 0x28]
inc rax
cmp rax, r12
ja 0x14000ab39
add r8, 0x18
cmp qword [r8 + 0x18], 0x10
jb 0x14000ab2a
mov r8, qword [r8]
lea rcx, [rbp + 0x80]
mov rdx, r12
call fcn.1400130d8
lea rcx, [rbp + 0x80]
mov rax, r15
inc rax
cmp byte [rcx + rax], sil
jne 0x14000ab43
cmp rax, 8
jae 0x14000ab6c
lea rcx, [rbp + 0x80]
mov r8d, 8
mov dl, 0x5f
add rcx, rax
sub r8, rax
call fcn.140018a40
mov al, byte [rbp + 0x80]
lea rcx, [rsp + 0x70]
mov r8, r12
mov byte [rbx + 0x1f], al
mov al, byte [rbp + 0x81]
xor edx, edx
mov byte [rbx + 0x17], al
mov al, byte [rbp + 0x82]
mov byte [rbx + 0x25], al
mov al, byte [rbp + 0x83]
mov byte [rbx + 5], al
mov al, byte [rbp + 0x84]
mov byte [rbx + 0xa], al
mov al, byte [rbp + 0x85]
mov byte [rbx + 0x14], al
mov al, byte [rbp + 0x86]
mov byte [rbx + 0x12], al
mov al, byte [rbp + 0x87]
mov byte [rbx + 1], al
call fcn.140018a40
mov r8, qword [r13 + 0x118]
lea rax, [rsp + 0x70]
test rax, rax
je 0x14000abfb
mov rax, qword [r8 + 0x48]
inc rax
cmp rax, r12
ja 0x14000abfb
add r8, 0x38
cmp qword [r8 + 0x18], 0x10
jb 0x14000abee
mov r8, qword [r8]
lea rcx, [rsp + 0x70]
mov rdx, r12
call fcn.1400130d8
mov al, byte [rsp + 0x70]
lea rcx, [rbp + 0x190]
mov r8, r12
mov byte [rbx + 8], al
mov al, byte [rsp + 0x71]
xor edx, edx
mov byte [rbx + 4], al
mov al, byte [rsp + 0x72]
mov byte [rbx + 0x20], al
mov al, byte [rsp + 0x73]
mov byte [rbx + 0x1b], al
mov al, byte [rsp + 0x74]
mov byte [rbx + 0xd], al
mov al, byte [rsp + 0x75]
mov byte [rbx + 3], al
mov al, byte [rsp + 0x76]
mov byte [rbx + 0x15], al
mov al, byte [rsp + 0x77]
mov byte [rbx + 0x19], al
mov al, byte [rsp + 0x78]
mov byte [rbx + 0x23], al
mov al, byte [rsp + 0x79]
mov byte [rbx + 0x27], al
mov al, byte [rsp + 0x7a]
mov byte [rbx + 0x13], al
mov al, byte [rsp + 0x7b]
mov byte [rbx + 0xf], al
call fcn.140018a40
mov r8, qword [r13 + 0x118]
lea rax, [rbp + 0x190]
test rax, rax
je 0x14000ac9c
mov rax, qword [r8 + 0x68]
inc rax
cmp rax, r12
ja 0x14000ac9c
add r8, 0x58
cmp qword [r8 + 0x18], 0x10
jb 0x14000ac8d
mov r8, qword [r8]
lea rcx, [rbp + 0x190]
mov rdx, r12
call fcn.1400130d8
mov al, byte [rbp + 0x190]
lea rcx, [rbp + 0x2a0]
mov r8, r12
mov byte [rbx + 0x26], al
mov al, byte [rbp + 0x191]
xor edx, edx
mov byte [rbx + 0xe], al
mov al, byte [rbp + 0x192]
mov byte [rbx + 0xb], al
mov al, byte [rbp + 0x193]
mov byte [rbx + 0x11], al
mov al, byte [rbp + 0x194]
mov byte [rbx + 0x18], al
mov al, byte [rbp + 0x195]
mov byte [rbx + 0x1e], al
mov al, byte [rbp + 0x196]
mov byte [rbx + 0x21], al
mov al, byte [rbp + 0x197]
mov byte [rbx + 2], al
call fcn.140018a40
mov r8, qword [r13 + 0x118]
lea rax, [rbp + 0x2a0]
test rax, rax
je 0x14000ad34
mov rax, qword [r8 + 0x88]
inc rax
cmp rax, r12
ja 0x14000ad34
add r8, 0x78
cmp qword [r8 + 0x18], 0x10
jb 0x14000ad25
mov r8, qword [r8]
lea rcx, [rbp + 0x2a0]
mov rdx, r12
call fcn.1400130d8
mov al, byte [rbp + 0x2a0]
mov byte [rbx + 6], al
mov al, byte [rbp + 0x2a1]
mov byte [rbx + 0x16], al
mov al, byte [rbp + 0x2a2]
mov byte [rbx + 0x1c], al
mov al, byte [rbp + 0x2a3]
mov byte [rbx + 9], al
inc r15
cmp byte [r14 + r15], sil
jne 0x14000ad58
mov r13d, 4
test r15, r15
jne 0x14000adcd
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea ecx, [rax + 0x1f]
call fcn.140013cc8
call fcn.140013c9c
mov r8d, r12d
mov edi, eax
mov eax, 0x80008001
imul edi
add edx, edi
sar edx, 0xf
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0xffff
lea rdx, [rbp + 0x3b0]
sub edi, ecx
lea rcx, str.eN
call fcn.14000fe00
lea r8, [rbp + 0x3b0]
lea edx, [r13 + 0x3c]
lea rcx, [rsp + 0x30]
movzx r9d, di
call fcn.140012eb8
jmp 0x14000adec
xor eax, eax
lea rdi, [rsp + 0x30]
mov r9, r13
lea ecx, [rax + 0x40]
lea edx, [rax + 0x40]
mov r8, r14
rep stosb byte [rdi], al
lea rcx, [rsp + 0x30]
call fcn.140014ba8
mov cl, byte [rsp + 0x32]
mov al, byte [rsp + 0x30]
mov r9d, 0x28
mov byte [r14], al
mov al, byte [rsp + 0x31]
mov r8, rbx
lea ebx, [r9 + 0x18]
mov byte [r14 + 1], al
mov al, byte [rsp + 0x33]
mov byte [r14 + 2], cl
mov byte [r14 + 4], cl
lea rcx, [rsp + 0x30]
mov edx, ebx
mov byte [r14 + 3], al
mov byte [r14 + 5], al
call fcn.140013390
lea edx, [rbx - 0x28]
lea rcx, [rsp + 0x58]
mov r9, r13
mov r8, r14
call fcn.140013390
or edi, 0xffffffff
movzx ecx, byte [rsp + rsi + 0x30]
call fcn.140012d58
mov edx, 8
movzx ecx, al
xor edi, ecx
mov eax, edi
shr edi, 1
and eax, 1
imul ecx, eax, 0xedb88320
xor edi, ecx
dec rdx
jne 0x14000ae56
inc rsi
not edi
cmp rsi, 0x2c
jb 0x14000ae42
lea rdx, [rbp + 0x3b0]
lea rcx, str..Ne
mov r8d, r12d
call fcn.14000fe00
lea r8, [rbp + 0x3b0]
lea rcx, [rsp + 0x30]
mov r9d, edi
mov rdx, rbx
call fcn.140012eb8
mov al, byte [rsp + 0x32]
lea rcx, [rsp + 0x30]
mov byte [r14 + 6], al
mov al, byte [rsp + 0x33]
mov rdx, rbx
mov byte [r14 + 7], al
mov al, byte [rsp + 0x34]
mov byte [r14 + 8], al
mov al, byte [rsp + 0x35]
mov byte [r14 + 9], al
mov al, byte [rsp + 0x36]
mov byte [r14 + 0xa], al
mov al, byte [rsp + 0x37]
mov byte [r14 + 0xb], al
mov al, byte [rsp + 0x30]
mov byte [r14 + 2], al
mov al, byte [rsp + 0x31]
mov byte [r14 + 3], al
call fcn.140010a84
lea rcx, [rbp + 0x3b0]
mov rdx, r12
call fcn.140010a84
lea rcx, [rbp + 0x80]
mov rdx, r12
call fcn.140010a84
lea rcx, [rsp + 0x70]
mov rdx, r12
call fcn.140010a84
lea rcx, [rbp + 0x190]
mov rdx, r12
call fcn.140010a84
lea rcx, [rbp + 0x2a0]
mov rdx, r12
call fcn.140010a84
mov eax, 1
jmp 0x14000af41
xor eax, eax
mov rcx, qword [rbp + 0x4c0]
xor rcx, rsp
call fcn.140012b40
mov rbx, qword [rsp + 0x628]
add rsp, 0x5d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret