Function at 0x14004d920
Capabilities:
Get file size
Read file on windows

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x88
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov rsi, rdx
mov rbp, rcx
mov dword [rsp + 0x40], 0
mov rcx, qword [rdx]
cmp dword [rcx - 0x10], 0
jl 0x14004dc2b
lea rdx, str.chrome
call fcn.1400ce90c
test rax, rax
je 0x14004dc2b
mov rcx, qword [rsi]
sub rax, rcx
sar rax, 1
test eax, eax
jle 0x14004dc2b
mov eax, dword [0x1401c3d80]
imul eax, eax
and eax, 0x8000000f
jge 0x14004d99a
dec eax
or eax, 0xfffffff0
inc eax
cmp eax, 6
jne 0x14004d9d0
mov eax, 0x42
mov r9d, 0x20
nop word [rax + rax]
test r9d, r9d
je 0x14004d9c7
mov r8d, r9d
cdq
idiv r9d
mov r9d, edx
mov eax, r8d
test r8d, r8d
jne 0x14004d9b0
add eax, r9d
mov dword [0x1401c3d80], eax
mov edx, 0x5c
call fcn.1400d0438
mov rdi, rax
test rax, rax
je 0x14004dc2b
sub rdi, qword [rsi]
sar rdi, 1
test edi, edi
jle 0x14004dc2b
mov ecx, dword [0x1401c3d80]
imul ecx, ecx
mov eax, 0x30c30c31
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x15
sub ecx, edx
cmp ecx, 0x14
jne 0x14004da3c
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_OpenThread]
mov ecx, dword [0x1401c3d80]
mov edx, 7
test rax, rax
cmove ecx, edx
mov dword [0x1401c3d80], ecx
lea r8d, [rdi + 1]
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.14001a5c0
nop
lea r8, str.VisualElementsManifest.xml
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0xd8]
call fcn.14001a660
nop
mov rcx, qword [rsp + 0xd8]
mov edx, 1
sub edx, dword [rcx - 8]
mov eax, dword [rcx - 0xc]
or eax, edx
jge 0x14004da96
xor edx, edx
lea rcx, [rsp + 0xd8]
call fcn.1400023b0
mov rcx, qword [rsp + 0xd8]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
mov edx, 0x80000000
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rdi, rax
test rax, rax
je 0x14004dbf5
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov r15d, eax
lea ecx, [rax + 0xa]
call fcn.1400ce684
mov r14, rax
mov r9d, dword [0x1401c3d80]
mov r8d, r9d
imul r8d, r9d
imul r8d, r9d
mov eax, 0x66666667
imul r8d
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea eax, [rdx + rdx*4]
shl eax, 2
sub r8d, eax
cmp r8d, 2
jne 0x14004db22
dec r9d
mov dword [0x1401c3d80], r9d
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0xd0]
mov r8d, r15d
mov rdx, r14
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [rsp + 0xd0]
mov byte [rax + r14], 0
lea rdx, str.SplashScreen_Image
mov rcx, r14
call fcn.1400d1540
mov rdi, rax
test rax, rax
je 0x14004dbf5
mov edx, 0x5c
lea rcx, [rax + 0x14]
call fcn.1400d11c4
test rax, rax
je 0x14004dbf5
mov byte [rax], 0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
lea rdx, [rdi + 0x14]
lea rcx, [rsp + 0x60]
call fcn.140001370
nop
mov rdx, rax
mov rcx, rbp
call fcn.140020230
mov dword [rsp + 0x40], 1
mov rdx, qword [rsp + 0xd8]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14004dbd1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14004dbeb
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, rsi
call fcn.1400021b0
jmp 0x14004dc59
mov rdx, qword [rsp + 0xd8]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14004dc12
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14004dc2b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rdx, [0x140151480]
mov rcx, rbp
call fcn.140002110
mov dword [rsp + 0x40], 1
mov rdx, qword [rsi]
sub rdx, 0x18
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14004dc59
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, rbp
add rsp, 0x88
pop r15
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret