Function at 0x140003860
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x470
movaps xmmword [rsp + 0x460], xmm6
mov rax, qword [0x140008070]
xor rax, rsp
mov qword [rsp + 0x450], rax
mov ebp, dword [rsp + 0x4d0]
mov rbx, qword [rsp + 0x4e0]
xor r12d, r12d
movaps xmm6, xmm0
test ebp, ebp
mov esi, 0x15e
mov r15d, r9d
cmovs ebp, r12d
mov r14d, r8d
mov dword [rsp + 0x24], r12d
cmp ebp, esi
mov edi, r12d
lea rcx, [rsp + 0x28]
cmovl esi, ebp
cmp dword [rsp + 0x4d8], r12d
je 0x1400038f7
movsx r9d, dl
lea rdx, str.__._d_c
mov r8d, esi
call qword [sym.imp.MSVCR120.dll_sprintf]
test eax, eax
js 0x140003b06
mov edi, ebp
sub edi, esi
jmp 0x140003910
movsx r8d, dl
lea rdx, str.___c
call qword [sym.imp.MSVCR120.dll_sprintf]
test eax, eax
js 0x140003b06
movaps xmm0, xmm6
call qword [sym.imp.MSVCR120.dll__dclass]
cmp ax, 2
je 0x14000394e
mov eax, r12d
xorps xmm0, xmm0
comisd xmm0, xmm6
seta al
test eax, eax
je 0x140003941
xorps xmm6, xmmword [0x140006660]
mov dword [rsp + 0x24], 0x2d
jmp 0x14000394e
test r14d, r14d
je 0x14000394e
mov dword [rsp + 0x24], 0x2b
movaps xmm2, xmm6
lea rdx, [rsp + 0x28]
lea rcx, [rsp + 0x50]
movq r8, xmm2
call qword [sym.imp.MSVCR120.dll_sprintf]
movsxd rsi, eax
test eax, eax
js 0x140003b06
test edi, edi
jle 0x140003986
movzx ecx, byte [rsp + rsi + 0x4f]
call qword [sym.imp.MSVCR120.dll_isdigit]
test eax, eax
cmove edi, r12d
mov eax, dword [rsp + 0x4c0]
sub eax, esi
sub eax, edi
cmovs eax, r12d
mov dword [rsp + 0x20], eax
test r15d, r15d
je 0x1400039a4
neg eax
mov dword [rsp + 0x20], eax
mov ecx, dword [rsp + 0x4c8]
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x24]
mov r9, rbx
call fcn.140003cd0
lea rcx, [rsp + 0x50]
test edi, edi
jle 0x140003a8d
mov edx, 0x65
call qword [sym.imp.MSVCR120.dll_strrchr]
mov rbp, rax
test rax, rax
jne 0x140003a34
lea edx, [rax + 0x45]
lea rcx, [rsp + 0x50]
call qword [sym.imp.MSVCR120.dll_strrchr]
mov rbp, rax
test rax, rax
jne 0x140003a34
lea rcx, [rsp + 0x50]
mov r8, rbx
mov edx, esi
call fcn.140003b50
mov rax, qword [rbx + 0x10]
dec edi
test rax, rax
je 0x140003a25
cmp qword [rbx], rax
jb 0x140003a25
cmp qword [rbx + 0x18], r12
jne 0x140003a1d
inc dword [rbx + 0x20]
jmp 0x140003a2e
mov rcx, rbx
call fcn.140002930
mov rax, qword [rbx]
mov byte [rax], 0x30
inc qword [rbx]
test edi, edi
jg 0x140003a02
jmp 0x140003a97
lea rax, [rsp + 0x50]
mov edx, ebp
lea rcx, [rsp + 0x50]
sub edx, eax
mov r8, rbx
call fcn.140003b50
nop word [rax + rax]
mov rax, qword [rbx + 0x10]
dec edi
test rax, rax
je 0x140003a73
cmp qword [rbx], rax
jb 0x140003a73
cmp qword [rbx + 0x18], r12
jne 0x140003a6b
inc dword [rbx + 0x20]
jmp 0x140003a7c
mov rcx, rbx
call fcn.140002930
mov rax, qword [rbx]
mov byte [rax], 0x30
inc qword [rbx]
test edi, edi
jg 0x140003a50
lea edx, [rsp + 0x50]
sub esi, ebp
mov rcx, rbp
add edx, esi
jmp 0x140003a8f
mov edx, esi
mov r8, rbx
call fcn.140003b50
mov eax, dword [rsp + 0x20]
test eax, eax
jns 0x140003b0a
neg eax
movsxd rsi, eax
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x140003af6
mov rdi, qword [rbx]
cmp rdi, rax
jb 0x140003af6
mov r9, qword [rbx + 0x18]
test r9, r9
jne 0x140003ac3
inc dword [rbx + 0x20]
jmp 0x140003aff
mov rcx, qword [rbx + 8]
sub rdi, rcx
cmp byte [rbx + 0x24], r12b
jne 0x140003aef
test rdi, rdi
je 0x140003aef
mov r8, rdi
mov edx, 1
call qword [sym.imp.MSVCR120.dll_fwrite]
add dword [rbx + 0x20], eax
cmp rax, rdi
je 0x140003aef
mov byte [rbx + 0x24], 1
mov rax, qword [rbx + 8]
mov qword [rbx], rax
mov rax, qword [rbx]
mov byte [rax], 0x20
inc qword [rbx]
dec rsi
jne 0x140003aa4
jmp 0x140003b0a
mov byte [rbx + 0x24], 1
mov rcx, qword [rsp + 0x450]
xor rcx, rsp
call fcn.140004890
lea r11, [rsp + 0x470]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret