Function at 0x140224a48
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, 0x80
xor ebx, ebx
mov edi, 0x3b54588e
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 0x140224adc
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x4d1b5cf2
jmp 0x140224ace
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, r13d
mov ecx, r10d
xor ecx, edx
mov r10d, r8d
imul r10d, ecx
add r9, 2
cmp r9, r11
jne 0x140224aac
cmp r10d, ebx
jne 0x140224bdc
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 0x140224bdc
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x140224bdc
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r10d, dword [rdx + r9]
add r10, r9
mov r14d, 0x4d1b5cf2
jmp 0x140224b3f
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 0x140224b24
cmp r14d, edi
je 0x140224b57
test esi, esi
jne 0x140224b0f
jmp 0x140224bdc
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 0x140224be4
lea rax, [r11 + rcx]
cmp r8, rax
jae 0x140224be4
mov ebx, 0x4d1b5cf2
mov edi, ebx
jmp 0x140224ba1
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r13d
mov eax, ebx
xor eax, ecx
mov ebx, edx
imul ebx, eax
inc r8
mov al, byte [r8]
cmp al, 0x2e
jne 0x140224b87
jmp 0x140224bc1
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r13d
mov eax, edi
xor eax, ecx
mov edi, edx
imul edi, eax
inc r8
mov al, byte [r8]
test al, al
jne 0x140224baa
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140224a80
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0xb976bfab
mov eax, 0x5c0fc668
sub eax, dword [0x14033d058]
sub eax, dword [0x14033d050]
xor eax, 0x1f6d00a6
sub eax, dword [0x14033d048]
mov rcx, qword [0x14033d040]
add eax, 0xe0f2d17d
add eax, ecx
xor eax, 0xcdd2d39d
add eax, 0x63f315c7
xor eax, 0xf6896550
lea edx, [rcx + 0x2492f9d7]
add edx, eax
not edx
mov eax, dword [0x14033d038]
xor eax, 0x322d2c53
sub edx, eax
mov ecx, dword [0x14033d030]
xor ecx, 0xcdd2d3ac
add ecx, 0x39c59f47
add ecx, edx
xor ecx, 0xc4f830c4
mov dword [rbp + 0x48], ecx
movsxd rcx, ecx
call r8
mov r14, rax
mov qword [rbp + 0x58], rax
and dword [rbp + 0x48], 0
movabs rax, 0x88ef8bc800000000
mov r12, qword [0x14033d060]
mov rsi, r12
imul rsi, rax
movabs rax, 0xb66cba8b00000000
xor rsi, rax
movabs r8, 0x9629d4519aad3948
mov rcx, rsi
imul rcx, r8
movabs r9, 0xaaaaaaaaaaaaaaab
mov rax, r9
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r10, [0x14033d060]
mov rdi, rsi
and rdi, r8
imul rdi, qword [r10 + rcx*8]
movabs rax, 0xf458e4959c15eff0
imul rdi, rax
shr rdi, 3
movabs rax, 0xe90817ddd1cc806f
xor rdi, rax
movabs rax, 0xffffff57a200cba7
mov r11, rsi
imul r11, rax
add r11, 0x26307cf0
xor r11, rdi
xor r11, r12
mov rax, rdi
mov r15, qword [0x14033d070]
imul rax, r15
movabs rcx, 0xb9de928babb37486
imul rax, rcx
not rax
and r11, rax
ror r11, 0x3f
shr r11, 8
movabs r8, 0x69d62bae6552c6b8
lea rcx, [rsi + r8]
xor rcx, 0xffffffff953d7f8b
mov rax, r9
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x591ee29a30d12a60
mov rbx, qword [r10 + rcx*8]
imul rbx, rax
sub rbx, r8
movabs rcx, 0x25b3306623be2f20
mov rax, rdi
imul rax, rcx
xor rbx, rax
shr rbx, 0x1f
not rbx
mov r10, rbx
xor r10, rsi
lea rcx, [rbx + r8]
mov rax, r9
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, bl
lea rdx, [0x14033d060]
movzx ecx, byte [rdx + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x97
and ecx, 0x8000003f
jge 0x140224dda
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r10, cl
not r10
imul r10, rdi
imul r8, r10, 0x26307cf0
movabs rax, 0x69d62bae6552c6b8
add r8, rax
mov r9, rbx
imul r9, r11
sub r9, r8
movabs rax, 0xf6514a6857a49380
imul r10, rax
movabs rax, 0x20fda24ee7dedbc0
add r10, rax
xor r9, r10
mov rcx, r8
sub rcx, qword [0x14033d078]
xor r9, rcx
xor r9, rdi
xor r9, rsi
movabs rcx, 0x9ab937ad73f8d1d1
xor r9, rcx
movabs rax, 0xaaaaaaaaaaaaaaab
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, rdi
sub rdx, rax
mov rax, r9
imul rax, qword [0x14033d080]
lea rcx, [0x14033d060]
mov r10, qword [rcx + rdx*8]
and r10, rax
xor r10, rdi
and dil, 0x3f
mov cl, dil
ror r10, cl
imul r10, r8
not r11
imul r11, rbx
movabs rax, 0x7cd8a7de105d9e6a
imul r11, rax
mov rax, r10
imul rax, rsi
xor r11, rax
imul rdi, r12, 0x26307cf0
mov rdx, qword [0x14033d068]
sub rdi, rdx
mov al, r11b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140224ed4
dec ecx
or ecx, 0xffffffc0
inc ecx
ror rdi, cl
lea rcx, [r8 + rdi]
not r8
imul r8, r9
imul rcx, r8
movabs rax, 0x9629d4519aad3948
imul rcx, rax
movabs rax, 0xf5ed7e87e7a5de7b
xor rbx, rax
not rbx
xor rcx, rbx
xor r10, r11
imul r10, r15
sub rcx, r10
call fcn.1401b7390
mov qword [0x14034b9d8], rax
movdqa xmm0, xmmword [0x1403180d0]
movdqu xmmword [rbp - 0x50], xmm0
movdqa xmm1, xmmword [0x140318390]
movdqu xmmword [rbp - 0x40], xmm1
movdqa xmm0, xmmword [0x1403182e0]
movdqu xmmword [rbp - 0x30], xmm0
movdqa xmm1, xmmword [0x1403181a0]
movdqu xmmword [rbp - 0x20], xmm1
mov dword [rbp - 0x10], 0xee938108
mov word [rbp - 0xc], 0x4813
mov byte [rbp - 0xa], 0x4b
xor esi, esi
mov r15, qword [0x14033d040]
xor edx, edx
mov rax, rsi
movabs rcx, 0x13cce94adbc7a7fd
div rcx
add dl, 0x33
mov dil, dl
sar dil, 7
or dil, dl
mov bl, dil
shl bl, 6
mov al, dil
sar al, 2
or bl, al
mov r8b, dil
sar r8b, 5
mov al, dil
shl al, 3
or r8b, al
mov r9b, dil
sar r9b, 3
mov al, dil
shl al, 5
or r9b, al
mov dl, dil
sar dl, 4
mov al, dil
shl al, 4
or dl, al
mov r11b, dil
not r11b
mov cl, dil
ror cl, 1
mov r10b, byte [rbp + rsi - 0x50]
sub r10b, bl
sub r10b, 2
mov eax, 4
sub al, bl
xor r10b, al
sub r10b, byte [0x14033d050]
sub r10b, byte [0x14033d058]
add r10b, bl
add r10b, dil
sub r10b, cl
sub r10b, 0x3f
lea eax, [rbx + 7]
add al, dil
xor r10b, al
sub r10b, r8b
sub r10b, dil
sub r10b, byte [0x14033d048]
sub r10b, 0x50
add r10b, bl
add r10b, r15b
mov al, dl
sub al, r8b
add al, bl
add al, dil
xor r10b, al
mov al, dil
sub al, dl
xor al, dil
sub r10b, al
sub r10b, r9b
add r10b, 0x30
add r10b, dil
mov al, dil
ror al, 7
sub r9b, 0x50
add al, r9b
xor r10b, al
mov al, dil
add al, al
sub r10b, al
add bl, bl
add r10b, 0x51
add r10b, bl
add r10b, r15b
not r10b
mov al, dil
sar al, 7
or al, dil
sub r10b, al
mov al, r11b
xor al, byte [0x14033d038]
sub r10b, al
mov al, dil
xor al, byte [0x14033d030]
add r10b, al
mov al, dil
xor al, 0x40
sub r10b, al
movsx eax, dil
movsx ecx, r11b
imul ecx, eax
xor cl, r10b
mov byte [rbp + rsi - 0x50], cl
inc rsi
cmp rsi, 0x47
jb 0x140224f6b
lea rax, [rbp - 0x50]
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], 0x47
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0xfee5dbfe
mov eax, 0xc0985612
sub eax, dword [0x14033d058]
sub eax, dword [0x14033d050]
xor eax, 0xefd4b613
sub eax, dword [0x14033d048]
mov rdx, qword [0x14033d040]
lea ecx, [rdx - 0x3f1926ad]
add ecx, eax
xor ecx, 0x6ebfc53d
add ecx, 0xb057050
xor ecx, 0x4536d1c2
mov r8d, dword [0x14033d030]
xor r8d, 0x1a10a786
sub r8d, ecx
mov eax, dword [0x14033d038]
xor eax, 0xe5ef5879
sub r8d, eax
sub r8d, edx
sub r8d, 0x26706b8d
xor r8d, 0x4f8f3e56
mov dword [rbp + 0x48], r8d
movsxd rdx, r8d
lea r8, [rbp - 0x50]
mov rcx, r14
call fcn.140052f40
nop
and dword [rbp + 0x48], 0
xor eax, eax
and dword [rbp + 0x50], eax
mov dword [rbp + 0x50], 0xd619f41e
mov eax, 0x6848c3c1
sub eax, dword [0x14033d058]
sub eax, dword [0x14033d050]
xor eax, 0x4bb30d13
sub eax, dword [0x14033d048]
mov r8, qword [0x14033d040]
lea edx, [r8 + 0x631279e9]
add edx, eax
xor edx, 0x8b17ff90
sub edx, 0x5dfa9f07
xor edx, 0x1bce7d85
mov ecx, dword [0x14033d030]
xor ecx, 0x721fe3f0
sub ecx, edx
mov eax, dword [0x14033d038]
xor eax, 0x8de01c0f
sub ecx, eax
sub ecx, r8d
sub ecx, 0x57327aac
xor ecx, 0xcecc9b10
mov dword [rbp + 0x50], ecx
call fcn.14029e770
mov rdx, rax
mov rcx, r14
call fcn.14029e904
nop
and dword [rbp + 0x50], 0
xor edi, edi
mov esi, 0x3dff2bba
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 0x140225256
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0xc5cb1866
jmp 0x140225248
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, r13d
mov ecx, r10d
xor ecx, edx
mov r10d, r8d
imul r10d, ecx
add r9, 2
cmp r9, r11
jne 0x140225226
cmp r10d, edi
jne 0x14022536c
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 0x14022536c
mov r14d, dword [rbx + 0x18]
test r14d, r14d
je 0x14022536c
mov r13d, dword [rbx + 0x20]
dec r14d
lea rdx, [r14*4]
add rdx, r13
mov r11d, dword [rdx + r10]
add r11, r10
mov r15d, 0xc5cb1866
jmp 0x1402252c9
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 0x1402252a6
cmp r15d, esi
je 0x1402252e8
test r14d, r14d
jne 0x140225289
mov r13d, 0x4764996c
jmp 0x14022536c
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 0x140225374
lea rax, [rbx + rcx]
cmp r9, rax
jae 0x140225374
mov edi, 0xc5cb1866
mov esi, edi
mov r13d, 0x4764996c
mov al, byte [r9]
cmp al, 0x2e
je 0x140225351
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 r9
jmp 0x14022531b
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r13d
xor ecx, esi
mov esi, eax
imul esi, ecx
inc r9
mov al, byte [r9]
test al, al
jne 0x14022533c
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x1402251fa
mov rcx, qword [rbp + 0x58]
mov rbx, qword [rsp + 0xc0]
add rsp, 0x80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp r9