Function at 0x140225130
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, 0x50
xor ebx, ebx
mov edi, 0xf1346e8e
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 0x1402251bc
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0xe12ad152
jmp 0x1402251ae
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 0x140225191
cmp r9d, ebx
jne 0x1402252b8
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov r11d, ecx
add r11, r10
shr rcx, 0x20
cmp r11, r10
je 0x1402252b8
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x1402252b8
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov r14d, 0xe12ad152
jmp 0x14022521f
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 [r9]
inc r9
test dl, dl
jne 0x140225204
cmp r14d, edi
je 0x140225237
test esi, esi
jne 0x1402251ef
jmp 0x1402252b8
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov eax, dword [r11 + 0x24]
add rax, r10
movzx eax, word [rax + rsi*2]
mov r9d, dword [rdx + rax*4]
add r9, r10
cmp r9, r11
jbe 0x1402252c0
lea rax, [rcx + r11]
cmp r9, rax
jae 0x1402252c0
mov ebx, 0xe12ad152
mov edi, ebx
jmp 0x14022527f
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 r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x140225267
jmp 0x14022529d
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
mov al, byte [r9]
test al, al
jne 0x140225288
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140225165
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0x85439289
mov eax, 0x4c02df49
sub eax, dword [0x14035f058]
sub eax, dword [0x14035f050]
xor eax, 0xef73774f
sub eax, dword [0x14035f048]
mov rdx, qword [0x14035f040]
lea ecx, [rdx - 0x35c281f3]
add ecx, eax
xor ecx, 0x8203c994
sub ecx, 0x46b989d1
xor ecx, 0x5a90c77e
mov r8d, dword [0x14035f030]
xor r8d, 0x7c854fe9
sub r8d, ecx
mov eax, dword [0x14035f038]
xor eax, 0x837ab016
sub r8d, eax
sub r8d, edx
sub r8d, 0x6e6b68fe
xor r8d, 0xaa6f0e06
mov dword [rbp + 0x48], r8d
movsxd rcx, r8d
call r9
mov r15, rax
mov qword [rbp + 0x58], rax
and dword [rbp + 0x48], 0
movabs rax, 0x301e99d5642adb86
mov r14, qword [0x14035f070]
mov r10, r14
imul r10, rax
not r10
movabs rax, 0xc3dc81f965129f3d
mov r12, qword [0x14035f060]
mov rcx, r12
xor rcx, rax
and r10, rcx
ror r10, 0x3b
shr r10, 8
mov rsi, qword [0x14035f068]
movabs rax, 0x86786b54fba68ea8
mov r9, rsi
imul r9, rax
movabs r8, 0xb63151ede7bd7c4
sub r9, r8
movabs rax, 0x6fc9e48080000000
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + 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, r9b
movzx ecx, byte [rdx + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xa7
and ecx, 0x8000003f
jge 0x14022540c
dec ecx
or ecx, 0xffffffc0
inc ecx
mov rdx, r9
ror rdx, cl
not rdx
movabs rax, 0xfa9e7e7b978192e4
mov rdi, rdx
imul rdi, rax
add r8, rdi
mov rbx, r9
imul rbx, r10
sub rbx, r8
movabs rax, 0xb554f4eb29e2e0a5
xor rbx, rax
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol rbx, cl
mov rax, r8
sub rax, qword [0x14035f078]
xor rbx, rax
movabs rax, 0x134149c6e2e20d70
imul rdx, rax
movabs r13, 0xea03fef03cd31f0
add rdx, r13
xor rbx, rdx
movabs rax, 0x3c237e06c29ee139
xor rbx, rax
mov r11, rbx
imul r11, qword [0x14035f080]
and r11, qword [0x14035f078]
xor r11, rax
ror r11, 0x39
imul r11, r8
not r10
imul r10, r9
movabs rax, 0x83275821829b4f5a
imul r10, rax
imul rdx, r12, 0xffffffffa78c7e04
sub rdx, rsi
mov al, r10b
not al
movzx ecx, al
movzx eax, sil
xor ecx, eax
and ecx, 0x8000003f
jge 0x1402254dd
dec ecx
or ecx, 0xffffffc0
inc ecx
ror rdx, cl
lea rcx, [rdi + rdx]
movabs rax, 0xf49ceae12184283c
imul rcx, rax
add rcx, r13
movabs rax, 0xf49ceae12184283b
sub rax, rdi
imul rcx, rax
imul rcx, rbx
movabs rax, 0xa12817875630f4b
xor r9, rax
not r9
xor rcx, r9
xor r11, r10
imul r11, r14
sub rcx, r11
call fcn.1401c7268
mov qword [0x14036d9d0], rax
movdqa xmm0, xmmword [0x140338340]
movdqu xmmword [rbp - 0x20], xmm0
mov dword [rbp - 0x10], 0x4cff92bb
mov dword [rbp - 0xc], 0xfe666484
mov dword [rbp - 8], 0x4a664d4d
mov byte [rbp - 4], 0x80
xor r12d, r12d
mov r13, qword [0x14035f040]
xor edx, edx
mov rax, r12
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 + r12 - 0x20]
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, byte [0x14035f048]
sub dil, r8b
sub dil, r14b
sub dil, 0x50
add dil, sil
add dil, r13b
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, r13b
not dil
mov al, bl
xor al, byte [0x14035f038]
sub dil, al
or r11b, r14b
sub dil, r11b
mov al, byte [0x14035f030]
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 cl, dil
mov byte [rbp + r12 - 0x20], cl
inc r12
cmp r12, 0x1d
jb 0x140225563
lea rax, [rbp - 0x20]
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], 0x1d
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0x2635e3bf
mov eax, 0xf583c7f0
sub eax, dword [0x14035f058]
sub eax, dword [0x14035f050]
xor eax, 0x805ccc3f
sub eax, dword [0x14035f048]
mov rdx, qword [0x14035f040]
lea ecx, [rdx + 0x2212e343]
add ecx, eax
xor ecx, 0x1111b6c1
sub ecx, 0x22b48a13
xor ecx, 0x6262b198
mov r8d, dword [0x14035f030]
xor r8d, 0x1c49e2f1
sub r8d, ecx
mov eax, dword [0x14035f038]
xor eax, 0xe3b61d0e
sub r8d, eax
sub r8d, edx
add r8d, 0x53ae3bc0
xor r8d, 0xf515b62e
mov dword [rbp + 0x48], r8d
movsxd rdx, r8d
lea r8, [rbp - 0x20]
mov rcx, r15
call fcn.140053908
nop
and dword [rbp + 0x48], 0
xor eax, eax
and dword [rbp + 0x50], eax
mov dword [rbp + 0x50], 0xf39f16de
mov eax, 0xb979e87d
sub eax, dword [0x14035f058]
sub eax, dword [0x14035f050]
xor eax, 0x4db56a21
sub eax, dword [0x14035f048]
mov r8, qword [0x14035f040]
lea edx, [r8 - 0x531ea50f]
add edx, eax
xor edx, 0xfc1b3d1a
sub edx, 0x6dc480bb
xor edx, 0xf6e5f629
mov ecx, dword [0x14035f030]
xor ecx, 0xfc1b3d1b
sub ecx, edx
mov eax, dword [0x14035f038]
xor eax, 0x3e4c2e4
sub ecx, eax
sub ecx, r8d
add ecx, 0x18293448
xor ecx, 0xe99ce20c
mov dword [rbp + 0x50], ecx
call fcn.1402ae5b0
mov rdx, rax
mov rcx, r15
call fcn.1402ae744
nop
and dword [rbp + 0x50], 0
xor edi, edi
mov esi, 0x806b919a
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 0x14022585d
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x5c4397be
jmp 0x14022584f
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 0x140225829
cmp r10d, edi
jne 0x140225966
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 0x140225966
mov r14d, dword [rbx + 0x18]
test r14d, r14d
je 0x140225966
mov r13d, dword [rbx + 0x20]
dec r14d
lea rdx, [r10 + r14*4]
mov r11d, dword [rdx + r13]
add r11, r10
mov r15d, 0x5c4397be
jmp 0x1402258c9
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 0x1402258a6
cmp r15d, esi
je 0x1402258e2
test r14d, r14d
jne 0x140225890
jmp 0x140225966
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 0x14022596e
lea rax, [rcx + rbx]
cmp r9, rax
jae 0x14022596e
mov edi, 0x5c4397be
mov esi, edi
jmp 0x14022592b
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 0x140225911
jmp 0x14022594b
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 0x140225934
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x1402257fd
mov rcx, qword [rbp + 0x58]
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp r9