Function at 0x18003c6a0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
imul eax, r9d, 0x906
mov r13d, r9d
mov rdi, r8
mov r15, rdx
mov r14, rcx
mov esi, r9d
mov dword [rsp + 0x34], eax
cmp r9d, eax
ja 0x18003c9ff
mov r12, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x38]
nop dword [rax]
cmp esi, 0x62d0
ja 0x18003c94d
je 0x18003c9ff
cmp esi, 0x114
ja 0x18003c7dd
je 0x18003c747
cmp esi, 0x33
je 0x18003c73e
cmp esi, 0x51
je 0x18003c733
cmp esi, 0xd5
jne 0x18003ca31
mov qword [r15 + 8], 0
jmp 0x18003ca31
mov eax, dword [rdi]
mov dword [rsp + 0x30], eax
jmp 0x18003ca31
mov rbp, qword [rdi + 0x70]
jmp 0x18003ca31
mov rax, qword [r14]
cmp qword [rdi + 8], rax
jae 0x18003ca31
mov ebx, 0x36
nop dword [rax]
cmp ebx, 0x36
je 0x18003c78c
cmp ebx, 0xa20
jne 0x18003c7ca
mov rax, qword [rdi + 8]
lea r8, [rsp + 0x38]
mov edx, 0xb6
mov qword [rsp + 0x38], rax
xor ecx, ecx
call fcn.180065c80
mov qword [rdi], rax
jmp 0x18003c7ca
mov rdx, qword [rdi]
xor r8d, r8d
mov ecx, 0xb7
call fcn.180029080
mov rax, qword [r14]
lea r9, [rsp + 0x38]
mov qword [rsp + 0x28], 0
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x38], rax
xor ecx, ecx
mov dword [rsp + 0x20], 0x117
call fcn.18000e2e0
mov qword [rdi + 8], rax
add ebx, 0x9ea
cmp ebx, 0x13d4
jbe 0x18003c760
jmp 0x18003ca31
cmp esi, 0x2112
je 0x18003c80a
cmp esi, 0x3486
je 0x18003c9ff
cmp esi, 0x41f1
jne 0x18003ca31
mov dword [rsp + 0x30], 1
jmp 0x18003ca31
mov r9, qword [rdi + 0x70]
mov rax, qword [r9 + 0x40]
test rax, rax
je 0x18003c82e
mov r8d, 1
lea rdx, [rsp + 0x88]
mov rcx, rdi
call rax
cdqe
jmp 0x18003c847
mov r9, qword [r9 + 0x38]
lea rcx, [rsp + 0x88]
mov edx, 1
mov r8d, edx
call fcn.180079e64
cmp rax, 1
je 0x18003c873
mov ecx, 0x27
mov eax, ecx
sub eax, 0x27
je 0x18003c865
cmp eax, 1
jne 0x18003c86c
xor eax, eax
jmp 0x18003ca03
mov dword [rdi + 0x60], 0x66
inc ecx
cmp ecx, 0x29
jb 0x18003c852
movzx edx, byte [rsp + 0x88]
test dl, dl
je 0x18003c941
mov ebx, 0x58
nop dword [rax + rax]
cmp ebx, 0x58
je 0x18003c919
cmp ebx, 0x1810
jne 0x18003c92a
mov r9, qword [rdi + 0x70]
mov rax, qword [r9 + 0x40]
test rax, rax
je 0x18003c8c6
movzx r8d, dl
mov rcx, rdi
mov rdx, qword [r14]
inc rdx
call rax
movsxd rcx, eax
jmp 0x18003c8e1
mov rcx, qword [r14]
mov r9, qword [r9 + 0x38]
inc rcx
movzx r8d, dl
mov edx, 1
call fcn.180079e64
mov rcx, rax
movzx edx, byte [rsp + 0x88]
cmp rcx, rdx
je 0x18003c92a
mov ecx, 0x46
mov eax, ecx
sub eax, 0x46
je 0x18003c905
cmp eax, 0x3e
je 0x18003c85e
jmp 0x18003c90c
mov dword [rdi + 0x60], 0x66
add ecx, 0x3e
cmp ecx, 0xc2
jb 0x18003c8f3
jmp 0x18003c92a
lea rax, [rbp + 0x50]
mov qword [r14], rax
mov byte [rax], dl
movzx edx, byte [rsp + 0x88]
add ebx, 0x17b8
cmp ebx, 0x2f70
jbe 0x18003c890
jmp 0x18003ca31
mov qword [r14], 0
jmp 0x18003ca31
cmp esi, 0x225f9
ja 0x18003c9ef
je 0x18003c9ca
cmp esi, 0x8a1e
je 0x18003c9c1
cmp esi, 0x11367
je 0x18003c9a7
cmp esi, 0x19cb0
jne 0x18003ca31
test r12, r12
jne 0x18003ca31
mov ecx, 0xef
mov eax, ecx
sub eax, 0xee
je 0x18003c9ff
cmp eax, 1
jne 0x18003c998
mov byte [rsp + 0x30], 0
dec ecx
cmp ecx, 0xed
ja 0x18003c985
jmp 0x18003ca31
mov rdx, qword [rdi + 0x10]
mov r9d, 0x40
mov r8d, 0x1000
xor ecx, ecx
call qword [r14]
mov r12, rax
jmp 0x18003ca31
mov qword [r15], 0
jmp 0x18003ca31
cmp qword [rdi + 0x18], 0x10
mov rdx, rdi
jb 0x18003c9d7
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
mov rcx, r12
call fcn.18006fd90
mov eax, dword [rdi + 0x20]
add rax, r12
mov qword [r15 + 8], rax
jmp 0x18003ca31
cmp esi, 0x2af42
je 0x18003ca23
cmp esi, 0x3388b
jne 0x18003ca31
mov eax, dword [rsp + 0x30]
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov eax, dword [rdi + 0x24]
add rax, r12
mov byte [rsp + 0x30], 1
mov qword [r15], rax
imul eax, r13d, 0xa5
add esi, eax
cmp esi, dword [rsp + 0x34]
jbe 0x18003c6f0
jmp 0x18003c9ff