Function at 0x140050110
Capabilities:
Read file on windows

Disassembly:
push rbp
push rbx
lea rbp, [rsp - 0x1e8]
sub rsp, 0x2e8
xor eax, eax
lea r9, [rbp + 0x200]
mov rbx, rcx
mov dword [rbp + 0x200], eax
mov rcx, qword [rcx + 0x70]
lea rdx, [rbp - 0x40]
mov r8d, 0x20a
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp dword [rbp - 0x40], 0x56464654
je 0x140050165
mov eax, 0x8004020c
add rsp, 0x2e8
pop rbx
pop rbp
ret
cmp dword [rbp + 0xba], 3
jne 0x1400503e5
mov ecx, dword [rbp + 0xca]
sub ecx, 1
je 0x1400501ab
sub ecx, 1
je 0x1400501a2
sub ecx, 1
je 0x140050199
cmp ecx, 1
jne 0x1400503e5
lea r8, [0x14012f1e8]
jmp 0x1400501b2
lea r8, [0x14012f1d8]
jmp 0x1400501b2
lea r8, [0x14012f1c8]
jmp 0x1400501b2
lea r8, [0x14012f1f8]
mov edx, 2
mov qword [rsp + 0x2e0], r12
lea r12, [rbx + 0x58]
mov rcx, r12
lea r9d, [rdx - 3]
call fcn.140025fb0
mov ecx, dword [rbp + 0xbe]
xor edx, edx
mov eax, dword [rbp + 0x1c6]
mov dword [rbx + 0x20], ecx
imul ecx, dword [rbp + 0xca]
mov qword [rbx + 0x290], 0x20a
mov byte [rbx + 0x2c1], 0
div ecx
mov ecx, eax
mov eax, dword [rbp + 0xac]
mov qword [rbx + 0x18], rcx
mov rcx, rbx
mov dword [rbx + 0x28], eax
call fcn.140023ca0
cmp byte [rbp - 0x38], 0
je 0x14005022e
mov r9d, 0x40
lea r8, [rbp - 0x38]
mov rcx, r12
lea edx, [r9 - 0x3d]
call fcn.140025fb0
cmp byte [rbp + 8], 0
je 0x14005024a
mov r9d, pe_nt_image_headers64
lea r8, [rbp + 8]
mov rcx, r12
lea edx, [r9 - 0x71]
call fcn.140025fb0
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x88]
call qword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
test eax, eax
je 0x140050381
movzx ebx, word [rsp + 0x78]
mov eax, 0xcccccccd
movzx r10d, word [rsp + 0x76]
movzx r8d, word [rsp + 0x70]
mov qword [rsp + 0x308], rsi
movzx esi, word [rsp + 0x7a]
mov qword [rsp + 0x310], rdi
mov qword [rsp + 0x2d8], r14
mov qword [rsp + 0x2d0], r15
movzx r15d, word [rsp + 0x7c]
mul r15d
mov r14d, edx
shr r14d, 3
lea eax, [r14 + r14*4]
add eax, eax
sub r15d, eax
mov eax, 0xcccccccd
mul esi
mov dword [rsp + 0x60], r15d
mov edi, edx
mov dword [rsp + 0x58], r14d
shr edi, 3
lea eax, [rdi + rdi*4]
add eax, eax
sub esi, eax
mov eax, 0xcccccccd
mul ebx
mov dword [rsp + 0x50], esi
mov eax, 0xcccccccd
mov r11d, edx
mov dword [rsp + 0x48], edi
mul r10d
shr r11d, 3
mov eax, 0xcccccccd
mov r9d, edx
shr r9d, 3
lea ecx, [r11 + r11*4]
add ecx, ecx
sub ebx, ecx
lea ecx, [r9 + r9*4]
add ecx, ecx
mov dword [rsp + 0x40], ebx
sub r10d, ecx
mov dword [rsp + 0x38], r11d
movzx ecx, word [rsp + 0x72]
mul ecx
mov dword [rsp + 0x30], r10d
shr edx, 3
mov dword [rsp + 0x28], r9d
mov r9d, edx
lea eax, [rdx + rdx*4]
add eax, eax
lea rdx, str._d__d_d__d_d___d_d:_d_d:_d_d
sub ecx, eax
mov dword [rsp + 0x20], ecx
lea rcx, [rbp - 0x80]
call fcn.1400100f0
mov r9d, 0xffffffff
lea r8, [rbp - 0x80]
mov rcx, r12
lea edx, [r9 + 0xf]
call fcn.140025fb0
mov r15, qword [rsp + 0x2d0]
mov r14, qword [rsp + 0x2d8]
mov rdi, qword [rsp + 0x310]
mov rsi, qword [rsp + 0x308]
mov r8d, dword [rbp + 0xb0]
lea rcx, [rbp + 0xb4]
mov edx, dword [rbp + 0xac]
call fcn.140050ef0
xorps xmm3, xmm3
ucomisd xmm0, xmm3
je 0x1400503d1
movaps xmm2, xmm0
lea rdx, str._.12lf
movq r8, xmm0
lea rcx, [rbp - 0x80]
call fcn.1400100f0
mov r9d, 0xffffffff
lea r8, [rbp - 0x80]
mov rcx, r12
lea edx, [r9 + 0x1a]
call fcn.140025fb0
mov r12, qword [rsp + 0x2e0]
xor eax, eax
add rsp, 0x2e8
pop rbx
pop rbp
ret
mov eax, 0x80040208
add rsp, 0x2e8
pop rbx
pop rbp
ret