Function at 0x10008de14
Capabilities:
Get file size
Read file on windows
Write file on windows

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x278
mov rax, qword [0x10010f190]
xor rax, rsp
mov qword [rsp + 0x260], rax
mov r13, qword [rsp + 0x2e8]
mov r15, qword [rsp + 0x2e0]
xor r12d, r12d
or rdi, 0xffffffffffffffff
mov r14d, r9d
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x48], r13
mov rsi, rdx
mov rbp, r12
mov dword [rsp + 0x3c], r12d
cmp rcx, r12
jne 0x10008de78
mov rbp, rdx
xor esi, esi
jmp 0x10008df0c
mov r8, rcx
lea rcx, [rsp + 0x50]
mov edx, reloc.certcli.dll_Ordinal_260
mov word [rsp + 0x50], r12w
call fcn.100038b1c
mov ebx, eax
cmp eax, r12d
je 0x10008de9e
mov edx, 0x10d9013b
jmp 0x10008deb9
lea rcx, [rsp + 0x50]
mov edx, reloc.certcli.dll_Ordinal_260
call fcn.10008cfac
mov ebx, eax
cmp eax, r12d
je 0x10008deca
mov edx, 0x10dc013b
mov r8d, eax
xor r9d, r9d
xor ecx, ecx
call fcn.1000b51b8
xor esi, esi
jmp 0x10008def6
lea rcx, [rsp + 0x50]
mov r8, rsi
mov edx, reloc.certcli.dll_Ordinal_260
call fcn.100038a50
xor esi, esi
mov ebx, eax
cmp eax, esi
je 0x10008def6
xor r9d, r9d
mov r8d, eax
mov edx, 0x10df013b
xor ecx, ecx
call fcn.1000b51b8
cmp ebx, esi
je 0x10008df07
mov r8d, ebx
mov edx, 0x1108013b
jmp 0x10008e0f1
lea rbp, [rsp + 0x50]
mov ebx, 1
mov rcx, rbp
mov dl, bl
call fcn.10008dd3c
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x10008df3a
call sub.KERNEL32.dll_GetLastError
mov ecx, eax
call fcn.1000b7bec
mov edx, 0x1111013b
jmp 0x10008e0ec
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r12d, sil
mov rcx, rdi
cmp eax, 0xb7
cmove r12d, ebx
xor edx, edx
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x10008df75
call sub.KERNEL32.dll_GetLastError
mov ecx, eax
call fcn.1000b7bec
mov edx, 0x111c013b
jmp 0x10008e0ec
cmp ebx, r14d
jne 0x10008e055
mov rdx, rbx
xor ecx, ecx
mov r13b, sil
mov dword [rsp + 0x38], esi
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
mov rsi, rax
test rax, rax
jne 0x10008dfb4
mov ebx, 0x8007000e
xor r9d, r9d
mov edx, 0x1129013b
mov r8d, ebx
xor ecx, ecx
call fcn.1000b51b8
jmp 0x10008e176
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x38]
mov r8d, ebx
mov rdx, rax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x10008dff4
cmp ebx, dword [rsp + 0x38]
jne 0x10008dff4
mov r8, rbx
mov rbx, qword [rsp + 0x30]
mov rdx, rsi
mov rcx, rbx
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x10008e01b
mov r13b, 1
jmp 0x10008e01b
call sub.KERNEL32.dll_GetLastError
mov ecx, eax
call fcn.1000b7bec
test eax, eax
je 0x10008e016
xor r9d, r9d
mov r8d, eax
mov edx, 0x113c013b
xor ecx, ecx
call fcn.1000b51b8
mov rbx, qword [rsp + 0x30]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LocalFree]
xor esi, esi
cmp r13b, sil
jne 0x10008e13d
cmp dword [0x10011bd00], esi
jne 0x10008e069
mov edx, 0x1148013b
mov eax, 0x800700b7
xor r9d, r9d
xor ecx, ecx
mov r8d, eax
mov ebx, eax
call fcn.1000b51b8
jmp 0x10008e148
cmp r12b, sil
je 0x10008e070
cmp dword [0x10011bd00], esi
jne 0x10008e070
mov edx, 0x114e013b
jmp 0x10008e03c
mov r13, qword [rsp + 0x48]
jmp 0x10008e075
mov rbx, qword [rsp + 0x30]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp eax, 0xffffffff
jne 0x10008e09e
call sub.KERNEL32.dll_GetLastError
mov ecx, eax
call fcn.1000b7bec
mov edx, 0x1158013b
jmp 0x10008e0ec
lea r9, [rsp + 0x3c]
mov r8d, r14d
mov rdx, rbx
mov rcx, rdi
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
cmp eax, esi
jne 0x10008e0ce
call sub.KERNEL32.dll_GetLastError
mov ecx, eax
call fcn.1000b7bec
mov edx, 0x1163013b
jmp 0x10008e0ec
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetEndOfFile]
cmp eax, esi
jne 0x10008e0fd
call sub.KERNEL32.dll_GetLastError
mov ecx, eax
call fcn.1000b7bec
mov edx, 0x1169013b
mov ebx, eax
mov r8d, eax
xor r9d, r9d
xor ecx, ecx
call fcn.1000b51b8
jmp 0x10008e13f
cmp dword [0x10011bd04], esi
je 0x10008e12f
mov al, r12b
neg al
sbb ecx, ecx
and ecx, 0x189
add ecx, 0x97d
call fcn.1000ba420
lea rcx, [0x1000184c0]
mov r8, rbp
mov rdx, rax
call fcn.1000b99b0
cmp r12b, sil
je 0x10008e13a
inc dword [r13]
jmp 0x10008e13d
inc dword [r15]
mov ebx, esi
mov eax, 0x800700b7
cmp ebx, eax
jne 0x10008e172
mov ecx, 0xb07
call fcn.1000ba420
lea r8, [0x10000d834]
mov rdx, rbp
mov rcx, rax
call fcn.1000b99b0
lea rcx, [0x10000c564]
call fcn.1000b99b0
jmp 0x10008e185
cmp ebx, esi
je 0x10008e185
mov r9, rbp
mov r8d, ebx
xor edx, edx
xor ecx, ecx
call fcn.1000ba5ac
cmp rdi, 0xffffffffffffffff
je 0x10008e194
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, ebx
mov rcx, qword [rsp + 0x260]
xor rcx, rsp
call fcn.1000ef870
add rsp, 0x278
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret