Function at 0x414270
Capabilities:
Read file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
movaps xmmword [rsp + 0xb0], xmm6
mov rbx, r8
mov r14, rdx
mov qword [rsp + 0x28], rcx
mov rbp, qword [r8]
mov r15, qword [r8 + 0x10]
xor edi, edi
xorps xmm6, xmm6
lea rsi, [0x004145fc]
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x48], r15
jmp 0x4142d0
mov rax, r13
shr rax, 0x20
cmp eax, 0x23
jne 0x41450b
cmp r15, rbp
je 0x4143b0
mov rax, qword [rbx + 8]
add rax, r15
mov rcx, rbp
sub rcx, r15
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], rdi
mov rcx, r14
xor edx, edx
lea r8, [rsp + 0x50]
call fcn.0045aba0
test rax, rax
je 0x4143cd
mov r13, rax
mov r12d, r13d
and r12d, 3
movsxd rax, dword [rsi + r12*4]
add rax, rsi
jmp rax
movzx eax, byte [r13 + 0x10]
cmp al, 0x23
je 0x414364
jmp 0x41450b
cmp byte [r13 + 0xf], 0x23
je 0x41436e
jmp 0x41450b
mov rcx, r13
shr rcx, 0x20
call fcn.0043bdb0
cmp al, 0x23
jne 0x41450b
cmp r12d, 1
jne 0x4142d0
mov r12, r13
dec r12
mov rcx, qword [r13 - 1]
mov rax, qword [r13 + 7]
call qword [rax]
mov rax, qword [r13 + 7]
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x414398
mov r8, qword [rax + 0x10]
mov rcx, qword [r12]
call fcn.004018d0
mov edx, 0x18
mov r8d, 8
mov rcx, r12
call fcn.004018d0
jmp 0x4142d0
mov r8d, 0x20
mov rcx, rbx
mov rdx, rbp
call fcn.00468a10
mov rbp, qword [rbx]
mov r15, qword [rbx + 0x10]
jmp 0x4142d9
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x414574
mov rax, qword [rsp + 0x68]
mov rdi, rax
sub rdi, rcx
jb 0x4145a1
mov rdx, qword [rsp + 0x58]
cmp rax, rdx
ja 0x4145b2
cmp rcx, rdx
ja 0x4145c3
add r15, rcx
mov qword [rbx + 0x10], r15
cmp rbp, r15
jne 0x4142d0
cmp rbp, qword [rsp + 0x30]
jne 0x4142d0
movaps xmmword [rsp + 0x80], xmm6
movaps xmmword [rsp + 0x70], xmm6
mov r13, qword [r14]
lea r15, [rsp + 0x38]
lea rbp, [0x0045ae30]
jmp 0x414458
call sub.KERNEL32.dll_GetLastError
mov r12d, eax
mov ecx, r12d
call fcn.0043bdb0
cmp al, 0x23
jne 0x414537
mov dword [rsp + 0x38], 0
movaps xmmword [rsp + 0x90], xmm6
mov qword [rsp + 0xa0], 0
mov qword [rsp + 0xa8], r15
mov qword [rsp + 0x20], rbp
mov rcx, r13
lea rdx, [rsp + 0x70]
mov r8d, 0x20
lea r9, [rsp + 0x90]
call sub.KERNEL32.dll_ReadFileEx
test eax, eax
je 0x414440
mov ecx, 0xffffffff
mov edx, 1
call sub.KERNEL32.dll_SleepEx
cmp dword [rsp + 0x38], 0
je 0x4144a0
mov r12d, dword [rsp + 0x3c]
test r12d, r12d
jne 0x414448
mov r12d, dword [rsp + 0x40]
test r12, r12
je 0x41453f
cmp r12d, 0x21
jae 0x41458b
mov rcx, rbx
mov rdx, qword [rsp + 0x30]
mov r8, r12
call fcn.00468a10
mov rbp, qword [rbx]
mov r15, qword [rbx + 0x10]
mov rcx, qword [rbx + 8]
add rcx, r15
lea rdx, [rsp + 0x70]
mov r8, r12
call sub.msvcrt.dll_memcpy
add r15, r12
mov qword [rbx + 0x10], r15
jmp 0x4142d0
mov rax, qword [rsp + 0x28]
mov qword [rax + 8], r13
mov qword [rax], 1
movaps xmm6, xmmword [rsp + 0xb0]
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movzx eax, al
cmp eax, 0xb
jne 0x414559
mov rcx, qword [rsp + 0x30]
sub rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x28]
mov qword [rax + 8], rcx
xor ecx, ecx
mov qword [rax], rcx
jmp 0x41451b
shl r12, 0x20
or r12, 2
mov rax, qword [rsp + 0x28]
mov qword [rax + 8], r12
mov ecx, 1
mov qword [rax], rcx
jmp 0x41451b
sub r15, qword [rsp + 0x48]
mov rax, qword [rsp + 0x28]
mov qword [rax + 8], r15
mov qword [rax], 0
jmp 0x41451b
lea r8, [0x004c3c30]
mov edx, 0x20
mov rcx, r12
call fcn.004b9370
ud2
lea r8, [0x004c3c00]
mov rdx, rax
call fcn.004b9400
ud2
lea r8, [0x004c3c00]
mov rcx, rax
call fcn.004b9370
ud2
lea r8, [0x004c3c18]
call fcn.004b9370
ud2