Function at 0x140072e00
Capabilities:
Write file on windows

Disassembly:
push r12
push r13
sub rsp, 0xb8
mov rax, qword [0x140112ac0]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov r13d, edx
mov r12, rcx
cmp edx, 0xffffffff
jne 0x140072e2f
xor eax, eax
jmp 0x140073331
mov rdx, qword [rcx + 0x48]
cmp qword [rdx], 0
je 0x140072e68
mov r8, qword [rcx + 0x60]
mov rdx, qword [rdx]
movsxd rcx, dword [r8]
add rcx, rdx
cmp rdx, rcx
jae 0x140072e68
dec dword [r8]
mov rdx, qword [r12 + 0x48]
mov eax, r13d
mov r8, qword [rdx]
lea rcx, [r8 + 1]
mov qword [rdx], rcx
mov byte [r8], r13b
jmp 0x140073331
mov rdx, qword [r12 + 0x88]
mov qword [rsp + 0xb0], rbp
test rdx, rdx
jne 0x140072e85
or eax, 0xffffffff
jmp 0x140073329
cmp qword [r12 + 0x70], 0
jne 0x140072ea7
movsx ecx, r13b
call fcn.1400b1bf4
or rbp, 0xffffffffffffffff
cmp eax, ebp
cmovne ebp, r13d
mov eax, ebp
jmp 0x140073329
xor ecx, ecx
mov qword [rsp + 0xe0], rbx
mov edx, 0xf
cmp rdx, 0x10
mov qword [rsp + 0xa8], rsi
mov byte [rsp + 0x60], 0
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x70], 8
lea rax, [rsp + 0x60]
mov qword [rsp + 0x98], r14
cmovae rax, rcx
mov byte [rsp + 0x40], r13b
mov qword [rsp + 0x90], r15
mov byte [rax + 8], cl
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
or rbp, 0xffffffffffffffff
xor r15d, r15d
nop dword [rax]
cmp rdx, 0x10
jb 0x140072f30
mov rdi, rcx
test rcx, rcx
je 0x140072f5c
jmp 0x140072f35
lea rdi, [rsp + 0x60]
cmp rdx, 0x10
lea rax, [rsp + 0x60]
cmovae rax, rcx
cmp rax, rdi
ja 0x140072f5c
cmp rdx, 0x10
lea rax, [rsp + 0x60]
cmovae rax, rcx
add rax, r8
cmp rdi, rax
jbe 0x140072f70
call fcn.1400abd34
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
lea rax, [rsp + 0x58]
cmp rax, 0xfffffffffffffffc
je 0x140072fa4
cmp rdx, 0x10
lea rax, [rsp + 0x60]
cmovae rax, rcx
add rax, r8
cmp rdi, rax
jb 0x140072fa4
call fcn.1400abd34
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
mov rsi, r8
cmp rdx, 0x10
jb 0x140072fb7
mov rbx, rcx
test rcx, rcx
je 0x140072fe3
jmp 0x140072fbc
lea rbx, [rsp + 0x60]
cmp rdx, 0x10
lea rax, [rsp + 0x60]
cmovae rax, rcx
cmp rax, rbx
ja 0x140072fe3
cmp rdx, 0x10
lea rax, [rsp + 0x60]
cmovae rax, rcx
add rax, r8
cmp rbx, rax
jbe 0x140072ff7
call fcn.1400abd34
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
lea rax, [rsp + 0x58]
cmp rax, 0xfffffffffffffffc
je 0x14007301c
cmp rdx, 0x10
lea rax, [rsp + 0x60]
cmovae rax, rcx
add rax, r8
cmp rbx, rax
jb 0x14007301c
call fcn.1400abd34
mov rcx, qword [r12 + 0x70]
lea rdx, [rsp + 0x48]
lea rax, [rdi + rsi]
mov r10, qword [rcx]
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x50]
lea r9, [rsp + 0x41]
lea r8, [rsp + 0x40]
lea rdx, [r12 + 0x7c]
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rax
call qword [r10 + 0x28]
test eax, eax
js 0x1400732ed
cmp eax, 1
jg 0x1400732c7
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x140073084
mov rbx, rcx
test rcx, rcx
je 0x1400730b5
jmp 0x140073089
lea rbx, [rsp + 0x60]
cmp rdx, 0x10
lea rax, [rsp + 0x60]
cmovae rax, rcx
cmp rax, rbx
ja 0x1400730b5
mov r8, qword [rsp + 0x70]
cmp rdx, 0x10
lea rax, [rsp + 0x60]
cmovae rax, rcx
add rax, r8
cmp rbx, rax
jbe 0x1400730c9
call fcn.1400abd34
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
lea rax, [rsp + 0x58]
cmp rax, 0xfffffffffffffffc
je 0x1400730fd
cmp rdx, 0x10
lea rax, [rsp + 0x60]
cmovae rax, rcx
add rax, r8
cmp rbx, rax
jb 0x1400730fd
call fcn.1400abd34
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x48]
sub rdi, rbx
je 0x1400731b0
cmp rdx, 0x10
jb 0x14007311b
mov rbx, rcx
test rcx, rcx
je 0x140073147
jmp 0x140073120
lea rbx, [rsp + 0x60]
cmp rdx, 0x10
lea rax, [rsp + 0x60]
cmovae rax, rcx
cmp rax, rbx
ja 0x140073147
cmp rdx, 0x10
lea rax, [rsp + 0x60]
cmovae rax, rcx
add rax, r8
cmp rbx, rax
jbe 0x14007315b
call fcn.1400abd34
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
lea rax, [rsp + 0x58]
cmp rax, 0xfffffffffffffffc
je 0x140073180
cmp rdx, 0x10
lea rax, [rsp + 0x60]
cmovae rax, rcx
add rax, r8
cmp rbx, rax
jb 0x140073180
call fcn.1400abd34
mov r9, qword [r12 + 0x88]
mov r8, rdi
mov edx, 1
mov rcx, rbx
call fcn.1400b218c
cmp rdi, rax
jne 0x1400732e5
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
lea rax, [rsp + 0x40]
mov byte [r12 + 0x79], 1
cmp qword [rsp + 0x50], rax
jne 0x1400732b7
test rdi, rdi
jne 0x140072f20
cmp r8, 0x20
jae 0x1400732af
mov rax, rbp
sub rax, r8
cmp rax, 8
ja 0x1400731f9
call fcn.1400a9e14
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
lea rbx, [r8 + 8]
cmp rbx, 0xfffffffffffffffe
jbe 0x140073217
call fcn.1400a9e14
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
cmp rdx, rbx
jae 0x140073281
lea rcx, [rsp + 0x58]
mov rdx, rbx
call fcn.140002c20
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
test rbx, rbx
je 0x140072f20
cmp rdx, 0x10
lea rax, [rsp + 0x60]
cmovae rax, rcx
xor ecx, ecx
mov qword [r8 + rax], rcx
cmp qword [rsp + 0x78], 0x10
mov qword [rsp + 0x70], rbx
lea rax, [rsp + 0x60]
cmovae rax, qword [rsp + 0x60]
mov byte [rax + rbx], cl
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
jmp 0x140072f20
test rbx, rbx
jne 0x140073238
cmp rdx, 0x10
mov qword [rsp + 0x70], r15
lea rax, [rsp + 0x60]
cmovae rax, rcx
mov byte [rax], r15b
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
jmp 0x140072f20
cmp rdx, 0x10
jb 0x1400732ff
jmp 0x1400732fa
cmp rdx, 0x10
jb 0x1400732c2
call fcn.1400ab7f0
mov eax, r13d
jmp 0x140073301
cmp eax, 3
jne 0x1400732ed
movsx ecx, byte [rsp + 0x40]
mov rdx, qword [r12 + 0x88]
call fcn.1400b1bf4
cmp eax, 0xffffffff
cmovne ebp, r13d
cmp qword [rsp + 0x78], 0x10
jmp 0x1400732f3
cmp qword [rsp + 0x78], 0x10
jb 0x1400732ff
mov rcx, qword [rsp + 0x60]
call fcn.1400ab7f0
mov eax, ebp
mov r14, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0xe0]
mov r15, qword [rsp + 0x90]
mov rbp, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1400ac220
add rsp, 0xb8
pop r13
pop r12
ret