Function at 0x14005ef80
Capabilities:
Get file size

Disassembly:
sub rsp, 0x178
mov qword [rsp + 0x78], r9
mov qword [rsp + 0x80], r8
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x90], rcx
mov rax, qword [rsp + 0x1a8]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x1a0]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
mov qword [rsp + 0x120], r8
mov qword [rsp + 0x118], rdx
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x108], rax
test rax, rax
je 0x14005f02d
jmp 0x14005f008
mov rax, qword [rsp + 0x78]
sub rax, 1
je 0x14005f14e
jmp 0x14005f019
mov rax, qword [rsp + 0x78]
sub rax, 2
je 0x14005f37d
jmp 0x14005f4f4
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x80]
mov rax, qword [rsp + 0x120]
mov r8, rax
add r8, 0x120
mov qword [rsp + 0x70], r8
mov dword [rsp + 0x6c], edx
mov qword [rsp + 0x100], rcx
mov rax, qword [rax + 0x120]
and rax, 0xffffffffffffffc0
mov qword [rsp + 0x170], rax
movabs rcx, 0x9e3779b97f4a7c15
add rax, rcx
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x168]
shr rcx, 0x1e
xor rax, rcx
movabs rcx, 0xbf58476d1ce4e5b9
imul rax, rcx
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x168]
shr rcx, 0x1b
xor rax, rcx
movabs rcx, 0x94d049bb133111eb
imul rax, rcx
mov qword [rsp + 0x168], rax
mov rdx, qword [rsp + 0x168]
mov rax, qword [rsp + 0x168]
shr rax, 0x1f
xor rdx, rax
lea rcx, [rsp + 0x100]
call fcn.14008ba00
mov r8d, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x70]
mov rdx, rax
mov rax, qword [rsp + 0x98]
mov dword [rsp + 0xfc], r8d
lea r8, [rsp + 0x100]
lea r9, [rsp + 0xfc]
lea r10, str.C:_Users_Jshaw_Odin_odin_http_nbio_nbio_windows.odin
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x28], rax
call fcn.14008baf0
jmp 0x14005f4f4
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x80]
mov rax, qword [rsp + 0x120]
mov r8, rax
add r8, 0x120
mov qword [rsp + 0x58], r8
mov dword [rsp + 0x54], edx
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xe8], rcx
mov rax, qword [rax + 0x120]
and rax, 0xffffffffffffffc0
mov qword [rsp + 0x160], rax
movabs rcx, 0x9e3779b97f4a7c15
add rax, rcx
mov qword [rsp + 0x158], rax
mov rax, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x158]
shr rcx, 0x1e
xor rax, rcx
movabs rcx, 0xbf58476d1ce4e5b9
imul rax, rcx
mov qword [rsp + 0x158], rax
mov rax, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x158]
shr rcx, 0x1b
xor rax, rcx
movabs rcx, 0x94d049bb133111eb
imul rax, rcx
mov qword [rsp + 0x158], rax
mov rdx, qword [rsp + 0x158]
mov rax, qword [rsp + 0x158]
shr rax, 0x1f
xor rdx, rax
lea rcx, [rsp + 0xe8]
call fcn.14008ba00
mov rcx, qword [rsp + 0x58]
mov rdx, rax
lea r8, [rsp + 0xe8]
call fcn.14008bcb0
mov qword [rsp + 0x60], rax
cmp rax, 0
setne al
and al, 1
mov byte [rsp + 0xf4], al
test al, 1
je 0x14005f26f
mov rax, qword [rsp + 0x60]
mov eax, dword [rax]
mov dword [rsp + 0xf0], eax
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x88]
mov edx, dword [rsp + 0x54]
add edx, dword [rsp + 0xf0]
mov dword [rsp + 0x50], edx
mov qword [rsp + 0xe0], rcx
mov rax, qword [rax]
and rax, 0xffffffffffffffc0
mov qword [rsp + 0x150], rax
movabs rcx, 0x9e3779b97f4a7c15
add rax, rcx
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x148]
mov rcx, qword [rsp + 0x148]
shr rcx, 0x1e
xor rax, rcx
movabs rcx, 0xbf58476d1ce4e5b9
imul rax, rcx
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x148]
mov rcx, qword [rsp + 0x148]
shr rcx, 0x1b
xor rax, rcx
movabs rcx, 0x94d049bb133111eb
imul rax, rcx
mov qword [rsp + 0x148], rax
mov rdx, qword [rsp + 0x148]
mov rax, qword [rsp + 0x148]
shr rax, 0x1f
xor rdx, rax
lea rcx, [rsp + 0xe0]
call fcn.14008ba00
mov r8d, dword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
mov rdx, rax
mov rax, qword [rsp + 0x98]
mov dword [rsp + 0xdc], r8d
lea r8, [rsp + 0xe0]
lea r9, [rsp + 0xdc]
lea r10, str.C:_Users_Jshaw_Odin_odin_http_nbio_nbio_windows.odin
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x28], rax
call fcn.14008baf0
jmp 0x14005f4f4
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 0xd0], 0
lea rdx, [rsp + 0xd0]
call sub.KERNEL32.dll_GetFileSizeEx
mov dword [rsp + 0xcc], eax
cmp dword [rsp + 0xcc], 0
jne 0x14005f3cd
call sub.KERNEL32.dll_GetLastError
mov rcx, qword [rsp + 0xa0]
mov eax, eax
mov qword [rcx], 0
add rsp, 0x178
ret
mov rcx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x80]
mov rax, qword [rsp + 0x120]
mov rdx, rax
add rdx, 0x120
mov qword [rsp + 0x48], rdx
mov rdx, qword [rsp + 0xd0]
add edx, r8d
mov dword [rsp + 0x44], edx
mov qword [rsp + 0xc0], rcx
mov rax, qword [rax + 0x120]
and rax, 0xffffffffffffffc0
mov qword [rsp + 0x140], rax
movabs rcx, 0x9e3779b97f4a7c15
add rax, rcx
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x138]
shr rcx, 0x1e
xor rax, rcx
movabs rcx, 0xbf58476d1ce4e5b9
imul rax, rcx
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x138]
shr rcx, 0x1b
xor rax, rcx
movabs rcx, 0x94d049bb133111eb
imul rax, rcx
mov qword [rsp + 0x138], rax
mov rdx, qword [rsp + 0x138]
mov rax, qword [rsp + 0x138]
shr rax, 0x1f
xor rdx, rax
lea rcx, [rsp + 0xc0]
call fcn.14008ba00
mov r8d, dword [rsp + 0x44]
mov rcx, qword [rsp + 0x48]
mov rdx, rax
mov rax, qword [rsp + 0x98]
mov dword [rsp + 0xbc], r8d
lea r8, [rsp + 0xc0]
lea r9, [rsp + 0xbc]
lea r10, str.C:_Users_Jshaw_Odin_odin_http_nbio_nbio_windows.odin
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x28], rax
call fcn.14008baf0
mov rcx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x120]
mov rdx, rax
add rdx, 0x120
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0xa8], rcx
mov rax, qword [rax + 0x120]
and rax, 0xffffffffffffffc0
mov qword [rsp + 0x130], rax
movabs rcx, 0x9e3779b97f4a7c15
add rax, rcx
mov qword [rsp + 0x128], rax
mov rax, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x128]
shr rcx, 0x1e
xor rax, rcx
movabs rcx, 0xbf58476d1ce4e5b9
imul rax, rcx
mov qword [rsp + 0x128], rax
mov rax, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x128]
shr rcx, 0x1b
xor rax, rcx
movabs rcx, 0x94d049bb133111eb
imul rax, rcx
mov qword [rsp + 0x128], rax
mov rdx, qword [rsp + 0x128]
mov rax, qword [rsp + 0x128]
shr rax, 0x1f
xor rdx, rax
lea rcx, [rsp + 0xa8]
call fcn.14008ba00
mov rcx, qword [rsp + 0x30]
mov rdx, rax
lea r8, [rsp + 0xa8]
call fcn.14008bcb0
mov qword [rsp + 0x38], rax
cmp rax, 0
setne al
and al, 1
mov byte [rsp + 0xb4], al
test al, 1
je 0x14005f609
mov rax, qword [rsp + 0x38]
mov eax, dword [rax]
mov dword [rsp + 0xb0], eax
mov rax, qword [rsp + 0xa0]
mov ecx, dword [rsp + 0xb0]
mov qword [rax], rcx
xor eax, eax
add rsp, 0x178
ret