Function at 0x14002cc10
Capabilities:
Access peb ldr_data
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x47]
sub rsp, 0xd8
mov rax, r8
xor r8d, r8d
test rdx, rdx
je 0x14002d3c5
test rax, rax
je 0x14002d3c5
mov ebx, r8d
mov edi, 0xde8e7c72
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, 8
test ebx, ebx
je 0x14002ccc8
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x23d985b2
jmp 0x14002ccb7
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x14002cc97
cmp r9d, ebx
jne 0x14002cdd6
xor r8d, r8d
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov rcx, qword [rcx + r9 + 0x88]
mov r11d, ecx
add r11, r9
shr rcx, 0x20
cmp r11, r9
je 0x14002cdd6
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x14002cdd6
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r10d, dword [rdx + r9]
add r10, r9
mov r14d, 0x23d985b2
mov dl, byte [r10]
inc r10
test dl, dl
je 0x14002cd43
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, 0x4764996c
xor r8d, r14d
mov r14d, edx
imul r14d, r8d
mov dl, byte [r10]
inc r10
test dl, dl
jne 0x14002cd18
xor r8d, r8d
cmp r14d, edi
je 0x14002cd51
test esi, esi
jne 0x14002ccfb
jmp 0x14002cdd6
mov edx, dword [r11 + 0x1c]
add rdx, r9
mov eax, dword [r11 + 0x24]
add rax, r9
movzx eax, word [rax + rsi*2]
mov r15d, dword [rdx + rax*4]
add r15, r9
cmp r15, r11
jbe 0x14002cde1
lea rax, [rcx + r11]
cmp r15, rax
jae 0x14002cde1
mov ebx, 0x23d985b2
mov edi, ebx
jmp 0x14002cd9b
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, ebx
mov ebx, eax
imul ebx, ecx
inc r15
mov al, byte [r15]
cmp al, 0x2e
jne 0x14002cd81
jmp 0x14002cdbb
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, edi
mov edi, eax
imul edi, ecx
inc r15
mov al, byte [r15]
test al, al
jne 0x14002cda4
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
xor r8d, r8d
jmp 0x14002cc6b
mov dword [rsp + 0x3a], 0x6614af49
mov dword [rsp + 0x3e], 0xa2282391
mov word [rsp + 0x42], 0xebc3
mov r12, r8
movabs r13, 0x13cce94adb9fb9bf
xor edx, edx
mov rax, r12
div r13
add dl, 0x39
mov r14b, dl
sar r14b, 7
or r14b, dl
mov al, r14b
sar al, 2
mov sil, r14b
shl sil, 6
mov r11b, sil
or r11b, al
movsx rcx, r14b
or sil, al
mov r9b, r14b
sar r9b, 5
mov al, r14b
shl al, 3
or r9b, al
mov r10b, r14b
sar r10b, 3
mov al, r14b
shl al, 5
or r10b, al
mov r8b, r14b
sar r8b, 4
mov al, r14b
shl al, 4
or r8b, al
mov bl, r14b
not bl
mov dil, r14b
ror dil, 7
lea eax, [r10 - 0x50]
add dil, al
mov dl, byte [rsp + r12 + 0x3a]
sub dl, r11b
sub dl, 2
mov eax, 4
sub al, sil
xor dl, al
sar rcx, 1
mov al, r14b
shl al, 7
or cl, al
sub dl, cl
sub dl, byte [0x140336050]
sub dl, byte [0x140336058]
sub dl, 0x3f
add dl, sil
add dl, r14b
lea eax, [r11 + 7]
add al, r14b
xor dl, al
sub dl, r9b
sub dl, byte [0x140336048]
sub dl, r14b
sub dl, 0x50
mov rcx, qword [0x140336040]
add dl, sil
add dl, cl
mov al, r8b
sub al, r9b
add al, r11b
add al, r14b
xor dl, al
mov al, r14b
sub al, r8b
xor al, r14b
sub dl, al
sub dl, r10b
add dl, 0x30
add dl, r14b
xor dil, dl
mov al, r14b
add al, al
sub dil, al
add sil, sil
add dil, sil
add cl, 0x51
add dil, cl
not dil
mov al, r14b
sar al, 7
or al, r14b
sub dil, al
mov al, bl
xor al, byte [0x140336038]
sub dil, al
mov al, byte [0x140336030]
xor al, r14b
add dil, al
mov al, r14b
xor al, 0x40
sub dil, al
movsx eax, r14b
movsx ecx, bl
imul ecx, eax
xor dil, cl
mov byte [rsp + r12 + 0x3a], dil
inc r12
cmp r12, 0xa
jb 0x14002ce05
lea rax, [rsp + 0x3a]
mov qword [rbp - 0x39], rax
mov qword [rbp - 0x31], 0xa
lea rcx, [rsp + 0x3a]
call r15
mov qword [rbp - 0x71], rax
xor r8d, r8d
mov qword [rsp + 0x3a], r8
mov word [rsp + 0x42], r8w
test rax, rax
je 0x14002d3c5
mov ebx, r8d
mov edi, 0xd4f2cebe
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, 8
test ebx, ebx
je 0x14002d002
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0xfbd75e62
jmp 0x14002cff1
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x14002cfd1
cmp r9d, ebx
jne 0x14002d110
xor r8d, r8d
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov rcx, qword [rcx + r9 + 0x88]
mov r11d, ecx
add r11, r9
shr rcx, 0x20
cmp r11, r9
je 0x14002d110
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x14002d110
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r10d, dword [rdx + r9]
add r10, r9
mov r14d, 0xfbd75e62
mov dl, byte [r10]
inc r10
test dl, dl
je 0x14002d07d
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, 0x4764996c
xor r8d, r14d
mov r14d, edx
imul r14d, r8d
mov dl, byte [r10]
inc r10
test dl, dl
jne 0x14002d052
xor r8d, r8d
cmp r14d, edi
je 0x14002d08b
test esi, esi
jne 0x14002d035
jmp 0x14002d110
mov edx, dword [r11 + 0x1c]
add rdx, r9
mov eax, dword [r11 + 0x24]
add rax, r9
movzx eax, word [rax + rsi*2]
mov r15d, dword [rdx + rax*4]
add r15, r9
cmp r15, r11
jbe 0x14002d11b
lea rax, [rcx + r11]
cmp r15, rax
jae 0x14002d11b
mov ebx, 0xfbd75e62
mov edi, ebx
jmp 0x14002d0d5
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, ebx
mov ebx, eax
imul ebx, ecx
inc r15
mov al, byte [r15]
cmp al, 0x2e
jne 0x14002d0bb
jmp 0x14002d0f5
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, edi
mov edi, eax
imul edi, ecx
inc r15
mov al, byte [r15]
test al, al
jne 0x14002d0de
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
xor r8d, r8d
jmp 0x14002cfa5
mov dword [rsp + 0x44], 0x6e73af29
mov dword [rsp + 0x48], 0xa978fea9
mov word [rsp + 0x4c], 0xeb54
mov r12, r8
movabs r13, 0x13cce94adb9fb9bf
xor edx, edx
mov rax, r12
div r13
add dl, 0x39
mov r14b, dl
sar r14b, 7
or r14b, dl
mov al, r14b
sar al, 2
mov sil, r14b
shl sil, 6
mov r11b, sil
or r11b, al
movsx rcx, r14b
or sil, al
mov r9b, r14b
sar r9b, 5
mov al, r14b
shl al, 3
or r9b, al
mov r10b, r14b
sar r10b, 3
mov al, r14b
shl al, 5
or r10b, al
mov r8b, r14b
sar r8b, 4
mov al, r14b
shl al, 4
or r8b, al
mov bl, r14b
not bl
mov dil, r14b
ror dil, 7
lea eax, [r10 - 0x50]
add dil, al
mov dl, byte [rsp + r12 + 0x44]
sub dl, r11b
sub dl, 2
mov eax, 4
sub al, sil
xor dl, al
sar rcx, 1
mov al, r14b
shl al, 7
or cl, al
sub dl, cl
sub dl, byte [0x140336050]
sub dl, byte [0x140336058]
sub dl, 0x3f
add dl, sil
add dl, r14b
lea eax, [r11 + 7]
add al, r14b
xor dl, al
sub dl, r9b
sub dl, r14b
sub dl, byte [0x140336048]
sub dl, 0x50
mov rcx, qword [0x140336040]
add dl, sil
add dl, cl
mov al, r8b
sub al, r9b
add al, r11b
add al, r14b
xor dl, al
mov al, r14b
sub al, r8b
xor al, r14b
sub dl, al
sub dl, r10b
add dl, 0x30
add dl, r14b
xor dil, dl
mov al, r14b
add al, al
sub dil, al
add sil, sil
add dil, sil
add cl, 0x51
add dil, cl
not dil
mov al, r14b
sar al, 7
or al, r14b
sub dil, al
mov al, bl
xor al, byte [0x140336038]
sub dil, al
mov al, r14b
xor al, byte [0x140336030]
add dil, al
mov al, r14b
xor al, 0x40
sub dil, al
movsx eax, r14b
movsx ecx, bl
imul ecx, eax
xor dil, cl
mov byte [rsp + r12 + 0x44], dil
inc r12
cmp r12, 0xa
jb 0x14002d13f
lea rax, [rsp + 0x44]
mov qword [rbp - 0x29], rax
mov qword [rbp - 0x21], 0xa
lea rdx, [rsp + 0x44]
mov rcx, qword [rbp - 0x71]
call r15
mov r12, rax
mov qword [rbp - 0x71], rax
xor ebx, ebx
mov qword [rsp + 0x44], rbx
mov word [rsp + 0x4c], bx
test rax, rax
mov r13, qword [rbp + 0x4f]
je 0x14002d3c5
mov word [rsp + 0x50], 0xb848
mov word [rbp - 0x77], 0xe0ff
mov rax, qword [rbp + 0x5f]
mov qword [rbp - 0x7f], rax
mov ecx, dword [0x140340620]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov eax, dword [rdx + rax]
cmp dword [0x140340128], eax
jg 0x14002d468
mov rdx, qword [0x140340120]
test rdx, rdx
je 0x14002d3c5
mov edi, 0xc
mov r9d, edi
lea r8, [rbp - 0x69]
mov rcx, r13
call fcn.140063544
test al, al
je 0x14002d3c5
mov al, byte [rsp + 0x50]
cmp byte [rbp - 0x69], al
jne 0x14002d358
mov al, byte [rbp - 0x80]
cmp byte [rbp - 0x68], al
jne 0x14002d358
mov al, byte [rbp - 0x77]
cmp byte [rbp - 0x5f], al
jne 0x14002d358
mov al, byte [rbp - 0x76]
cmp byte [rbp - 0x5e], al
je 0x14002d3c5
mov r9d, edi
lea r8, [rsp + 0x50]
mov rdx, qword [0x140340120]
mov rcx, r13
call fcn.14006c64c
test al, al
je 0x14002d3c5
mov eax, dword [rbp + 0x8f]
mov dword [rsp + 0x28], eax
mov ecx, dword [rbp + 0x87]
mov dword [rsp + 0x20], ecx
mov r9, qword [rbp + 0x7f]
mov r8d, dword [rbp + 0x77]
mov dl, byte [rbp + 0x6f]
mov rcx, qword [rbp + 0x67]
call r12
mov rcx, qword [rbp + 0x57]
mov qword [rcx], rax
mov r9d, edi
lea r8, [rbp - 0x69]
mov rdx, qword [0x140340120]
mov rcx, r13
call fcn.14006c64c
mov al, 1
jmp 0x14002d3c7
inc r15
cmp byte [rax + r15], bl
je 0x14002d3fc
jmp 0x14002d3ba
xor al, al
add rsp, 0xd8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
movdqa xmm0, xmmword [0x14030fbf0]
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x59], bl
lea rcx, [0x140340128]
call fcn.140290b5c
jmp 0x14002d30b
mov r8, r15
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x59]
call fcn.14002d678
nop
lea r8, [rbp - 0x59]
mov rdx, qword [0x140340038]
mov rcx, r13
call fcn.14004be68
mov qword [0x140340120], rax
mov rdx, qword [rbp - 0x41]
cmp rdx, 0xf
jbe 0x14002d3db
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002d630
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002d630
call fcn.140297de8
nop
lea rcx, [0x140340128]
call fcn.140290bc8
or r15, 0xffffffffffffffff
cmp dword [0x140340128], r15d
jne 0x14002d30b
mov dword [rsp + 0x30], 0x6e73af29
mov dword [rsp + 0x34], 0xa978fea9
mov word [rsp + 0x38], 0xeb54
mov r13, rbx
movabs r12, 0x13cce94adb9fb9bf
xor edx, edx
mov rax, r13
div r12
add dl, 0x39
mov r14b, dl
sar r14b, 7
or r14b, dl
mov al, r14b
sar al, 2
mov sil, r14b
shl sil, 6
mov r11b, sil
or r11b, al
movsx rcx, r14b
or sil, al
mov r9b, r14b
sar r9b, 5
mov al, r14b
shl al, 3
or r9b, al
mov r10b, r14b
sar r10b, 3
mov al, r14b
shl al, 5
or r10b, al
mov r8b, r14b
sar r8b, 4
mov al, r14b
shl al, 4
or r8b, al
mov bl, r14b
not bl
mov dil, r14b
ror dil, 7
lea eax, [r10 - 0x50]
add dil, al
mov dl, byte [rsp + r13 + 0x30]
sub dl, r11b
sub dl, 2
mov eax, 4
sub al, sil
xor dl, al
sar rcx, 1
mov al, r14b
shl al, 7
or cl, al
sub dl, cl
sub dl, byte [0x140336050]
sub dl, byte [0x140336058]
sub dl, 0x3f
add dl, sil
add dl, r14b
lea eax, [r11 + 7]
add al, r14b
xor dl, al
sub dl, byte [0x140336048]
sub dl, r9b
sub dl, r14b
sub dl, 0x50
mov rcx, qword [0x140336040]
add dl, sil
add dl, cl
mov al, r8b
sub al, r9b
add al, r11b
add al, r14b
xor dl, al
mov al, r14b
sub al, r8b
xor al, r14b
sub dl, al
sub dl, r10b
add dl, 0x30
add dl, r14b
xor dil, dl
mov al, r14b
add al, al
sub dil, al
add sil, sil
add dil, sil
add cl, 0x51
add dil, cl
not dil
mov al, r14b
sar al, 7
or al, r14b
sub dil, al
mov al, byte [0x140336038]
xor al, bl
sub dil, al
mov al, byte [0x140336030]
xor al, r14b
add dil, al
mov al, r14b
xor al, 0x40
sub dil, al
movsx eax, r14b
movsx ecx, bl
imul ecx, eax
xor dil, cl
mov byte [rsp + r13 + 0x30], dil
inc r13
cmp r13, 0xa
jb 0x14002d4a9
lea rax, [rsp + 0x30]
mov qword [rbp - 0x19], rax
mov qword [rbp - 0x11], 0xa
xorps xmm0, xmm0
movups xmmword [rbp - 0x59], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x49], xmm1
lea rax, [rsp + 0x30]
mov r12, qword [rbp - 0x71]
mov r13, qword [rbp + 0x4f]
xor ebx, ebx
jmp 0x14002d3ba
call fcn.140290aa8
nop
jmp 0x14002d3db