Function at 0x1800414b0
Capabilities:
Write file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov dword [rax + 8], ecx
push rbp
push rsi
sub rsp, 0xc8
mov ebp, ecx
mov rsi, r8
imul ecx, ecx, 0x372
mov r10, rdx
mov dword [rsp + 0x20], ecx
cmp ebp, ecx
ja 0x180041a78
movsxd rdx, dword [rsp + 0x24]
movsxd r8, dword [rsp + 0xe0]
mov rcx, rdx
mov qword [rax - 0x18], rbx
mov ebx, dword [rsp + 0xe0]
mov qword [rax - 0x20], rdi
mov rdi, qword [rsp + 0x58]
mov qword [rax - 0x28], r12
mov r12, qword [rsp + 0x78]
mov qword [rax - 0x30], r13
mov r13, qword [rsp + 0x78]
mov qword [rax - 0x38], r14
mov qword [rax - 0x40], r15
mov r15d, dword [rsp + 0x38]
imul eax, ebp, 0x93
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x40], r8
mov dword [rsp + 0x28], eax
mov r11d, dword [rsp + 0x28]
mov eax, dword [rsp + 0x20]
nop word [rax + rax]
cmp ebp, 0x8748
ja 0x180041664
je 0x18004164a
mov eax, ebp
sub eax, 0xea
je 0x18004163a
sub eax, 8
je 0x18004160a
cmp eax, 0x35
jne 0x180041a32
mov rcx, qword [rsi]
xor r8d, r8d
mov edx, dword [r10]
mov rcx, qword [rcx + 0x18]
call fcn.180077d54
mov r14, qword [rsp + 0xf8]
test eax, eax
je 0x1800415b4
mov rax, qword [r14]
mov rcx, qword [rax]
mov dword [rcx + 0x28], 0x41
mov rcx, qword [r14]
mov rax, qword [rcx]
call qword [rax]
mov r9, qword [rsi]
mov edx, 1
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x108]
mov r9, qword [r9 + 0x18]
movsxd r8, dword [rax]
call fcn.18007be3c
mov rcx, qword [rsp + 0x100]
movsxd rcx, dword [rcx]
cmp rax, rcx
je 0x1800415fd
mov rax, qword [r14]
mov rcx, qword [rax]
mov dword [rcx + 0x28], 0x42
mov rcx, qword [r14]
mov rax, qword [rcx]
call qword [rax]
mov r9, qword [rsp + 0xf8]
jmp 0x180041a17
mov rax, qword [r9]
mov r9, qword [rax + 0x260]
mov r10d, dword [rax + 0x1d8]
mov qword [rsp + 0x78], r9
mov r9, qword [rsp + 0xf8]
mov dword [rsp + 0x60], r10d
mov r10, qword [rsp + 0xe8]
jmp 0x180041a32
mov rax, qword [r10]
mov qword [rsp + 0x88], rax
jmp 0x180041a32
xor edx, edx
xor ecx, ecx
xor r8d, r8d
mov dword [rsp + 0x24], edx
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x30], rcx
jmp 0x180041a36
cmp ebp, 0x8be8
je 0x18004186b
cmp ebp, 0x10da6
jne 0x180041a36
mov rax, qword [r9]
cmp edx, dword [rax + 0x1d4]
jge 0x180041a32
nop dword [rax + rax]
xor r11d, r11d
mov r10d, 0x16
nop dword [rax]
mov eax, r10d
sub eax, 0x16
je 0x1800417f2
sub eax, 0x78
je 0x1800417ad
sub eax, 0x78
je 0x18004177d
cmp eax, 0x78
jne 0x180041812
mov r8d, dword [rsi + 0x28]
sub r8d, 2
je 0x18004174c
mov r9d, dword [rsp + 0x2c]
mov eax, 0x61
nop dword [rax + rax]
cmp eax, 0x61
je 0x180041701
cmp eax, 0x49e3
je 0x1800416f8
cmp eax, 0x9365
jne 0x180041736
mov ebx, r15d
jmp 0x180041736
mov dword [rsp + 0x2c], ebx
mov r9d, ebx
jmp 0x180041736
movsx ecx, byte [r13]
lea edx, [rbx + rbx*2]
inc r13
lea r15d, [rcx + rcx*2]
movsx ecx, byte [r12]
add r15d, ecx
inc r12
lea ecx, [r9 + 8]
add ecx, edx
sar ecx, 4
mov byte [rdi], cl
lea ecx, [r15 + 7]
add ecx, edx
sar ecx, 4
mov byte [rdi + 1], cl
add rdi, 2
add eax, 0x4982
cmp eax, 0xdc86
jbe 0x1800416e0
add r8d, 0xffffffff
jne 0x1800416d6
mov edx, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x2c]
lea eax, [rbx*4 + 7]
mov r8, qword [rsp + 0x40]
add ecx, 8
sar eax, 4
lea ecx, [rcx + rbx*2]
add ecx, ebx
sar ecx, 4
mov byte [rdi], cl
mov rcx, qword [rsp + 0x30]
mov byte [rdi + 1], al
add rdi, 2
jmp 0x180041812
lea ecx, [rbx*2 + 7]
mov dword [rsp + 0x2c], ebx
add ecx, r15d
lea eax, [rbx*4 + 8]
add ecx, ebx
sar eax, 4
sar ecx, 4
mov ebx, r15d
mov byte [rdi], al
mov byte [rdi + 1], cl
add rdi, 2
mov rcx, qword [rsp + 0x30]
jmp 0x180041812
mov rax, qword [rsp + 0x88]
inc edx
mov dword [rsp + 0x24], edx
mov rdi, qword [rax + rcx*8]
inc rcx
movsx eax, byte [r13]
mov qword [rsp + 0x30], rcx
lea ebx, [rax + rax*2]
movsx eax, byte [r12]
add ebx, eax
movsx eax, byte [r13 + 1]
lea r15d, [rax + rax*2]
movsx eax, byte [r12 + 1]
add r15d, eax
add r12, 2
add r13, 2
jmp 0x180041812
mov rax, qword [rsp + 0x108]
mov rax, qword [rax]
mov r13, qword [rax + r8*8]
test r11d, r11d
jne 0x18004180d
mov r12, qword [rax + r8*8 - 8]
jmp 0x180041812
mov r12, qword [rax + r8*8 + 8]
add r10d, 0x78
cmp r10d, 0x1f6
jb 0x1800416a0
inc r11d
mov dword [rsp + 0x38], r15d
mov qword [rsp + 0x58], rdi
cmp r11d, 2
jl 0x180041693
mov r9, qword [rsp + 0xf8]
inc r8
mov qword [rsp + 0x40], r8
mov rax, qword [r9]
cmp edx, dword [rax + 0x1d4]
jl 0x180041690
mov r10, qword [rsp + 0xe8]
mov r11d, dword [rsp + 0x28]
jmp 0x180041a32
mov rax, qword [r9]
xor r14d, r14d
mov dword [rsp + 0x48], r14d
mov rcx, qword [rax + 0x130]
cmp dword [rax + 0x38], r14d
jle 0x180041a2d
mov rdi, qword [rsp + 0x78]
lea rbp, [rcx + 0xc]
mov r15d, dword [rsp + 0x60]
xor esi, esi
nop word [rax + rax]
mov r14d, dword [rsp + 0x68]
mov r11d, 0x2a
nop dword [rax + rax]
cmp r11d, 0x2a
je 0x180041a9e
cmp r11d, 0x1014
je 0x180041a82
cmp r11d, 0x1ffe
je 0x180041915
cmp r11d, 0x2fe8
jne 0x1800419c3
movsxd rdx, r14d
test r14d, r14d
jle 0x1800419c3
mov r8, qword [rsp + 0x80]
lea rax, [rdx*8]
mov rcx, r8
sub rcx, rax
nop
mov rax, qword [r8]
mov qword [rcx], rax
lea rcx, [rcx + 8]
sub rdx, 1
jne 0x180041900
jmp 0x1800419c3
mov r10, qword [rsp + 0x50]
lea eax, [r15 + 2]
imul eax, r14d
test eax, eax
jle 0x180041955
mov r8, qword [rsp + 0x70]
mov rcx, r10
mov r9, qword [rsp + 0x80]
sub r8, r10
sub r9, r10
mov edx, eax
nop
mov rax, qword [r8 + rcx]
mov qword [rcx], rax
mov qword [r9 + rcx], rax
lea rcx, [rcx + 8]
sub rdx, 1
jne 0x180041940
lea eax, [r14 + r14]
movsxd r9, eax
test eax, eax
jle 0x1800419bb
mov eax, r15d
lea r8d, [r15 - 2]
imul eax, r14d
imul r8d, r14d
cdqe
lea rdx, [r10 + rax*8]
mov r10, qword [rsp + 0x70]
sub r10, qword [rsp + 0x50]
nop
movsxd rax, r8d
inc r8d
mov qword [rsp + 0x68], rdx
lea rcx, [rax*8]
mov rax, qword [rdx + r10]
mov rdx, qword [rsp + 0x50]
mov qword [rcx + rdx], rax
mov rdx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x70]
mov rax, qword [rcx + rax]
mov qword [rdx], rax
add rdx, 8
sub r9, 1
jne 0x180041980
mov r9, qword [rsp + 0xf8]
add r11d, 0xfea
cmp r11d, 0x3fa8
jbe 0x1800418b0
mov rcx, qword [r9]
add rsi, 8
mov dword [rsp + 0x68], r14d
add rbp, 0x60
mov r14d, dword [rsp + 0x48]
inc r14d
mov dword [rsp + 0x48], r14d
cmp r14d, dword [rcx + 0x38]
jl 0x1800418a0
mov rdi, qword [rsp + 0x58]
mov r15d, dword [rsp + 0x38]
mov rsi, qword [rsp + 0xf0]
mov ebp, dword [rsp + 0xe0]
mov r11d, dword [rsp + 0x28]
mov r10, qword [rsp + 0xe8]
mov r8, qword [rsp + 0x40]
mov edx, dword [rsp + 0x24]
mov rcx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x20]
add ebp, r11d
mov dword [rsp + 0xe0], ebp
cmp ebp, eax
jbe 0x180041550
mov r15, qword [rsp + 0x98]
mov r14, qword [rsp + 0xa0]
mov r13, qword [rsp + 0xa8]
mov r12, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0xc0]
add rsp, 0xc8
pop rsi
pop rbp
ret
mov rax, qword [rdi + 0x70]
mov rax, qword [rsi + rax]
mov qword [rsp + 0x50], rax
mov rax, qword [rdi + rsi + 0x10]
mov qword [rsp + 0x70], rax
jmp 0x1800419c3
mov eax, dword [rbp + 0x18]
imul eax, dword [rbp]
mov rcx, qword [r9]
cdq
idiv dword [rcx + 0x1d8]
mov rcx, qword [rdi + 0x68]
mov r14d, eax
mov rax, qword [rsi + rcx]
mov qword [rsp + 0x80], rax
jmp 0x1800419c3