Function at 0x140151c70
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x38]
sub rsp, 0x138
movzx eax, byte [rdx + 5]
mov r8, rdx
movzx r11d, byte [rdx + 6]
movzx ecx, byte [rdx + 0xc]
movzx r10d, byte [rdx + 0x13]
movzx r9d, byte [rdx + 0x19]
movzx r13d, byte [r8 + 9]
shl rcx, 8
shl r10, 8
shl r11, 8
or r11, rax
shl r9, 8
movzx eax, byte [rdx + 4]
shl r13, 8
shl r11, 8
or r11, rax
movzx eax, byte [rdx + 0xb]
or rcx, rax
shl r11, 6
movzx eax, byte [rdx + 0xa]
shl rcx, 8
or rcx, rax
mov qword [rbp + 0x90], r11
movzx eax, byte [rdx + 0x12]
lea r12, [r11 + 0x1000000]
or r10, rax
shr r12, 0x19
movzx eax, byte [rdx + 0x11]
lea r14, [rcx*8]
shl r10, 8
movzx ecx, byte [rdx + 0x1f]
or r10, rax
movzx eax, byte [rdx + 0x10]
shl rcx, 8
shl r10, 8
or r10, rax
mov qword [rbp + 0x98], r14
movzx eax, byte [rdx + 0x18]
add r14, 0x1000000
or r9, rax
shr r14, 0x19
movzx eax, byte [rdx + 0x17]
shl r9, 8
or r9, rax
mov qword [rbp - 0x58], r10
movzx eax, byte [rdx + 0x1e]
or rcx, rax
shl r9, 5
movzx eax, byte [rdx + 0x1d]
movzx edx, byte [rdx + 3]
shl rcx, 8
or rcx, rax
shl rdx, 8
movzx eax, byte [r8 + 2]
or rdx, rax
mov qword [rbp - 0x60], r9
movzx eax, byte [r8 + 1]
lea rcx, [rcx*4]
shl rdx, 8
or rdx, rax
mov qword [rbp + 0x28], rcx
movzx eax, byte [r8]
add rcx, 0x1000000
shr rcx, 0x19
shl rdx, 8
or rdx, rax
mov qword [rbp - 0x68], rcx
imul rax, rcx, 0x13
movzx ecx, byte [r8 + 0xf]
add rdx, rax
shl rcx, 8
movzx eax, byte [r8 + 8]
or r13, rax
mov qword [rbp + 0x88], rdx
movzx eax, byte [r8 + 7]
shl r13, 8
or r13, rax
movzx eax, byte [r8 + 0xe]
shl r13, 5
add r13, r12
or rcx, rax
movzx eax, byte [r8 + 0xd]
lea rsi, [r10 + 0x1000000]
movzx r15d, byte [r8 + 0x16]
lea r11, [r9 + 0x1000000]
movzx edi, byte [r8 + 0x1c]
shl r15, 8
shl rdi, 8
shl rcx, 8
or rcx, rax
shr rsi, 0x19
movzx eax, byte [r8 + 0x15]
or r15, rax
shr r11, 0x19
movzx eax, byte [r8 + 0x14]
lea rbx, [r14 + rcx*4]
shl r15, 8
or r15, rax
shl r12, 0x19
movzx eax, byte [r8 + 0x1b]
lea rcx, [rdx + 0x2000000]
or rdi, rax
shr rcx, 0x1a
movzx eax, byte [r8 + 0x1a]
lea rdx, [r13 + 0x2000000]
shl rdi, 8
lea r8, [rbx + 0x2000000]
or rdi, rax
shr rdx, 0x1a
mov rax, rcx
shr r8, 0x1a
shl rax, 0x1a
sub dword [rbp + 0x88], eax
mov rax, qword [rbp + 0x88]
mov dword [rbp], eax
mov rax, qword [rbp + 0x90]
sub eax, r12d
shl r15, 7
add eax, ecx
shl rdi, 4
mov rcx, qword [rbp + 0x28]
add r15, rsi
mov dword [rbp + 4], eax
add rdi, r11
shl r14, 0x19
mov rax, rdx
shl rax, 0x1a
sub r13d, eax
shl rsi, 0x19
mov rax, qword [rbp + 0x98]
lea r9, [r15 + 0x2000000]
sub eax, r14d
shr r9, 0x1a
add eax, edx
shl r11, 0x19
mov dword [rbp + 0xc], eax
lea r10, [rdi + 0x2000000]
shr r10, 0x1a
mov rax, r8
shl rax, 0x1a
sub ebx, eax
mov dword [rbp + 8], r13d
mov rax, qword [rbp - 0x58]
sub eax, esi
mov dword [rbp + 0x10], ebx
add eax, r8d
mov dword [rbp + 0x14], eax
mov rax, r9
shl rax, 0x1a
sub r15d, eax
mov rax, qword [rbp - 0x60]
sub eax, r11d
mov dword [rbp + 0x18], r15d
add eax, r9d
mov dword [rbp + 0x1c], eax
mov rax, r10
shl rax, 0x1a
sub edi, eax
mov rax, qword [rbp - 0x68]
shl rax, 0x19
sub ecx, eax
mov dword [rbp + 0x20], edi
add ecx, r10d
lea rdx, [rbp]
mov dword [rbp + 0x24], ecx
lea rcx, [rsp + 0x48]
call fcn.140150060
mov eax, dword [rsp + 0x60]
lea rdx, [rbp - 0x28]
mov esi, dword [rsp + 0x48]
lea rcx, [rsp + 0x20]
mov edi, dword [rsp + 0x4c]
inc esi
mov ebx, dword [rsp + 0x50]
mov r15d, dword [rsp + 0x54]
mov r12d, dword [rsp + 0x58]
mov r13d, dword [rsp + 0x5c]
mov dword [rbp - 0x10], eax
mov eax, dword [rsp + 0x64]
mov dword [rbp - 0xc], eax
mov eax, dword [rsp + 0x68]
mov dword [rbp - 8], eax
mov eax, dword [rsp + 0x6c]
mov dword [rbp - 4], eax
mov dword [rbp - 0x28], esi
mov dword [rbp - 0x24], edi
mov dword [rbp - 0x20], ebx
mov dword [rbp - 0x1c], r15d
mov dword [rbp - 0x18], r12d
mov dword [rbp - 0x14], r13d
call fcn.14014faf0
lea r8, [rsp + 0x48]
lea rdx, [0x1401e5f88]
lea rcx, [rsp + 0x70]
call fcn.14014f130
mov eax, dword [rsp + 0x70]
lea r8, [rsp + 0x20]
add dword [rsp + 0x20], eax
lea rdx, [rbp - 0x28]
mov eax, dword [rsp + 0x74]
add dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x78]
add dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x7c]
add dword [rsp + 0x2c], eax
mov eax, dword [rbp - 0x80]
add dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x7c]
add dword [rsp + 0x34], eax
mov eax, dword [rbp - 0x78]
add dword [rsp + 0x38], eax
mov eax, dword [rbp - 0x74]
add dword [rsp + 0x3c], eax
mov eax, dword [rbp - 0x70]
add dword [rsp + 0x40], eax
mov eax, dword [rbp - 0x6c]
mov r14, qword [rbp + 0x80]
add dword [rsp + 0x44], eax
mov rcx, r14
call fcn.14014eaf0
mov rdx, r14
lea rcx, [rsp + 0x70]
call fcn.14014faf0
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x20]
call fcn.14014f130
mov eax, esi
sub eax, dword [rsp + 0x20]
mov dword [rsp + 0x70], eax
mov eax, edi
sub eax, dword [rsp + 0x24]
mov dword [rsp + 0x74], eax
mov eax, ebx
sub eax, dword [rsp + 0x28]
mov dword [rsp + 0x78], eax
mov eax, r15d
sub eax, dword [rsp + 0x2c]
mov dword [rsp + 0x7c], eax
mov eax, r12d
sub eax, dword [rsp + 0x30]
mov dword [rbp - 0x80], eax
mov eax, r13d
sub eax, dword [rsp + 0x34]
lea rcx, [rsp + 0x70]
mov ebx, dword [0x1401ed7d4]
mov r15d, dword [0x1401ed7b0]
mov r12d, dword [0x1401ed7b4]
mov r13d, dword [0x1401ed7b8]
mov dword [rbp - 0x7c], eax
mov eax, dword [rsp + 0x60]
sub eax, dword [rsp + 0x38]
mov dword [rbp - 0x78], eax
mov eax, dword [rsp + 0x64]
sub eax, dword [rsp + 0x3c]
mov dword [rbp - 0x74], eax
mov eax, dword [rsp + 0x68]
sub eax, dword [rsp + 0x40]
mov dword [rbp - 0x70], eax
mov eax, dword [rsp + 0x6c]
sub eax, dword [rsp + 0x44]
mov dword [rbp - 0x6c], eax
mov eax, dword [0x1401ed7bc]
mov dword [rbp + 0x80], eax
mov dword [rbp - 0x44], eax
mov eax, dword [0x1401ed7c0]
mov dword [rbp + 0x88], eax
mov dword [rbp - 0x40], eax
mov eax, dword [0x1401ed7c4]
mov dword [rbp + 0x90], eax
mov dword [rbp - 0x3c], eax
mov eax, dword [0x1401ed7c8]
mov dword [rbp + 0x98], eax
mov dword [rbp - 0x38], eax
mov eax, dword [0x1401ed7cc]
mov dword [rbp - 0x68], eax
mov dword [rbp - 0x34], eax
mov eax, dword [0x1401ed7d0]
mov dword [rbp - 0x60], eax
mov dword [rbp - 0x30], eax
mov dword [rbp - 0x50], r15d
mov dword [rbp - 0x4c], r12d
mov dword [rbp - 0x48], r13d
mov dword [rbp - 0x58], ebx
mov dword [rbp - 0x2c], ebx
call fcn.14014f050
test eax, eax
je 0x140152268
mov eax, dword [rsp + 0x20]
lea rcx, [rsp + 0x70]
mov ebx, dword [rsp + 0x50]
add eax, esi
mov dword [rsp + 0x70], eax
mov eax, dword [rsp + 0x24]
add eax, edi
mov dword [rsp + 0x74], eax
mov eax, dword [rsp + 0x28]
add eax, ebx
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x54]
add eax, dword [rsp + 0x2c]
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0x58]
add eax, dword [rsp + 0x30]
mov dword [rbp - 0x80], eax
mov eax, dword [rsp + 0x5c]
add eax, dword [rsp + 0x34]
mov dword [rbp - 0x7c], eax
mov eax, dword [rsp + 0x60]
add eax, dword [rsp + 0x38]
mov dword [rbp - 0x78], eax
mov eax, dword [rsp + 0x64]
add eax, dword [rsp + 0x3c]
mov dword [rbp - 0x74], eax
mov eax, dword [rsp + 0x68]
add eax, dword [rsp + 0x40]
mov dword [rbp - 0x70], eax
mov eax, dword [rsp + 0x6c]
add eax, dword [rsp + 0x44]
mov dword [rbp - 0x6c], eax
call fcn.14014f050
test eax, eax
je 0x14015225f
lea r8, [0x1401e5f10]
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x20]
call fcn.14014f130
mov eax, esi
lea rcx, [rsp + 0x70]
sub eax, dword [rsp + 0x20]
mov dword [rsp + 0x70], eax
mov eax, edi
sub eax, dword [rsp + 0x24]
mov dword [rsp + 0x74], eax
mov eax, ebx
sub eax, dword [rsp + 0x28]
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x54]
sub eax, dword [rsp + 0x2c]
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0x58]
sub eax, dword [rsp + 0x30]
mov dword [rbp - 0x80], eax
mov eax, dword [rsp + 0x5c]
sub eax, dword [rsp + 0x34]
mov dword [rbp - 0x7c], eax
mov eax, dword [rsp + 0x60]
sub eax, dword [rsp + 0x38]
mov dword [rbp - 0x78], eax
mov eax, dword [rsp + 0x64]
sub eax, dword [rsp + 0x3c]
mov dword [rbp - 0x74], eax
mov eax, dword [rsp + 0x68]
sub eax, dword [rsp + 0x40]
mov dword [rbp - 0x70], eax
mov eax, dword [rsp + 0x6c]
sub eax, dword [rsp + 0x44]
mov dword [rbp - 0x6c], eax
call fcn.14014f050
test eax, eax
lea rcx, [0x1401ed850]
lea r8, [0x1401ed828]
mov rdx, r14
cmove r8, rcx
mov rcx, r14
call fcn.14014f130
mov bl, 1
jmp 0x1401522df
lea r8, [0x1401ed7d8]
jmp 0x14015226f
lea r8, [0x1401ed800]
mov rdx, r14
mov rcx, r14
call fcn.14014f130
lea r8, [rbp]
mov rdx, r14
mov rcx, r14
call fcn.14014f130
lea r8, [rsp + 0x48]
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x50]
call fcn.14014f130
mov eax, dword [rbp - 0x2c]
xor bl, bl
mov r13d, dword [rbp - 0x48]
mov r12d, dword [rbp - 0x4c]
mov r15d, dword [rbp - 0x50]
mov dword [rbp - 0x58], eax
mov eax, dword [rbp - 0x30]
mov dword [rbp - 0x60], eax
mov eax, dword [rbp - 0x34]
mov dword [rbp - 0x68], eax
mov eax, dword [rbp - 0x38]
mov dword [rbp + 0x98], eax
mov eax, dword [rbp - 0x3c]
mov dword [rbp + 0x90], eax
mov eax, dword [rbp - 0x40]
mov dword [rbp + 0x88], eax
mov eax, dword [rbp - 0x44]
mov dword [rbp + 0x80], eax
mov rdx, r14
lea rcx, [rsp + 0x20]
call fcn.1401505d0
movzx eax, byte [rsp + 0x20]
and al, 1
cmp al, bl
je 0x140152364
mov esi, dword [r14 + 4]
mov edi, dword [r14 + 8]
neg esi
mov ebx, dword [r14 + 0xc]
neg edi
mov r11d, dword [r14 + 0x10]
neg ebx
mov r10d, dword [r14 + 0x14]
neg r11d
mov r9d, dword [r14 + 0x18]
neg r10d
mov r8d, dword [r14 + 0x1c]
neg r9d
mov edx, dword [r14 + 0x20]
neg r8d
mov ecx, dword [r14 + 0x24]
neg edx
mov eax, dword [r14]
neg ecx
neg eax
mov dword [r14], eax
mov dword [r14 + 4], esi
mov esi, dword [rbp - 0x28]
mov dword [r14 + 8], edi
mov edi, dword [rsp + 0x4c]
mov dword [r14 + 0xc], ebx
mov dword [r14 + 0x10], r11d
mov dword [r14 + 0x14], r10d
mov dword [r14 + 0x18], r9d
mov dword [r14 + 0x1c], r8d
mov dword [r14 + 0x20], edx
mov dword [r14 + 0x24], ecx
mov ecx, dword [rbp + 0x80]
lea r8, [r14 + 0x50]
mov edx, dword [rbp + 0x88]
lea eax, [r15 + rsi]
mov r9d, dword [rbp + 0x90]
sub r15d, esi
mov r10d, dword [rbp + 0x98]
mov r11d, dword [rbp - 0x68]
mov ebx, dword [rbp - 0x60]
mov dword [r8], eax
lea eax, [r12 + rdi]
mov edi, dword [rbp - 0x58]
sub r12d, dword [rsp + 0x4c]
mov dword [r8 + 4], eax
mov eax, dword [rsp + 0x50]
add eax, r13d
mov dword [r14 + 0x28], r15d
sub r13d, dword [rsp + 0x50]
mov dword [r8 + 8], eax
mov eax, dword [rsp + 0x54]
add eax, ecx
mov dword [r14 + 0x2c], r12d
sub ecx, dword [rsp + 0x54]
mov dword [r8 + 0xc], eax
mov eax, dword [rsp + 0x58]
add eax, edx
mov dword [r14 + 0x34], ecx
sub edx, dword [rsp + 0x58]
mov rcx, r14
mov dword [r8 + 0x10], eax
mov eax, dword [rsp + 0x5c]
add eax, r9d
mov dword [r14 + 0x38], edx
sub r9d, dword [rsp + 0x5c]
mov rdx, r14
mov dword [r8 + 0x14], eax
mov eax, dword [rsp + 0x60]
add eax, r10d
mov dword [r14 + 0x30], r13d
sub r10d, dword [rsp + 0x60]
mov dword [r8 + 0x18], eax
mov eax, dword [rsp + 0x64]
add eax, r11d
mov dword [r14 + 0x3c], r9d
sub r11d, dword [rsp + 0x64]
mov dword [r8 + 0x1c], eax
mov eax, dword [rsp + 0x68]
add eax, ebx
mov dword [r14 + 0x40], r10d
sub ebx, dword [rsp + 0x68]
mov dword [r8 + 0x20], eax
mov eax, dword [rsp + 0x6c]
add eax, edi
mov dword [r14 + 0x44], r11d
sub edi, dword [rsp + 0x6c]
mov dword [r14 + 0x4c], edi
mov dword [r8 + 0x24], eax
mov dword [r14 + 0x48], ebx
add rsp, 0x138
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
jmp fcn.14014f130