Function at 0x180085520
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov r15, qword [rsp + 0xb0]
mov r10, r8
mov r12, qword [rsp + 0x48]
mov eax, edx
mov ebx, dword [rsp + 0x98]
mov r13d, edx
mov rbp, qword [rsp + 0x48]
lea rdx, [0x180000000]
mov edi, dword [rsp + 0x98]
mov r8, rcx
mov r14, r9
nop word [rax + rax]
add eax, 7
cmp r13d, eax
jae case.0x1800855a6.177
lea eax, [r13 - 0xaf]
cmp eax, 8
ja case.0x1800855a6.180
mov ecx, dword [rdx + rax*4 + 0x85864]
add rcx, rdx
jmp rcx
mov eax, dword [rsp + 0x98]
inc r13d
mov qword [r10], r14
jmp 0x180085580
mov eax, dword [rsp + 0x98]
inc r13d
mov dword [r14], r15d
mov qword [r14 + 8], 0
mov qword [r14 + 0x10], 0
jmp 0x180085580
mov rax, qword [r14]
mov eax, dword [rax + 0x80]
test eax, eax
je 0x1800855ee
mov ecx, r12d
or ecx, ebp
dec eax
test eax, ecx
jne 0x180085640
mov esi, 0x76
mov dword [rsp + 0x48], esi
cmp esi, 0x3cd8
ja 0x180085640
cmp esi, 0x76
je 0x180085617
cmp esi, 0x1ee2
jne 0x180085765
xor eax, eax
jmp 0x180085849
mov ecx, dword [r15 + 4]
mov r8d, ebp
mov rdx, r12
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__write]
movsxd rdi, eax
cmp rdi, rbp
je 0x180085765
mov eax, 0xc1
jmp 0x1800856f7
test rbp, rbp
je 0x18008577a
mov esi, 0xed
nop
mov eax, esi
sub eax, 0xe9
je 0x180085748
sub eax, 1
je 0x180085740
sub eax, 1
je 0x1800856e1
sub eax, 1
je 0x1800856c5
cmp eax, 1
jne 0x18008574e
mov rcx, qword [r14]
movsxd r8, dword [rcx + 0x18]
cmp rbp, r8
jae 0x1800856a4
mov rdx, qword [r15 + 0xd8]
mov ecx, dword [r15 + 4]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__read]
mov rcx, qword [r14]
mov edi, eax
cmp eax, dword [rcx + 0x18]
jne 0x180085770
movsxd rdi, dword [rcx + 0x18]
mov rdx, r12
mov rcx, qword [r15 + 0xd8]
cmp rbp, rdi
cmovbe edi, ebp
movsxd r8, edi
call sub.VCRUNTIME140.dll_memcpy
jmp 0x18008574e
mov rax, qword [r14]
mov rdx, qword [r15 + 0xd8]
mov ecx, dword [r15 + 4]
mov r8d, dword [rax + 0x18]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__write]
mov edi, eax
jmp 0x18008574e
mov rax, qword [r14]
cmp edi, dword [rax + 0x18]
je 0x18008574e
mov eax, 0xc1
lea r13d, [rax - 0x11]
add eax, 0xc2
cmp eax, 0x245
jae 0x180085761
cmp eax, 0xc1
je 0x1800856e9
cmp eax, 0x183
jne 0x1800856f2
mov dword [rsp + 0x40], 0x7f2bb725
mov r10, qword [rsp + 0xa0]
lea rdx, [0x180000000]
mov r8, qword [rsp + 0x90]
mov r13d, 0xb1
mov eax, dword [rsp + 0x98]
inc r13d
jmp 0x180085580
movsxd rax, edi
sub rbp, rax
jmp 0x18008574e
movsxd rax, edi
add r12, rax
dec esi
cmp esi, 0xe8
ja 0x180085650
jmp 0x180085640
mov esi, dword [rsp + 0x48]
add esi, 0x1e6c
jmp 0x1800855f3
mov dword [rsp + 0x40], 0x7f2bb724
jmp 0x180085714
mov r10, qword [rsp + 0xa0]
lea rdx, [0x180000000]
mov r8, qword [rsp + 0x90]
xor ebx, ebx
mov eax, dword [rsp + 0x98]
inc r13d
jmp 0x180085580
mov rcx, qword [r14]
mov rax, qword [rcx + 0x28]
test rax, rax
je case.0x1800855a6.180
mov edx, dword [rsp + 0x40]
mov r9, r12
mov r8d, dword [r8]
mov dword [rsp + 0x30], edx
mov edx, dword [r10]
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rbp
call rax
mov r10, qword [rsp + 0xa0]
lea rdx, [0x180000000]
mov r8, qword [rsp + 0x90]
inc r13d
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x98]
jmp 0x180085580
mov edx, dword [r8]
xor edi, edi
mov r12, qword [rsp + 0xb8]
cmp edx, 1
jne 0x180085812
mov rax, qword [r14]
mov edx, dword [rax + 0x18]
jmp 0x180085821
test edx, edx
jns 0x18008581a
neg edx
jmp 0x180085821
mov rax, qword [r14]
imul edx, dword [rax + 0x18]
movsxd rbp, edx
lea rdx, [0x180000000]
add qword [r15 + 0xf0], rbp
mov eax, dword [rsp + 0x98]
inc r13d
jmp 0x180085580
mov eax, dword [rsp + 0x40]
jmp 0x180085849
mov eax, ebx
mov rbx, qword [rsp + 0xa8]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret