Function at 0x18004acd0
Capabilities:
Read file on windows

Disassembly:
push rdi
sub rsp, 0x40
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0x68], rbx
mov rdi, rcx
mov edx, dword [rcx + 0x2c]
mov qword [rsp + 0x58], rdx
xor r9d, r9d
lea r8, [rsp + 0x58]
mov rcx, qword [rcx + 0x18]
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
test eax, eax
jne 0x18004ad0f
call fcn.1800030e0
jmp 0x18004afe8
mov ecx, 0xa290
call fcn.1800630a0
mov rbx, rax
mov qword [rsp + 0x60], rax
test rax, rax
jne 0x18004ad30
mov eax, 0x8007000e
jmp 0x18004afe8
xor edx, edx
mov r8d, 0xa290
mov rcx, rax
call fcn.1800644c0
mov dword [rsp + 0x50], 0
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x50]
mov r8d, 0xa290
mov rdx, rbx
mov rcx, qword [rdi + 0x18]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x18004ad83
call fcn.1800030e0
mov edi, eax
mov rcx, rbx
call fcn.1800626bc
mov eax, edi
jmp 0x18004afe8
lea r9, [0x180000000]
mov r8d, dword [rbx + 0x8001]
cmp r8d, dword [r9 + 0xdcde4]
jne 0x18004adae
mov r8b, byte [rbx + 0x8005]
cmp r8b, byte [r9 + 0xdcde8]
jne 0x18004adae
xor eax, eax
jmp 0x18004adb3
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x18004afde
mov edx, dword [rbx + 0x8001]
cmp edx, dword [r9 + 0xdcdec]
jne 0x18004addd
mov dl, byte [rbx + 0x8005]
cmp dl, byte [r9 + 0xdcdf0]
jne 0x18004addd
xor eax, eax
jmp 0x18004ade2
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x18004afde
mov r8d, dword [rbx + 0x9311]
cmp r8d, dword [r9 + 0xdcde4]
jne 0x18004ae0e
mov r8b, byte [rbx + 0x9315]
cmp r8b, byte [r9 + 0xdcde8]
jne 0x18004ae0e
xor eax, eax
jmp 0x18004ae13
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x18004afde
mov edx, dword [rbx + 0x9311]
cmp edx, dword [r9 + 0xdcdec]
jne 0x18004ae3d
mov dl, byte [rbx + 0x9315]
cmp dl, byte [r9 + 0xdcdf0]
jne 0x18004ae3d
xor eax, eax
jmp 0x18004ae42
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x18004afde
mov edx, dword [rbx + 0x9319]
cmp edx, dword [r9 + 0xdcde4]
jne 0x18004ae6c
mov dl, byte [rbx + 0x931d]
cmp dl, byte [r9 + 0xdcde8]
jne 0x18004ae6c
xor eax, eax
jmp 0x18004ae71
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x18004afde
mov edx, 0x9319
mov rcx, rbx
call fcn.18004ce40
test eax, eax
jne 0x18004afde
mov edx, dword [rbx + 0x9911]
cmp edx, dword [r9 + 0xdcde4]
jne 0x18004aeac
mov dl, byte [rbx + 0x9915]
cmp dl, byte [r9 + 0xdcde8]
je 0x18004aeb1
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x18004afde
mov edx, 0x9911
mov rcx, rbx
call fcn.18004ce40
test eax, eax
jne 0x18004afde
mov edx, dword [rbx + 0x9919]
cmp edx, dword [r9 + 0xdcde4]
jne 0x18004aeec
mov dl, byte [rbx + 0x991d]
cmp dl, byte [r9 + 0xdcde8]
je 0x18004aef1
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x18004afde
mov edx, 0x9919
mov rcx, rbx
call fcn.18004ce40
test eax, eax
jne 0x18004afde
mov edx, dword [rbx + 0x9209]
cmp edx, dword [r9 + 0xdcde4]
jne 0x18004af2c
mov dl, byte [rbx + 0x920d]
cmp dl, byte [r9 + 0xdcde8]
je 0x18004af31
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x18004afde
mov edx, 0x9209
mov rcx, rbx
call fcn.18004ce40
test eax, eax
jne 0x18004afde
mov edx, dword [rbx + 0x9201]
cmp edx, dword [r9 + 0xdcde4]
jne 0x18004af6c
mov dl, byte [rbx + 0x9205]
cmp dl, byte [r9 + 0xdcde8]
je 0x18004af71
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x18004afde
mov edx, 0x9201
mov rcx, rbx
call fcn.18004ce40
test eax, eax
jne 0x18004afde
cmp dword [rdi + 0x2c], eax
je 0x18004afa4
mov dword [rdi + 0x2c], eax
mov rcx, rdi
call fcn.18004acd0
mov edi, eax
mov rcx, rbx
call fcn.1800626bc
mov eax, edi
jmp 0x18004afe8
mov eax, dword [rdi + 0x30]
cmp eax, 1
jne 0x18004afbb
mov rcx, rbx
call fcn.1800626bc
mov eax, 0xe003200b
jmp 0x18004afe8
cmp eax, 2
jne 0x18004afcf
mov rcx, rbx
call fcn.1800626bc
mov eax, 0xe003200a
jmp 0x18004afe8
mov rcx, rbx
call fcn.1800626bc
mov eax, 0xe00e1001
jmp 0x18004afe8
mov rcx, rbx
call fcn.1800626bc
xor eax, eax
mov rbx, qword [rsp + 0x68]
add rsp, 0x40
pop rdi
ret