Function at 0x180037660
Capabilities:
Read file on windows

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0x88
mov rbx, qword [rbp - 0x39]
lea r13d, [r9 + 0xc]
xor edi, edi
mov eax, r9d
mov r10, rcx
mov r12d, r9d
cmp r9d, r13d
jae 0x1800378ca
mov rsi, qword [rbp - 0x39]
lea r15d, [r9 - 0xe2]
mov r9, qword [rbp - 0x39]
lea r11, [0x180000000]
mov r14, qword [rbp - 0x39]
mov qword [rbp - 0x39], r9
cmp r15d, 0x24
ja case.0x1800376e0.12
movzx eax, byte [r11 + r15 + 0x37ac4]
mov ecx, dword [r11 + rax*4 + 0x37a90]
add rcx, r11
jmp rcx
mov r8d, 1
mov dword [rbp - 0x31], 0x53575f5f
lea rdx, [0x18006f916]
mov byte [rbp - 0x2d], dil
lea rcx, [rbp - 0x31]
call fcn.18004c030
mov r8d, 2
lea rdx, [0x18006f942]
lea rcx, [rbp - 0x31]
call fcn.18004c030
mov rdx, qword [rbp + 0x67]
lea r11, [0x180000000]
mov r9, qword [rbp - 0x39]
mov r10, qword [rbp + 0x5f]
mov r8, qword [rbp + 0x6f]
inc r12d
inc r15d
cmp r12d, r13d
jb 0x1800376c6
mov eax, dword [rbp + 0x77]
imul r13d, eax, 0x3bd
mov esi, eax
cmp eax, r13d
ja case.0x1800376e0.10
mov r14, qword [rbp + 0x7f]
mov r15, qword [rbp - 0x39]
mov r12, qword [rbp - 0x39]
nop dword [rax]
cmp esi, 0xe74c
ja 0x18003793b
je 0x180037932
mov eax, esi
sub eax, 0xe2
je 0x180037917
sub eax, 0xc
je 0x1800378fe
sub eax, 0x4cc2
je 0x1800378d7
sub eax, 0x420
je case.0x1800376e0.10
cmp eax, 0x48ae
jne 0x180037a72
mov eax, dword [0x18006fab1]
mov dword [rbp - 0x40], eax
movzx eax, byte [0x18006fab5]
mov byte [rbp - 0x3c], al
jmp 0x180037a72
mov r8d, 3
mov byte [rbp - 0x25], dil
lea rdx, [0x18006f9b4]
mov word [rbp - 0x21], di
lea rcx, [rbp - 0x21]
call fcn.18004bddc
jmp 0x180037719
test r8, r8
je 0x1800378ab
test rdx, rdx
je 0x1800378ab
mov rsi, r8
jmp case.0x1800376e0.12
mov rbx, rdi
jmp case.0x1800376e0.12
mov rax, qword [r8 + 0x20]
mov qword [r9 + 0x20], rax
mov rax, qword [r9 + 0x10]
test rax, rax
je 0x18003781f
mov qword [rax + 0x20], r8
mov rax, qword [r9 + 0x10]
mov qword [r8 + 0x18], rax
jmp case.0x1800376e0.12
mov r9, qword [r8 + 0x18]
mov qword [rbp - 0x39], r9
jmp case.0x1800376e0.12
mov rax, qword [r10]
mov r8, rdi
test rax, rax
je 0x18003772c
mov ecx, 0x76
nop dword [rax]
cmp ecx, 0x76
jne 0x180037866
movzx edx, byte [r14]
cmp byte [rsi], dl
jne 0x1800378ba
inc rsi
inc r14
inc r8
add ecx, 5
cmp ecx, 0x7b
jb 0x180037850
cmp r8, rax
jb 0x180037844
mov rdx, qword [rbp + 0x67]
jmp 0x18003772c
xor edx, edx
mov qword [r8 + 0x20], r9
mov qword [r9 + 0x10], r8
lea ecx, [rdx + 0x77]
call fcn.180037af0
jmp 0x180037719
mov dword [rbp - 0x2a], 0x65537349
mov byte [rbp - 0x26], 0x74
jmp case.0x1800376e0.12
mov r14, rdx
jmp case.0x1800376e0.12
cmp r8, rdx
je case.0x1800376e0.11
mov eax, 1
jmp 0x180037976
sub rax, r8
jmp 0x180037976
mov rax, rdi
jmp 0x180037976
mov r9, qword [rbp - 0x39]
mov qword [rbp - 0x39], r9
jmp 0x18003773e
mov r8d, 3
mov word [rbp - 0x13], di
lea rdx, [0x18006fbe4]
lea rcx, [rbp - 0x13]
call fcn.18004be24
mov word [rbp - 0xd], di
mov byte [rbp - 0x41], 0x73
jmp 0x180037a6e
xor edx, edx
mov r8, r9
lea ecx, [rdx + 0x77]
call fcn.180037af0
mov r9, qword [rbp - 0x39]
mov rbx, r9
jmp 0x180037a72
mov r8d, 4
lea rdx, [0x18006fa96]
lea rcx, [rbp - 0x1b]
call fcn.18004be24
jmp 0x180037a6e
mov byte [rbp - 0x3b], dil
jmp 0x180037a72
cmp esi, 0x1341a
je 0x180037a54
cmp esi, 0x180e8
je 0x180037a0b
cmp esi, 0x1cdb6
je 0x1800379f2
cmp esi, 0x21a84
je 0x18003798a
cmp esi, 0x26752
jne 0x180037a72
mov rax, rbx
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rbx, rdi
cmp qword [r14], rbx
jbe 0x180037a72
nop word [rax + rax]
mov ecx, dword [r8]
xor r9d, r9d
inc ecx
mov qword [rsp + 0x20], rdi
xor r8d, r8d
call r15
mov rax, qword [rbp + 0x6f]
mov rdx, qword [rbp + 0x67]
movsxd rcx, dword [rax]
call r12
test eax, eax
je 0x1800379e3
mov rax, qword [rbp + 0x6f]
mov r8d, dword [r14]
mov rdx, qword [rbp + 0x5f]
sub r8d, ebx
add rdx, rbx
mov ecx, dword [rax]
call fcn.180053bec
movsxd rcx, eax
add rbx, rcx
mov r8, qword [rbp + 0x6f]
mov rdx, qword [rbp + 0x67]
cmp rbx, qword [r14]
jb 0x1800379a0
jmp 0x180037a6e
xor r9d, r9d
lea r8, [rbp - 0x41]
lea rdx, [rbp - 9]
lea ecx, [r9 + 0x20]
call fcn.18002f840
mov r15, rax
jmp 0x180037a6e
mov r8d, 2
lea rdx, [0x18006fafc]
lea rcx, [rbp + 1]
call fcn.18004be24
mov r8d, 3
mov word [rbp + 5], di
lea rdx, [0x18006fb6a]
lea rcx, [rbp - 9]
call fcn.18004bddc
xor r9d, r9d
lea r8, [rbp - 0x31]
lea rdx, [rbp - 0x21]
lea ecx, [r9 + 0x20]
call fcn.18002f840
mov r12, rax
jmp 0x180037a6e
mov r8d, 5
mov word [rbp - 9], di
lea rdx, [0x18006fbbe]
lea rcx, [rbp - 9]
call fcn.18004bddc
mov r9, qword [rbp - 0x39]
imul eax, dword [rbp + 0x77], 0x57
add esi, eax
cmp esi, r13d
ja case.0x1800376e0.10
mov r8, qword [rbp + 0x6f]
mov rdx, qword [rbp + 0x67]
jmp 0x180037760