Function at 0x1800036b0
Capabilities:
Read file on windows
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rcx
sub rsp, 0x138
mov qword [rsp + 0xb0], 0xfffffffffffffffe
mov rax, qword [rsp + 0x140]
movzx eax, byte [rax + 0x140]
test eax, eax
jne 0x1800038e8
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x34], 0
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x34]
mov r8d, 4
lea rdx, [rsp + 0x38]
mov rax, qword [rsp + 0x140]
mov rcx, qword [rax + 8]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x180003725
cmp dword [rsp + 0x34], 4
je 0x180003738
mov rax, qword [rsp + 0x140]
mov byte [rax + 0x10], 0
xor al, al
jmp 0x180003ad3
mov eax, dword [rsp + 0x38]
mov ecx, eax
call fcn.1800cdf44
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0
jne 0x180003763
mov rax, qword [rsp + 0x140]
mov byte [rax + 0x10], 0
xor al, al
jmp 0x180003ad3
mov dword [rsp + 0x34], 0
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x34]
mov r8d, dword [rsp + 0x38]
mov rdx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x140]
mov rcx, qword [rax + 8]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x1800037a3
mov eax, dword [rsp + 0x38]
cmp dword [rsp + 0x34], eax
je 0x1800037c0
mov rax, qword [rsp + 0x140]
mov byte [rax + 0x10], 0
mov rcx, qword [rsp + 0x48]
call fcn.1800cdf3c
xor al, al
jmp 0x180003ad3
lea rcx, [rsp + 0xe0]
call fcn.1800056b0
nop
lea rcx, [rsp + 0xb8]
call fcn.1800056b0
nop
mov r8d, dword [rsp + 0x38]
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0xe0]
call fcn.1800057e0
mov rcx, qword [rsp + 0x48]
call fcn.1800cdf3c
mov rax, qword [rsp + 0x140]
add rax, 0x30
lea r9, [rsp + 0xb8]
mov r8b, 1
lea rdx, [rsp + 0xe0]
mov rcx, rax
call fcn.180004cb0
movzx eax, al
test eax, eax
jne 0x180003861
mov rax, qword [rsp + 0x140]
mov byte [rax + 0x10], 0
mov byte [rsp + 0x30], 0
lea rcx, [rsp + 0xb8]
call fcn.180005700
nop
lea rcx, [rsp + 0xe0]
call fcn.180005700
movzx eax, byte [rsp + 0x30]
jmp 0x180003ad3
lea rcx, [rsp + 0x108]
call fcn.1800056b0
nop
lea rcx, [rsp + 0xb8]
call fcn.180005870
mov r8d, 0x20
mov rdx, rax
lea rcx, [rsp + 0x108]
call fcn.1800057e0
mov rax, qword [rsp + 0x140]
add rax, 0xb0
lea rdx, [rsp + 0x108]
mov rcx, rax
call fcn.180005680
mov rax, qword [rsp + 0x140]
mov byte [rax + 0x140], 1
lea rcx, [rsp + 0x108]
call fcn.180005700
nop
lea rcx, [rsp + 0xb8]
call fcn.180005700
nop
lea rcx, [rsp + 0xe0]
call fcn.180005700
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x40]
mov r8d, 4
lea rdx, [rsp + 0x3c]
mov rax, qword [rsp + 0x140]
mov rcx, qword [rax + 8]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x180003921
mov eax, dword [rsp + 0x40]
cmp rax, 4
je 0x180003928
xor al, al
jmp 0x180003ad3
mov eax, dword [rsp + 0x3c]
mov ecx, eax
call fcn.1800cdf44
mov qword [rsp + 0x50], rax
cmp qword [rsp + 0x50], 0
jne 0x180003947
xor al, al
jmp 0x180003ad3
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x40]
mov r8d, dword [rsp + 0x3c]
mov rdx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x140]
mov rcx, qword [rax + 8]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x18000397f
mov eax, dword [rsp + 0x3c]
cmp dword [rsp + 0x40], eax
je 0x180003990
mov rcx, qword [rsp + 0x50]
call fcn.1800cdf3c
xor al, al
jmp 0x180003ad3
lea rcx, [rsp + 0x88]
call fcn.1800056b0
nop
lea rcx, [rsp + 0x60]
call fcn.1800056b0
nop
mov r8d, dword [rsp + 0x3c]
mov rdx, qword [rsp + 0x50]
lea rcx, [rsp + 0x88]
call fcn.1800057e0
mov rcx, qword [rsp + 0x50]
call fcn.1800cdf3c
mov rax, qword [rsp + 0x140]
add rax, 0xb0
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x88]
mov rcx, rax
call fcn.180005170
movzx eax, al
test eax, eax
jne 0x180003a1b
mov byte [rsp + 0x31], 0
lea rcx, [rsp + 0x60]
call fcn.180005700
nop
lea rcx, [rsp + 0x88]
call fcn.180005700
movzx eax, byte [rsp + 0x31]
jmp 0x180003ad3
lea rcx, [rsp + 0x60]
call fcn.1800058a0
mov rcx, qword [rsp + 0x140]
mov dword [rcx + 0x20], eax
mov rax, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x140]
mov ecx, dword [rcx + 0x28]
cmp dword [rax + 0x20], ecx
jbe 0x180003a6c
mov byte [rsp + 0x32], 0
lea rcx, [rsp + 0x60]
call fcn.180005700
nop
lea rcx, [rsp + 0x88]
call fcn.180005700
movzx eax, byte [rsp + 0x32]
jmp 0x180003ad3
mov rax, qword [rsp + 0x140]
mov eax, dword [rax + 0x20]
mov qword [rsp + 0x58], rax
lea rcx, [rsp + 0x60]
call fcn.180005870
mov rcx, qword [rsp + 0x58]
mov r8, rcx
mov rdx, rax
mov rax, qword [rsp + 0x140]
mov rcx, qword [rax + 0x18]
call fcn.1800caa00
mov rax, qword [rsp + 0x140]
mov dword [rax + 0x24], 0
mov byte [rsp + 0x33], 1
lea rcx, [rsp + 0x60]
call fcn.180005700
nop
lea rcx, [rsp + 0x88]
call fcn.180005700
movzx eax, byte [rsp + 0x33]
add rsp, 0x138
ret