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

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x60
xor ebx, ebx
mov edi, 0x1fb10b8e
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r13d, 0x4764996c
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, 8
test ebx, ebx
je 0x140223b28
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x3be68162
jmp 0x140223b1a
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, r13d
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x140223afd
cmp r9d, ebx
jne 0x140223c24
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 0x140223c24
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x140223c24
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r10d, dword [rdx + r9]
add r10, r9
mov r14d, 0x3be68162
jmp 0x140223b8b
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, r13d
xor r8d, r14d
mov r14d, edx
imul r14d, r8d
mov dl, byte [r10]
inc r10
test dl, dl
jne 0x140223b70
cmp r14d, edi
je 0x140223ba3
test esi, esi
jne 0x140223b5b
jmp 0x140223c24
mov edx, dword [r11 + 0x1c]
add rdx, r9
mov eax, dword [r11 + 0x24]
add rax, r9
movzx eax, word [rax + rsi*2]
mov r8d, dword [rdx + rax*4]
add r8, r9
cmp r8, r11
jbe 0x140223c2c
lea rax, [rcx + r11]
cmp r8, rax
jae 0x140223c2c
mov ebx, 0x3be68162
mov edi, ebx
jmp 0x140223beb
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r13d
xor ecx, ebx
mov ebx, eax
imul ebx, ecx
inc r8
mov al, byte [r8]
cmp al, 0x2e
jne 0x140223bd3
jmp 0x140223c09
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r13d
xor ecx, edi
mov edi, eax
imul edi, ecx
inc r8
mov al, byte [r8]
test al, al
jne 0x140223bf4
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140223ad1
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0xb486c871
mov eax, 0x838849
sub eax, dword [0x14035f058]
sub eax, dword [0x14035f050]
xor eax, 0x5f3fed1a
sub eax, dword [0x14035f048]
mov rcx, qword [0x14035f040]
add eax, 0x135b11a3
add eax, ecx
xor eax, 0x26f53a2d
add eax, 0x206934bf
xor eax, 0xe2b1fbf6
lea edx, [rcx - 0x1e49a595]
add edx, eax
not edx
mov eax, dword [0x14035f038]
xor eax, 0xbcd610bc
sub edx, eax
mov ecx, dword [0x14035f030]
xor ecx, 0x4329ef43
add ecx, 0x7abd78ba
add ecx, edx
xor ecx, 0x27c1e534
mov dword [rbp + 0x48], ecx
movsxd rcx, ecx
call r8
mov qword [rbp + 0x58], rax
and dword [rbp + 0x48], 0
movabs rsi, 0xf16404c6f5438eff
movabs rdi, 0x74a0a0a9d4bbff08
xor ebx, ebx
movabs rax, 0x607ca59187a56e0
movabs r10, 0x8b93591940e05754
mov r15, qword [0x14035f070]
imul r15, rax
not r15
movabs rcx, 0x746ca6e6e7abb65a
mov rax, qword [0x14035f060]
xor rax, rcx
and r15, rax
ror r15, 0x21
shr r15, 8
movabs rax, 0x91b6409b16d1b450
mov r11, qword [0x14035f088]
imul r11, rax
add r11, rdi
movabs rax, 0xb1f802bcffffffff
xor r11, rax
shr r11, 0x1f
not r11
movabs r8, 0x8b5f5f562b4400f8
lea rcx, [r11 + r8]
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea rdx, [0x14035f060]
movzx eax, r11b
movzx ecx, byte [rdx + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xc9
and ecx, 0x8000003f
jge 0x140223d88
dec ecx
or ecx, 0xffffffc0
inc ecx
mov rdx, r11
ror rdx, cl
not rdx
movabs rax, 0x763614c41aa19a98
mov r12, rdx
imul r12, rax
add r8, r12
mov r9, r11
imul r9, r15
sub r9, r8
xor r9, rsi
movzx ecx, r8b
xor ecx, 6
and ecx, 0xf
jge 0x140223dc5
dec ecx
or ecx, 0xffffffc0
inc ecx
rol r9, cl
mov rax, r8
sub rax, qword [0x14035f078]
xor r9, rax
movabs rax, 0x35fb53119b123cc0
imul rdx, rax
movabs rax, 0x66375efc2c3f0fc0
add rdx, rax
xor r9, rdx
xor r9, r10
mov eax, 2
dec rax
sub rax, 1
movabs r14, 0xaaaaaaaaaaaaaaab
je 0x140223f02
cmp rax, 1
jne 0x140223fcb
mov rsi, r8
imul rsi, r11
movabs rax, 0x79238b2098bed938
add rax, r9
xor rsi, rax
ror rsi, 0x1a
shr rsi, 0xc
not rsi
movabs rcx, 0x83571b2f8cde
mov rdx, qword [0x14035f088]
add rdx, rcx
movabs rax, 0x8bddda2e7b70acae
xor rdx, rax
movzx eax, sil
movzx ecx, r9b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db943cf6021
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
imul rcx, rdi
mov eax, 0x9214b2cb
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r13, [0x14035f060]
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0xe2394036a1ab6a69
sub rdi, rsi
shr rdi, cl
movabs rcx, 0x8b6783de8bd4c300
add rcx, r12
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [r13 + rcx*8]
imul rax, r9
sub rax, r15
xor rdi, rax
jmp 0x140223fd2
movabs rcx, 0xaaaaaa1a920d4ff5
mov r11, r9
xor r11, rcx
movabs rcx, 0x1206ed500093b9
imul r11, rcx
movabs rcx, 0xffff7e8ab41d7d29
imul r12, rcx
movabs rcx, 0x9cc9fdd94d038e04
add r11, rcx
add r11, r12
movabs rax, 0x277cd7be40dd9895
mov rcx, r11
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
not r8
lea r13, [0x14035f060]
imul r8, qword [r13 + rcx*8]
xor r8, 0xffffffffc7589925
lea ecx, [r9 - 9]
and cl, 0x3f
rol r8, cl
movabs rax, 0x20520c0000000000
imul r8, rax
mov rcx, r8
ror rcx, 0x17
not rcx
movabs rax, 0x9b2de6b23cc46ac8
imul rcx, rax
mov rax, r11
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, r15b
and cl, 0x3f
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x140223fd2
lea r13, [0x14035f060]
movabs rcx, 0xff055d7bb27b62f9
xor rsi, rcx
mov rax, r14
mul rsi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rsi, rax
xor r10, rbx
imul r10, qword [r13 + rsi*8]
not r8
imul r8, r9
imul r8, r15
imul r8, rdi
movabs rcx, 0xf5ed7e87b5c82825
xor rcx, r11
not rcx
xor rcx, r8
sub rcx, r10
call fcn.1401c7d84
mov qword [0x14036d9a8], rax
movdqa xmm0, xmmword [0x1403383c0]
movdqu xmmword [rbp - 0x30], xmm0
movdqa xmm1, xmmword [0x1403382b0]
movdqu xmmword [rbp - 0x20], xmm1
mov dword [rbp - 0x10], 0xcaf315b7
mov dword [rbp - 0xc], 0xbe1b425
mov dword [rbp - 8], 0x2c5be3c
xor r15d, r15d
mov r12, qword [0x14035f040]
xor edx, edx
mov rax, r15
movabs rcx, 0x13cce94adb96c2c4
div rcx
add dl, 0x30
mov r14b, dl
sar r14b, 7
or r14b, dl
mov sil, r14b
shl sil, 6
mov al, r14b
sar al, 2
or sil, al
mov r8b, r14b
sar r8b, 5
mov al, r14b
shl al, 3
or r8b, al
mov r10b, r14b
sar r10b, 3
mov al, r14b
shl al, 5
or r10b, al
mov dl, r14b
sar dl, 4
mov al, r14b
shl al, 4
or dl, al
mov r9b, r14b
add r9b, r9b
mov r11b, r14b
sar r11b, 7
mov bl, r14b
not bl
mov dil, byte [rbp + r15 - 0x30]
sub dil, sil
sub dil, 2
mov eax, 4
sub al, sil
xor dil, al
mov cl, r14b
shl cl, 7
mov al, r14b
sar al, 1
or cl, al
sub dil, cl
sub dil, byte [0x14035f050]
sub dil, byte [0x14035f058]
sub dil, 0x3f
add dil, sil
add dil, r14b
lea eax, [rsi + 7]
add al, r14b
xor dil, al
sub dil, r8b
sub dil, r14b
sub dil, byte [0x14035f048]
sub dil, 0x50
add dil, sil
add dil, r12b
mov al, dl
sub al, r8b
add al, sil
add al, r14b
xor dil, al
mov al, r14b
sub al, dl
xor al, r14b
sub dil, al
sub dil, r10b
add dil, 0x30
add dil, r14b
mov al, r11b
or al, r9b
sub al, 0x50
add al, r10b
xor dil, al
add sil, sil
add dil, sil
sub dil, r9b
add dil, 0x51
add dil, r12b
not dil
or r11b, r14b
sub dil, r11b
mov al, bl
xor al, byte [0x14035f038]
sub dil, al
mov al, r14b
xor al, byte [0x14035f030]
add dil, al
mov al, r14b
xor al, 0x40
sub dil, al
movsx eax, r14b
movsx ecx, bl
imul ecx, eax
xor cl, dil
mov byte [rbp + r15 - 0x30], cl
inc r15
cmp r15, 0x2c
jb 0x140224066
lea rax, [rbp - 0x30]
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], 0x2c
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0x667ea7a
mov eax, 0xb481c5e5
sub eax, dword [0x14035f058]
sub eax, dword [0x14035f050]
xor eax, 0x2e894585
sub eax, dword [0x14035f048]
mov rcx, qword [0x14035f040]
add eax, 0xcff3040d
add eax, ecx
xor eax, 0xdcef187d
add eax, 0x730f5aaf
xor eax, 0xf6a79ddc
lea edx, [rcx + 0xa21815b]
add edx, eax
not edx
mov eax, dword [0x14035f038]
xor eax, 0x2310e778
sub edx, eax
mov ecx, dword [0x14035f030]
xor ecx, 0xdcef1887
add ecx, 0xcae9525d
add ecx, edx
xor ecx, 0x4ca55048
mov dword [rbp + 0x48], ecx
movsxd rdx, ecx
lea r8, [rbp - 0x30]
mov rcx, qword [rbp + 0x58]
call fcn.140053908
nop
and dword [rbp + 0x48], 0
xor eax, eax
and dword [rbp + 0x50], eax
mov dword [rbp + 0x50], 0x1a415ef2
mov eax, 0x1813e7b4
sub eax, dword [0x14035f058]
sub eax, dword [0x14035f050]
xor eax, 0xd6ed3e8b
sub eax, dword [0x14035f048]
mov rcx, qword [0x14035f040]
add eax, 0x9f9dcacb
add eax, ecx
xor eax, 0xec613b0e
add eax, 0x14a4aa0c
xor eax, 0xf5c02963
lea edx, [rcx - 0x4155e072]
add edx, eax
not edx
mov eax, dword [0x14035f038]
xor eax, 0xb31e3ace
sub edx, eax
mov ecx, dword [0x14035f030]
xor ecx, 0x4ce1c531
add ecx, 0xd92fbc43
add ecx, edx
xor ecx, 0x6317c76e
mov dword [rbp + 0x50], ecx
call fcn.1402ae5b0
mov rdx, rax
mov rcx, qword [rbp + 0x58]
call fcn.1402ae744
nop
and dword [rbp + 0x50], 0
xor edi, edi
mov esi, 0x97bc72ca
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 edi, edi
je 0x140224360
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x705c976a
jmp 0x140224352
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov ecx, r10d
xor ecx, edx
mov r10d, r8d
imul r10d, ecx
add r9, 2
cmp r9, r11
jne 0x14022432c
cmp r10d, edi
jne 0x140224469
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov ebx, ecx
add rbx, r10
shr rcx, 0x20
cmp rbx, r10
je 0x140224469
mov r14d, dword [rbx + 0x18]
test r14d, r14d
je 0x140224469
mov r13d, dword [rbx + 0x20]
dec r14d
lea rdx, [r10 + r14*4]
mov r11d, dword [rdx + r13]
add r11, r10
mov r15d, 0x705c976a
jmp 0x1402243cc
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, 0x4764996c
mov edx, r15d
xor edx, r8d
mov r15d, r9d
imul r15d, edx
mov dl, byte [r11]
inc r11
test dl, dl
jne 0x1402243a9
cmp r15d, esi
je 0x1402243e5
test r14d, r14d
jne 0x140224393
jmp 0x140224469
mov edx, dword [rbx + 0x24]
add rdx, r10
movzx r8d, word [rdx + r14*2]
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov r9d, dword [rdx + r8*4]
add r9, r10
cmp r9, rbx
jbe 0x140224471
lea rax, [rcx + rbx]
cmp r9, rax
jae 0x140224471
mov edi, 0x705c976a
mov esi, edi
jmp 0x14022442e
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 r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x140224414
jmp 0x14022444e
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, esi
mov esi, eax
imul esi, ecx
inc r9
mov al, byte [r9]
test al, al
jne 0x140224437
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140224300
mov rcx, qword [rbp + 0x58]
mov rbx, qword [rsp + 0xa0]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp r9