Function at 0x140102640
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, 0x9635e20e
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 0x1401026d1
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0xb6d4131a
jmp 0x1401026c3
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 0x1401026a1
cmp r10d, ebx
jne 0x1401027d1
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 0x1401027d1
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x1401027d1
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r10d, dword [rdx + r9]
add r10, r9
mov r14d, 0xb6d4131a
jmp 0x140102734
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 0x140102719
cmp r14d, edi
je 0x14010274c
test esi, esi
jne 0x140102704
jmp 0x1401027d1
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 0x1401027d9
lea rax, [rcx + r11]
cmp r8, rax
jae 0x1401027d9
mov ebx, 0xb6d4131a
mov edi, ebx
jmp 0x140102796
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 0x14010277c
jmp 0x1401027b6
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 0x14010279f
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140102675
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0x6e3898b1
mov eax, 0xd7a80006
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
xor eax, 0x6cfac399
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xe33ea18d
add eax, ecx
xor eax, 0xd7dac0bc
add eax, 0x52b12918
xor eax, 0x734586e0
lea edx, [rcx - 0x70a57b9b]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xc870baba
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x378f4545
add ecx, 0xc428c4
add ecx, edx
xor ecx, 0xac9c7622
mov dword [rbp + 0x48], ecx
movsxd rcx, ecx
call r8
mov rsi, rax
mov qword [rbp + 0x58], rax
and dword [rbp + 0x48], 0
movabs rax, 0xc658cd4395b2da96
mov r14, qword [0x14033e070]
mov r10, r14
imul r10, rax
not r10
movabs rax, 0x594611f7ec879275
mov r15, qword [0x14033e060]
mov rcx, r15
xor rcx, rax
and r10, rcx
ror r10, 7
shr r10, 8
mov r12, qword [0x14033e088]
movabs rax, 0x82c9f971751e3428
mov r9, r12
imul r9, rax
movabs rax, 0x447b11a0605ce3c0
add r9, rax
movabs rax, 0xbef5a3c7ffffffff
xor r9, rax
shr r9, 0x1f
not r9
movabs r8, 0xbb84ee5f9fa31c40
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, [0x14033e060]
movzx eax, r9b
movzx ecx, byte [rdx + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x67
and ecx, 0x8000003f
jge 0x140102928
dec ecx
or ecx, 0xffffffc0
inc ecx
mov rdx, r9
ror rdx, cl
not rdx
movabs rax, 0xab1722e0676bae04
mov rdi, rdx
imul rdi, rax
add r8, rdi
mov rbx, r9
imul rbx, r10
sub rbx, r8
movabs rax, 0xb553f6b5cc498951
xor rbx, rax
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol rbx, cl
mov rax, r8
sub rax, qword [0x14033e078]
xor rbx, rax
movabs rax, 0xfa7bb67615800f00
imul rdx, rax
movabs rax, 0x36de037b8361f000
add rdx, rax
xor rbx, rdx
movabs rax, 0xa6b9ee0805a24731
xor rbx, rax
mov r11, rbx
imul r11, qword [0x14033e080]
and r11, r12
xor r11, rax
ror r11, 0x31
imul r11, r8
not r10
imul r10, r9
movabs rax, 0x7cd8a7de6956c09a
imul r10, rax
imul r8, r15, 0xffffffffe925d544
mov rdx, qword [0x14033e068]
sub r8, rdx
mov al, r10b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1401029fb
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r8, cl
lea rcx, [rdi + r8]
movabs rax, 0x447b11a0605ce3c0
imul rcx, rax
movabs rax, 0x36de037b8361f000
add rcx, rax
movabs rax, 0x447b11a0605ce3bf
sub rax, rdi
imul rcx, rax
imul rcx, rbx
movabs rax, 0xf5ed7e879eae808b
xor r9, rax
not r9
xor rcx, r9
xor r11, r10
imul r11, r14
sub rcx, r11
call fcn.1400d84f0
mov qword [0x14034c9d8], rax
movdqa xmm0, xmmword [0x140316d30]
movdqu xmmword [rbp - 0x20], xmm0
mov dword [rbp - 0x10], 0xd4ff77e4
mov dword [rbp - 0xc], 0x3c265d0c
mov dword [rbp - 8], 0xe9afb4e0
mov byte [rbp - 4], 0xa6
xor r14d, r14d
mov r15, qword [0x14033e040]
xor edx, edx
mov rax, r14
movabs rcx, 0x13cce94adbce3bb0
div rcx
add dl, 0x37
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 + r14 - 0x20]
sub r10b, bl
sub r10b, 2
mov eax, 4
sub al, bl
xor r10b, al
sub r10b, byte [0x14033e050]
sub r10b, byte [0x14033e058]
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, byte [0x14033e048]
sub r10b, dil
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 [0x14033e038]
sub r10b, al
mov al, dil
xor al, 0x40
sub r10b, al
mov al, byte [0x14033e030]
xor al, dil
add r10b, al
movsx eax, dil
movsx ecx, r11b
imul ecx, eax
xor cl, r10b
mov byte [rbp + r14 - 0x20], cl
inc r14
cmp r14, 0x1d
jb 0x140102a8b
lea rax, [rbp - 0x20]
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], 0x1d
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0xe335ff57
mov eax, 0xf4a7acc3
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
xor eax, 0xd47b1
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x51a89bf2
add eax, ecx
xor eax, 0x5d853594
add eax, 0x2d5dcb10
xor eax, 0x6da1efdc
lea edx, [rcx + 0x2708cdbb]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xca1dbca2
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x35e2435d
add ecx, 0xafb112ae
add ecx, edx
xor ecx, 0x462fecda
mov dword [rbp + 0x48], ecx
movsxd rdx, ecx
lea r8, [rbp - 0x20]
mov rcx, rsi
call fcn.140052e70
nop
and dword [rbp + 0x48], 0
xor eax, eax
and dword [rbp + 0x50], eax
mov dword [rbp + 0x50], 0x9dccbdd1
mov eax, 0x4b31ed14
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
xor eax, 0xdcadcd8b
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xe2619d9d
add eax, ecx
xor eax, 0x35cb363e
add eax, 0x35e7a80e
xor eax, 0x1036c47b
lea edx, [rcx - 0x7ad78ea3]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xcaa90d48
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x3556f2b7
add ecx, 0x3b4f00d4
add ecx, edx
xor ecx, 0xb968e78
mov dword [rbp + 0x50], ecx
call fcn.14029e440
mov rdx, rax
mov rcx, rsi
call fcn.14029e5d4
nop
and dword [rbp + 0x50], 0
xor edi, edi
mov esi, 0x838422d2
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 0x140102d75
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x5216788
jmp 0x140102d67
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 0x140102d45
cmp r10d, edi
jne 0x140102e84
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 0x140102e84
mov r14d, dword [rbx + 0x18]
test r14d, r14d
je 0x140102e84
mov r13d, dword [rbx + 0x20]
dec r14d
lea rdx, [r10 + r14*4]
mov r11d, dword [rdx + r13]
add r11, r10
mov r15d, 0x5216788
jmp 0x140102de1
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 0x140102dbe
cmp r15d, esi
je 0x140102e00
test r14d, r14d
jne 0x140102da8
mov r13d, 0x4764996c
jmp 0x140102e84
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 0x140102e8c
lea rax, [rcx + rbx]
cmp r9, rax
jae 0x140102e8c
mov edi, 0x5216788
mov esi, edi
mov r13d, 0x4764996c
mov al, byte [r9]
cmp al, 0x2e
je 0x140102e69
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 0x140102e33
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 0x140102e54
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140102d19
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