Function at 0x140183c00
Capabilities:
Get file attributes
Read file on windows

Disassembly:
mov byte [rsp + 0x18], r8b
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
mov eax, 0x1150
call fcn.1401d5c30
sub rsp, rax
mov qword [rsp + 0x1130], 0xfffffffffffffffe
mov rax, qword [0x1402a25c0]
xor rax, rsp
mov qword [rsp + 0x1140], rax
mov rax, qword [rsp + 0x1160]
cmp qword [rax + 8], 0
jne 0x140183c51
xor al, al
jmp 0x140184109
movzx eax, byte [rsp + 0x1170]
test eax, eax
jne 0x140183c82
lea rdx, [0x140240958]
mov rcx, qword [rsp + 0x1168]
call fcn.1400a9bac
cmp rax, qword [rsp + 0x1168]
jne 0x140183c82
xor al, al
jmp 0x140184109
mov dx, 0x3a
mov rcx, qword [rsp + 0x1168]
call fcn.1400ab0b0
test rax, rax
je 0x140183ca5
mov dword [rsp + 0x1138], 1
jmp 0x140183cb0
mov dword [rsp + 0x1138], 0
movzx eax, byte [rsp + 0x1138]
mov byte [rsp + 0x4f0], al
mov rdx, qword [rsp + 0x1168]
lea rcx, [rsp + 0x2e0]
call qword [sym.imp.KERNEL32.dll_lstrcpyW]
lea rdx, [rsp + 0x2e0]
mov rcx, qword [rsp + 0x1160]
call fcn.140182960
movzx edx, word [0x14023fcd4]
mov word [rsp + 0x90], dx
lea rdi, [rsp + 0x92]
xor eax, eax
mov ecx, 0x206
rep stosb byte [rdi], al
movzx eax, byte [rsp + 0x1170]
test eax, eax
je 0x140183d69
lea rax, [rsp + 0x720]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x520]
xor r8d, r8d
xor edx, edx
mov rcx, qword [rsp + 0x1168]
call fcn.1400ab94c
lea rdx, [rsp + 0x720]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x520]
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x90]
call fcn.1400ab9dc
jmp 0x140183e2f
movzx eax, byte [rsp + 0x4f0]
test eax, eax
je 0x140183ddf
mov rcx, qword [rsp + 0x1160]
add rcx, 0x10
call qword [sym.imp.KERNEL32.dll_lstrlenW]
movsxd r8, eax
mov rdx, qword [rsp + 0x1160]
add rdx, 0x10
mov rcx, qword [rsp + 0x1168]
call fcn.1400a938c
test eax, eax
je 0x140183dae
xor al, al
jmp 0x140184109
mov rcx, qword [rsp + 0x1160]
add rcx, 0x10
call qword [sym.imp.KERNEL32.dll_lstrlenW]
movsxd rcx, eax
mov rax, qword [rsp + 0x1168]
lea rdx, [rax + rcx*2]
lea rcx, [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_lstrcpyW]
jmp 0x140183e2f
lea rdx, [0x140240960]
mov rcx, qword [rsp + 0x1168]
call fcn.1400a9bac
cmp rax, qword [rsp + 0x1168]
jne 0x140183e19
mov rdx, qword [rsp + 0x1168]
add rdx, 4
lea rcx, [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_lstrcpyW]
jmp 0x140183e2f
mov rdx, qword [rsp + 0x1168]
lea rcx, [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_lstrcpyW]
mov dword [rsp + 0x514], 0
mov rcx, qword [rsp + 0x1168]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov dword [rsp + 0x518], eax
mov r8b, 1
lea rdx, [rsp + 0x2d0]
lea rcx, [rsp + 0x2e0]
call fcn.140182860
mov dword [rsp + 0x510], 0
movzx eax, word [rsp + 0x2d0]
mov dword [rsp + 0x50c], eax
movzx eax, word [rsp + 0x2d2]
sub eax, 1
mov dword [rsp + 0x508], eax
movzx eax, word [rsp + 0x2d6]
mov dword [rsp + 0x504], eax
movzx eax, word [rsp + 0x2d8]
mov dword [rsp + 0x500], eax
movzx eax, word [rsp + 0x2da]
mov dword [rsp + 0x4fc], eax
movzx eax, word [rsp + 0x2dc]
mov dword [rsp + 0x4f8], eax
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
mov edx, 0x80000000
lea rcx, [rsp + 0x2e0]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rsp + 0x2c8], rax
cmp qword [rsp + 0x2c8], 0xffffffffffffffff
jne 0x140183f1b
xor al, al
jmp 0x140184109
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x2a0]
call fcn.140183250
nop
mov rdx, qword [rsp + 0x1168]
lea rcx, [rsp + 0x60]
call fcn.140183250
nop
lea rcx, [rsp + 0x60]
call fcn.14000dc90
mov rdi, rax
lea rcx, [rsp + 0x2a0]
call fcn.14000dc90
mov dword [rsp + 0x48], 0xffffffff
mov dword [rsp + 0x40], 8
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
xor r9d, r9d
lea r8, [rsp + 0x4f8]
mov rdx, rax
mov rcx, qword [rsp + 0x1160]
mov rcx, qword [rcx + 8]
call fcn.14005ee30
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jne 0x14018409d
mov rax, qword [rsp + 0x1160]
mov ecx, dword [rax + 0x21c]
add ecx, 1
mov rax, qword [rsp + 0x1160]
mov dword [rax + 0x21c], ecx
mov dword [rsp + 0x1124], 0
mov dword [rsp + 0x1120], 0
cmp dword [rsp + 0x50], 0
jne 0x14018407a
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x1124]
mov r8d, 0x800
lea rdx, [rsp + 0x920]
mov rcx, qword [rsp + 0x2c8]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x14018407a
mov ecx, dword [rsp + 0x1124]
mov eax, dword [rsp + 0x1120]
add eax, ecx
mov dword [rsp + 0x1120], eax
cmp dword [rsp + 0x1124], 0
je 0x140184073
mov r8d, dword [rsp + 0x1124]
lea rdx, [rsp + 0x920]
mov rcx, qword [rsp + 0x1160]
mov rcx, qword [rcx + 8]
call fcn.14005f090
mov dword [rsp + 0x50], eax
jmp 0x140184075
jmp 0x14018407a
jmp 0x140183fef
mov rax, qword [rsp + 0x1160]
mov ecx, dword [rax + 0x224]
add ecx, dword [rsp + 0x1120]
mov rax, qword [rsp + 0x1160]
mov dword [rax + 0x224], ecx
mov rcx, qword [rsp + 0x1160]
mov rcx, qword [rcx + 8]
call fcn.14005fb50
mov rcx, qword [rsp + 0x2c8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [rsp + 0x50], 0
jne 0x1401840d0
mov dword [rsp + 0x113c], 1
jmp 0x1401840db
mov dword [rsp + 0x113c], 0
movzx eax, byte [rsp + 0x113c]
mov byte [rsp + 0x1128], al
lea rcx, [rsp + 0x60]
call fcn.14000e680
nop
lea rcx, [rsp + 0x2a0]
call fcn.14000e680
mov al, byte [rsp + 0x1128]
mov rcx, qword [rsp + 0x1140]
xor rcx, rsp
call fcn.1400a8040
add rsp, 0x1150
pop rdi
ret