Function at 0x14002bf70
Capabilities:
Get file size
Parse pe header

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push r12
push r14
push r15
mov eax, 0x1b60
call fcn.140030960
sub rsp, rax
mov r15d, r9d
mov rdi, r8
mov rsi, rdx
mov r14, rcx
xor bl, bl
mov byte [rsp + 0x40], bl
xor edx, edx
mov r8d, 0x820
lea rcx, [rsp + 0x2e0]
call fcn.140038450
nop
mov r9d, 0x81e
lea r8, [rsp + 0x2e0]
mov rdx, rdi
mov rcx, rsi
call sub.PSAPI.DLL_GetModuleFileNameExW
test eax, eax
je 0x14002c2dc
xor r12d, r12d
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 0x40]
lea r8, [rsp + 0x50]
mov rdx, rdi
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x14002c2e6
mov eax, 0x5a4d
cmp ax, word [rsp + 0x50]
je 0x14002c014
xor al, al
jmp 0x14002c2e6
movsxd rdx, dword [rsp + 0x8c]
add rdx, rdi
mov qword [rsp + 0x20], r12
mov r9d, 0x108
lea r8, [rsp + 0x1d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x14002c2e6
cmp dword [rsp + 0x1d0], 0x4550
je 0x14002c057
xor al, al
jmp 0x14002c2e6
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 1]
lea rcx, [rsp + 0x2e0]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
mov byte [rsp + 0x90], r12b
mov edi, r12d
cmp rax, 0xffffffffffffffff
je 0x14002c0de
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
lea r9, [rsp + 0x48]
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetFileTime]
test eax, eax
je 0x14002c0d5
mov r8, qword [rsp + 0x48]
mov edx, 0x64
lea rcx, [rsp + 0x90]
call fcn.14002ccf0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r8d, r15d
lea rdx, str.Module__d_r_n
mov rcx, r14
call fcn.140030480
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], 0x40f
lea rax, [rsp + 0xb00]
mov qword [rsp + 0x20], rax
or r9d, 0xffffffff
lea r8, [rsp + 0x2e0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
lea r8, [rsp + 0xb00]
lea rdx, str._s_r_n
mov rcx, r14
call fcn.140030480
mov r9d, dword [rsp + 0x220]
mov r8, qword [rsp + 0x200]
lea rdx, str.Image_Base:_0x_08x__Image_Size:_0x_08x_r_n
mov rcx, r14
call fcn.140030480
lea r9, [rsp + 0x90]
mov r8d, edi
lea rdx, str.File_Size:____10d__File_Time:___s_r_n
mov rcx, r14
call fcn.140030480
lea rdx, str.Version:_r_n
mov rcx, r14
call fcn.140030480
lea rdx, [rsp + 0x2e0]
lea rcx, [rsp + 0xf10]
call fcn.140007cd0
mov r8d, 0xc7
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0xf10]
call fcn.140008c10
lea r8, [rsp + 0x100]
lea rdx, str.___Company:_____s_r_n
mov rcx, r14
call fcn.140030480
mov r8d, 0xc7
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0xf10]
call fcn.140009700
lea r8, [rsp + 0x100]
lea rdx, str.___Product:_____s_r_n
mov rcx, r14
call fcn.140030480
mov r8d, 0xc7
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0xf10]
call fcn.140009140
lea r8, [rsp + 0x100]
lea rdx, str.___FileDesc:____s_r_n
mov rcx, r14
call fcn.140030480
lea rcx, [rsp + 0xf10]
call fcn.140009220
mov r8, qword [rax]
mov qword [rsp + 0x48], r8
mov rdx, r8
shr rdx, 0x30
mov rax, r8
shr rax, 0x20
movzx ecx, ax
mov rax, r8
shr rax, 0x10
movzx r9d, ax
movzx r8d, r8w
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], ecx
lea rdx, str.___FileVer:_____d._d._d._d_r_n
mov rcx, r14
call fcn.140030480
lea rcx, [rsp + 0xf10]
call fcn.140009740
mov r8, qword [rax]
mov qword [rsp + 0x48], r8
mov rdx, r8
shr rdx, 0x30
mov rax, r8
shr rax, 0x20
movzx ecx, ax
mov rax, r8
shr rax, 0x10
movzx r9d, ax
movzx r8d, r8w
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], ecx
lea rdx, str.___ProdVer:_____d._d._d._d_r_n
mov rcx, r14
call fcn.140030480
lea rdx, [0x140056770]
mov rcx, r14
call fcn.140030480
mov bl, 1
mov byte [rsp + 0x40], bl
jmp 0x14002c2e3
movzx eax, bl
lea r11, [rsp + 0x1b60]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop r12
ret