Function at 0x140082a30
Capabilities:
Write file on windows

Disassembly:
push rbp
push rsi
push rdi
push r15
lea rbp, [rsp - 0x3f]
sub rsp, 0xe8
movaps xmmword [rsp + 0xb0], xmm7
mov rax, qword [0x14008fb98]
xor rax, rsp
mov qword [rbp - 1], rax
movsxd rax, r8d
mov rsi, rcx
mov qword [rbp - 0x69], rcx
lea rcx, [0x14008d1c0]
mov dword [rbp - 0x6d], r8d
mov r8d, 0x12
addsd xmm1, qword [rcx + rax*8]
lea rcx, [rbp - 0x61]
call fcn.1400828d0
movups xmm7, xmmword [rax]
mov edi, dword [rax + 8]
movq r15, xmm7
mov qword [rsp + 0x20], r15
movups xmmword [rbp - 0x41], xmm7
cmp edi, 2
jle 0x140082ab2
cmp byte [r15], 0x6e
je 0x140082aa7
cmp byte [r15 + 1], 0x69
jne 0x140082ab2
movups xmmword [rsi], xmm7
mov rax, rsi
jmp 0x140082ea2
mov qword [rsp + 0x110], rbx
xor edx, edx
mov qword [rsp + 0xe0], r12
xor r11d, r11d
mov qword [rsp + 0xd8], r13
xor ebx, ebx
mov r13d, 1
mov qword [rbp - 0x21], 0
xor r10d, r10d
mov qword [rbp - 0x19], 0
mov qword [rbp - 0x11], 0
mov word [rbp - 9], 0
mov dword [rbp - 0x71], r13d
lea r12d, [r13 - 2]
mov dword [rbp - 0x75], r13d
test edi, edi
jle 0x140082b5d
lea r8, [rbp - 0x21]
mov r9, r15
nop
movzx ecx, byte [r9]
cmp cl, 0x2d
jne 0x140082b1e
mov r13d, r12d
jmp 0x140082b50
cmp cl, 0x2b
jne 0x140082b2b
mov r13d, 1
jmp 0x140082b50
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x140082b3d
inc r11d
mov byte [r8], cl
inc r8
jmp 0x140082b50
cmp cl, 0x2e
jne 0x140082b91
test r13d, r13d
lea eax, [rdx - 1]
mov ecx, edx
cmovle ecx, eax
mov dword [rbp - 0x71], ecx
inc edx
inc r10d
inc r9
cmp r10d, edi
jl 0x140082b10
movsxd rax, r11d
cmp rax, 0x1a
jae 0x140082fcd
mov byte [rbp + rax - 0x21], bl
movsxd rax, edx
mov qword [rsp + 0xd0], r14
movaps xmmword [rsp + 0xc0], xmm6
movzx ecx, byte [rax + r15]
cmp cl, 0x2d
jne 0x140082bc3
mov dword [rbp - 0x75], r12d
jmp 0x140082bcf
cmp cl, 0x65
jne 0x140082b9a
inc edx
jmp 0x140082b5d
lea rcx, [rbp - 0x41]
call fcn.140084a10
lea rax, str._Float_conversion_error___
mov qword [rsi], rax
mov rax, rsi
mov dword [rsi + 8], 0x1a
mov dword [rsi + 0xc], 1
jmp 0x140082e8a
cmp cl, 0x2b
jne 0x140082bd1
mov dword [rbp - 0x75], 1
inc edx
cmp edx, edi
jge 0x140082bf7
movsxd r8, edx
add r8, r15
sub edi, edx
mov edx, edi
nop
movzx eax, byte [r8]
lea ebx, [rbx + rbx*4]
lea ebx, [rbx - 0x18]
lea r8, [r8 + 1]
lea ebx, [rax + rbx*2]
sub rdx, 1
jne 0x140082be0
lea edx, [rbx + 0x20]
mov qword [rbp - 0x61], 0
xor eax, eax
mov dword [rbp - 0x59], 0
test edx, edx
mov dword [rbp - 0x55], edx
movups xmm0, xmmword [rbp - 0x61]
cmovg eax, edx
mov dword [rbp - 0x4d], 0
mov dword [rbp - 0x51], eax
mov dword [rbp - 0x49], 1
mov byte [rbp - 0x79], 0
movsxd rcx, eax
movups xmm6, xmmword [rbp - 0x51]
movups xmmword [rbp - 0x41], xmm0
test eax, eax
jle 0x140082c46
test edx, edx
jne 0x140082c46
call fcn.140001fa0
jmp 0x140082c4b
call fcn.140086b40
mov r14, rax
mov rdi, rax
test rax, rax
je 0x140082cad
movdqa xmm0, xmm6
psrldq xmm0, 8
movd ecx, xmm0
cmp ecx, 1
jne 0x140082c7f
movsxd rax, dword [rbp - 0x35]
test eax, eax
jle 0x140082cad
mov r8, rax
xor edx, edx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memset
jmp 0x140082cad
mov eax, dword [rbp - 0x35]
test eax, eax
jle 0x140082cad
movsxd rsi, ecx
mov r15d, eax
nop dword [rax]
mov r8, rsi
lea rdx, [rbp - 0x79]
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
add rdi, rsi
sub r15, 1
jne 0x140082c90
mov r15, qword [rsp + 0x20]
psrldq xmm7, 0xc
xor esi, esi
movd eax, xmm7
cmp eax, 0xfa1d05ee
jne 0x140082d07
lea ecx, [rsi + 1]
lea r15, str.double_string.free___detected_n
lea edi, [rsi + 0x1e]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r12, rax
nop word [rax + rax]
mov r9, r12
mov r8, rdi
mov edx, 1
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
add r15, rax
sub rdi, rax
test rdi, rdi
jg 0x140082ce0
mov r12d, 0xffffffff
jmp 0x140082d1a
cmp eax, 1
je 0x140082d1a
test r15, r15
je 0x140082d1a
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
cmp r13d, 1
je 0x140082d29
mov byte [r14], 0x2d
mov esi, 1
xor r13d, r13d
mov eax, esi
mov edi, r13d
cmp dword [rbp - 0x75], r13d
jl 0x140082d9a
cmp byte [rbp - 0x21], dil
je 0x140082d80
movsxd r8, dword [rbp - 0x71]
lea rcx, [rax + r14]
mov edx, r13d
nop dword [rax + rax]
movzx eax, byte [rbp + rdx - 0x21]
inc esi
mov byte [rcx], al
inc edi
inc rcx
inc rdx
cmp rdx, r8
jl 0x140082d79
test ebx, ebx
js 0x140082d79
jne 0x140082d77
mov r12d, esi
mov byte [rcx], 0x2e
inc esi
inc rcx
dec ebx
cmp byte [rbp + rdx - 0x21], r13b
jne 0x140082d50
test ebx, ebx
js 0x140082df6
movsxd rcx, esi
mov dl, 0x30
add rcx, r14
inc ebx
mov r8d, ebx
call sub.VCRUNTIME140.dll_memset
add esi, ebx
jmp 0x140082df6
mov cl, 1
test ebx, ebx
jle 0x140082dc2
add rax, r14
mov byte [rax], 0x30
inc esi
inc rax
dec ebx
test cl, cl
je 0x140082dbe
mov r12d, esi
mov byte [rax], 0x2e
inc esi
inc rax
xor cl, cl
test ebx, ebx
jg 0x140082da3
movzx ecx, byte [rbp - 0x21]
test cl, cl
je 0x140082df6
movsxd r8, esi
lea rdx, [rbp - 0x21]
add r8, r14
nop dword [rax]
nop dword [rax + rax]
mov byte [r8], cl
lea rdx, [rdx + 1]
movzx ecx, byte [rdx]
lea r8, [r8 + 1]
inc esi
inc edi
test cl, cl
jne 0x140082de0
mov r15d, dword [rbp - 0x6d]
test r15d, r15d
jg 0x140082ec3
test r14, r14
je 0x140082fd3
test r12d, r12d
lea ebx, [rdi + 1]
cmovns ebx, r12d
test ebx, ebx
je 0x140082f0e
movsxd rcx, ebx
inc rcx
call fcn.1400047a0
mov dword [rsp + 0x28], ebx
mov rdx, r14
movsxd rbx, ebx
mov rcx, rax
mov r8, rbx
mov qword [rsp + 0x20], rax
mov rdi, rax
mov dword [rbp - 0x7d], r13d
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbx + rdi], r13b
psrldq xmm6, 4
movd eax, xmm6
shr eax, 3
test al, 1
jne 0x140082e6e
movsxd rax, dword [rbp - 0x39]
sub r14, rax
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, qword [rbp - 0x69]
movups xmm0, xmmword [rsp + 0x20]
mov r14, qword [rsp + 0xd0]
movaps xmm6, xmmword [rsp + 0xc0]
movups xmmword [rax], xmm0
mov r12, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x110]
mov r13, qword [rsp + 0xd8]
mov rcx, qword [rbp - 1]
xor rcx, rsp
call fcn.140087230
movaps xmm7, xmmword [rsp + 0xb0]
add rsp, 0xe8
pop r15
pop rdi
pop rsi
pop rbp
ret
test r12d, r12d
js 0x140082f63
lea ebx, [r15 + r12]
movsxd rcx, ebx
lea eax, [r15 + 1]
movsxd rdx, eax
lea esi, [rbx + 1]
mov byte [rcx + r14 + 1], r13b
cmp rdx, 1
jle 0x140082f01
lea rax, [rcx + r14]
lea rcx, [rdx - 1]
cmp byte [rax], r13b
jne 0x140082ef8
mov byte [rax], 0x30
dec rax
sub rcx, 1
jne 0x140082ef0
test r14, r14
je 0x140082ff9
test esi, esi
jne 0x140082f2b
lea rax, [0x140088494]
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x7d], 1
jmp 0x140082e4e
movsxd rcx, ebx
add rcx, 2
call fcn.1400047a0
movsxd rbx, ebx
mov rdx, r14
mov rcx, rax
mov qword [rsp + 0x20], rax
mov rdi, rax
mov dword [rsp + 0x28], esi
mov dword [rbp - 0x7d], r13d
lea r8, [rbx + 1]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + rbx + 1], r13b
jmp 0x140082e4e
movsxd rax, esi
mov r8, r15
inc esi
mov dl, 0x30
movsxd rcx, esi
add rcx, r14
mov byte [r14 + rax], 0x2e
call sub.VCRUNTIME140.dll_memset
add esi, r15d
movsxd rax, esi
mov byte [r14 + rax], r13b
test r14, r14
je 0x14008301f
test esi, esi
je 0x140082f0e
movsxd rcx, esi
inc rcx
call fcn.1400047a0
movsxd rbx, esi
mov rdx, r14
mov r8, rbx
mov qword [rsp + 0x20], rax
mov rcx, rax
mov dword [rsp + 0x28], esi
mov rdi, rax
mov dword [rbp - 0x7d], r13d
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + rbx], r13b
jmp 0x140082e4e
call fcn.140086d5c
int3
lea rax, str.tos__:_nil_string
mov dword [rsp + 0x28], 0x11
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x7d], 1
call fcn.1400020c0
int3
lea rax, str.tos__:_nil_string
mov dword [rsp + 0x28], 0x11
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x7d], 1
call fcn.1400020c0
int3
lea rax, str.tos__:_nil_string
mov dword [rsp + 0x28], 0x11
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x7d], 1
call fcn.1400020c0
int3