Function at 0x140016fb0
Capabilities:
Write file on windows

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x20
mov ecx, 1
lea rsi, [0x140028308]
mov ebx, 0x1e
call qword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov rdi, rax
nop dword [rax]
mov r8, rbx
mov rcx, rsi
mov r9, rdi
mov edx, 1
call sub.ucrtbase.dll_fwrite
sub rbx, rax
add rsi, rax
test rbx, rbx
jg 0x14000eaf8
add rsp, 0x20
pop rbx
pop rsi
pop rdi
ret
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xb8
movaps xmmword [rsp + 0xa0], xmm6
mov eax, dword [rcx + 0x10]
mov rbx, rcx
mov ecx, eax
mov rsi, rdx
and ecx, 0x1f
je 0x14001713f
mov edx, eax
mov r9d, eax
mov ebp, eax
mov edi, 0xffffffff
shr edx, 0x1b
and edx, 0xf
lea r8d, [rdx + 2]
mov edx, 0
cmove r8d, edx
mov edx, eax
shr r9d, 0x11
shr edx, 9
mov r14d, r9d
and r9d, 0x3ff
and edx, 0x7f
shr ebp, 8
and r14w, 0x3ff
and ebp, 1
cmp edx, 0x7f
cmovne edi, edx
test eax, eax
jns 0x140017160
test r14w, r14w
jne 0x140017228
mov dword [rsp + 0x50], 0xffffffff
mov r12d, eax
mov byte [rsp + 0x5c], 0x30
mov r15d, 1
xor r13d, r13d
and r12d, 0x80
cmp ecx, 0x10
je 0x14001719e
cmp ecx, 0x11
ja case.0x14001707b.0
lea r11, [0x140028840]
mov r10d, ecx
movsxd r10, dword [r11 + r10*4]
add r10, r11
jmp r10
cmp ecx, 6
je 0x140018d78
mov rbx, qword [rbx + 0x18]
test r8d, r8d
jne 0x1400178f8
test r14w, r14w
jne 0x140018d48
mov ebp, 1
lea rdi, [0x1400287e2]
test rbx, rbx
jne 0x140017a38
mov eax, dword [rsi + 0x14]
mov ebx, dword [rsi + 0x18]
add eax, ebp
cmp eax, ebx
jle 0x1400194da
test ebx, ebx
jle 0x140019582
nop dword [rax]
add ebx, ebx
cmp eax, ebx
jg 0x1400170d0
movsxd rcx, dword [rsi]
movsxd r12, ebx
imul rcx, r12
call fcn.140011340
mov rdx, qword [rsi + 8]
mov rcx, rax
test rdx, rdx
je 0x140019547
movsxd r8, dword [rsi + 0x14]
movsxd rax, dword [rsi]
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov dword [rsi + 0x10], 0
mov qword [rsi + 8], rax
mov rcx, rax
mov dword [rsi + 0x18], ebx
cmp rdi, rax
je 0x1400194ea
movsxd rdx, dword [rsi]
movsxd rax, dword [rsi + 0x14]
movsxd r8, ebp
imul rax, rdx
imul r8, rdx
mov rdx, rdi
add rcx, rax
call sub.ucrtbase.dll_memcpy
add dword [rsi + 0x14], ebp
movaps xmm6, xmmword [rsp + 0xa0]
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
test r14w, r14w
jne 0x140017238
mov dword [rsp + 0x50], 0xffffffff
mov r10d, eax
mov r12d, eax
mov byte [rsp + 0x5c], 0x20
xor r15d, r15d
shr r10d, 5
and r12d, 0x80
not r10d
and r10d, 1
mov r13d, r10d
cmp ecx, 0x10
jne 0x140017061
mov rbp, qword [rbx + 0x18]
mov edi, dword [rbx + 0x20]
test r12d, r12d
je 0x1400178b8
lea ecx, [rdi + 1]
movsxd rcx, ecx
call fcn.140011790
mov rbx, rax
test edi, edi
jle 0x14001abea
lea eax, [rdi - 1]
mov ecx, edi
cmp eax, 6
jbe 0x1400171e2
lea r8, [rbp + 1]
mov rdx, rbx
sub rdx, r8
cmp rdx, 0xe
ja 0x140017638
movsxd r12, edi
xor edx, edx
nop word [rax + rax]
movzx eax, byte [rbp + rdx]
lea r8d, [rax - 0x61]
lea ecx, [rax - 0x20]
cmp r8b, 0x1a
cmovb eax, ecx
mov byte [rbx + rdx], al
add rdx, 1
cmp rdx, r12
jne 0x1400171f0
mov byte [rbx + r12], 0
test r14w, r14w
jne 0x1400178d1
jmp 0x14001781e
mov dword [rsp + 0x50], r9d
jmp 0x140017040
mov dword [rsp + 0x50], r9d
jmp 0x140017172
test r9d, r9d
jne 0x140017c80
cmp edx, 0x7f
jne 0x140017c80
cmp ecx, 0x12
ja case.0x140017cae.0
lea rdx, [0x140028888]
mov ecx, ecx
movsxd rax, dword [rdx + rcx*4]
add rax, rdx
jmp rax
mov rdi, qword [rbx + 0x18]
cmp ecx, 7
je 0x1400174b8
test r8d, r8d
jne 0x1400174c8
test r14w, r14w
jne 0x140017379
lea rbx, [0x1400287e2]
mov ebp, 1
test rdi, rdi
je 0x1400172c8
movabs rax, 0x8000000000000000
cmp rdi, rax
jne 0x140017ba5
lea rbx, str._9223372036854775808
mov ebp, 0x14
mov eax, dword [rsi + 0x14]
mov edi, dword [rsi + 0x18]
add eax, ebp
cmp eax, edi
jle 0x1400198a9
test edi, edi
jle 0x1400199f6
add edi, edi
cmp eax, edi
jg 0x1400172e0
movsxd rcx, dword [rsi]
movsxd r12, edi
imul rcx, r12
call fcn.140011340
mov rdx, qword [rsi + 8]
mov rcx, rax
test rdx, rdx
je 0x14001993b
movsxd r8, dword [rsi + 0x14]
movsxd rax, dword [rsi]
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov dword [rsi + 0x10], 0
mov qword [rsi + 8], rax
mov rcx, rax
mov dword [rsi + 0x18], edi
cmp rax, rbx
je 0x1400194ea
movsxd rdx, dword [rsi]
movsxd rax, dword [rsi + 0x14]
movsxd r8, ebp
imul rax, rdx
imul r8, rdx
mov rdx, rbx
add rcx, rax
call sub.ucrtbase.dll_memcpy
jmp 0x14001713c
cmp ecx, 3
je 0x140018d90
movsx rdi, word [rbx + 0x18]
test r8d, r8d
jne 0x1400174c8
test r14w, r14w
je 0x140017b90
mov rcx, rdi
mov r9, rdi
mov qword [rsp + 0x30], rsi
mov r8d, dword [rsp + 0x50]
neg rcx
mov dword [rsp + 0x28], r13d
movzx edx, byte [rsp + 0x5c]
not r9
mov byte [rsp + 0x20], bpl
cmovs rcx, rdi
shr r9, 0x3f
call fcn.14001ed60
jmp 0x14001713f
cmp ecx, 2
je 0x140018d80
movzx ebx, word [rbx + 0x18]
jmp 0x14001708d
mov rdx, qword [rbx + 0x18]
mov r8d, 0x10
lea rcx, [rsp + 0x70]
call fcn.14000e450
mov rdi, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r8, rdi
mov rbx, rbp
mov edx, edi
sar r8, 0x20
mov r15d, r8d
test r12d, r12d
jne 0x140018dd0
test r14w, r14w
jne 0x140017b20
test edi, edi
je 0x140017b3d
jle 0x140017b3d
test rbx, rbx
je 0x140017b3d
mov eax, dword [rsi + 0x14]
mov ebp, dword [rsi + 0x18]
add eax, edi
cmp eax, ebp
jle 0x1400195b1
test ebp, ebp
jle 0x140019928
nop word [rax + rax]
add ebp, ebp
cmp eax, ebp
jg 0x140017440
movsxd rcx, dword [rsi]
movsxd r12, ebp
imul rcx, r12
call fcn.140011340
mov rdx, qword [rsi + 8]
mov rcx, rax
test rdx, rdx
je 0x140019896
movsxd r8, dword [rsi + 0x14]
movsxd rax, dword [rsi]
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov dword [rsi + 0x10], 0
mov qword [rsi + 8], rax
mov rcx, rax
mov dword [rsi + 0x18], ebp
cmp rax, rbx
je 0x140019b24
movsxd rdx, dword [rsi]
movsxd rax, dword [rsi + 0x14]
movsxd r8, edi
imul rax, rdx
imul r8, rdx
mov rdx, rbx
add rcx, rax
call sub.ucrtbase.dll_memcpy
add dword [rsi + 0x14], edi
jmp 0x140017b3d
movsxd rdi, dword [rbx + 0x18]
test r8d, r8d
je 0x14001736f
nop dword [rax]
cmp r8d, 3
mov eax, 2
lea rcx, [rsp + 0x70]
cmove r8d, eax
test rdi, rdi
jns 0x140017d48
test r15b, r15b
je 0x140017d48
neg rdi
mov rdx, rdi
call fcn.14000e120
mov rbx, qword [rsp + 0x78]
mov r15, qword [rsp + 0x70]
mov ebp, ebx
mov rdi, r15
shr rbx, 0x20
test r12d, r12d
jne 0x1400194d0
lea rdx, [rsp + 0x80]
mov rcx, rsi
mov byte [rsp + 0x80], 0x2d
call fcn.140011f30
sub dword [rsp + 0x50], 1
test r14w, r14w
jne 0x140018da8
test ebp, ebp
je 0x1400175e8
test ebp, ebp
jle 0x1400175e8
test rdi, rdi
je 0x1400175e8
mov eax, dword [rsi + 0x14]
mov r12d, dword [rsi + 0x18]
add eax, ebp
cmp eax, r12d
jle 0x140019a24
test r12d, r12d
jle 0x140019a77
nop
add r12d, r12d
cmp eax, r12d
jg 0x140017570
movsxd rcx, dword [rsi]
movsxd r13, r12d
imul rcx, r13
call fcn.140011340
mov rdx, qword [rsi + 8]
mov rcx, rax
test rdx, rdx
je 0x140019a4f
movsxd r8, dword [rsi + 0x14]
movsxd rax, dword [rsi]
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov dword [rsi + 0x10], 0
mov qword [rsi + 8], rax
mov rcx, rax
mov dword [rsi + 0x18], r12d
cmp rax, rdi
je 0x140019f9b
movsxd rdx, dword [rsi]
movsxd rax, dword [rsi + 0x14]
movsxd r8, ebp
imul rax, rdx
imul r8, rdx
mov rdx, rdi
add rcx, rax
call sub.ucrtbase.dll_memcpy
add dword [rsi + 0x14], ebp
nop word [rax + rax]
cmp ebx, 0xfa1d05ee
jne 0x14001713f
mov ecx, 1
lea rsi, [0x140028308]
mov ebx, 0x1e
call qword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov rdi, rax
nop
mov r8, rbx
mov rcx, rsi
mov r9, rdi
mov edx, 1
call sub.ucrtbase.dll_fwrite
sub rbx, rax
add rsi, rax
test rbx, rbx
jg 0x140017610
jmp 0x14001713f
cmp eax, 0xe
jbe 0x140019595
mov edx, edi
movdqa xmm5, xmmword [0x14002bc20]
xor eax, eax
pxor xmm6, xmm6
shr edx, 4
movdqa xmm4, xmmword [0x14002bc30]
movdqa xmm3, xmmword [0x14002bc40]
shl rdx, 4
movdqu xmm2, xmmword [rbp + rax]
movdqa xmm0, xmm2
movdqa xmm1, xmm2
paddb xmm0, xmm5
paddb xmm1, xmm3
psubusb xmm0, xmm4
pcmpeqb xmm0, xmm6
pand xmm1, xmm0
pandn xmm0, xmm2
por xmm0, xmm1
movups xmmword [rbx + rax], xmm0
add rax, 0x10
cmp rax, rdx
jne 0x140017668
mov eax, edi
and eax, 0xfffffff0
mov edx, eax
cmp edi, eax
je 0x140019a60
mov ecx, edi
sub ecx, eax
lea r8d, [rcx - 1]
cmp r8d, 6
jbe 0x14001770f
movq xmm0, qword [0x14002bc20]
movq xmm2, qword [rbp + rdx]
movq xmm3, qword [0x14002bc30]
movq xmm1, qword [0x14002bc40]
paddb xmm0, xmm2
paddb xmm1, xmm2
psubusb xmm0, xmm3
pxor xmm3, xmm3
pcmpeqb xmm0, xmm3
pand xmm1, xmm0
pandn xmm0, xmm2
por xmm0, xmm1
movq qword [rbx + rdx], xmm0
mov edx, ecx
and edx, 0xfffffff8
add eax, edx
and ecx, 7
je 0x1400177fb
movsxd rcx, eax
movzx edx, byte [rbp + rcx]
lea r9d, [rdx - 0x61]
lea r8d, [rdx - 0x20]
cmp r9b, 0x1a
cmovb edx, r8d
mov byte [rbx + rcx], dl
lea edx, [rax + 1]
cmp edx, edi
jge 0x1400177fb
movsxd rdx, edx
movzx ecx, byte [rbp + rdx]
lea r9d, [rcx - 0x61]
lea r8d, [rcx - 0x20]
cmp r9b, 0x1a
cmovb ecx, r8d
mov byte [rbx + rdx], cl
lea edx, [rax + 2]
cmp edx, edi
jge 0x1400177fb
movsxd rdx, edx
movzx ecx, byte [rbp + rdx]
lea r9d, [rcx - 0x61]
lea r8d, [rcx - 0x20]
cmp r9b, 0x1a
cmovb ecx, r8d
mov byte [rbx + rdx], cl
lea edx, [rax + 3]
cmp edx, edi
jge 0x1400177fb
movsxd rdx, edx
movzx ecx, byte [rbp + rdx]
lea r9d, [rcx - 0x61]
lea r8d, [rcx - 0x20]
cmp r9b, 0x1a
cmovb ecx, r8d
mov byte [rbx + rdx], cl
lea edx, [rax + 4]
cmp edi, edx
jle 0x1400177fb
movsxd rdx, edx
movzx ecx, byte [rbp + rdx]
lea r9d, [rcx - 0x61]
lea r8d, [rcx - 0x20]
cmp r9b, 0x1a
cmovb ecx, r8d
mov byte [rbx + rdx], cl
lea edx, [rax + 5]
cmp edx, edi
jge 0x1400177fb
movsxd rdx, edx
movzx ecx, byte [rbp + rdx]
lea r9d, [rcx - 0x61]
lea r8d, [rcx - 0x20]
cmp r9b, 0x1a
cmovb ecx, r8d
add eax, 6
mov byte [rbx + rdx], cl
cmp eax, edi
jge 0x1400177fb
cdqe
movzx edx, byte [rbp + rax]
lea r8d, [rdx - 0x61]
lea ecx, [rdx - 0x20]
cmp r8b, 0x1a
cmovb edx, ecx
mov byte [rbx + rax], dl
movsxd r12, edi
mov byte [rbx + r12], 0
test rbx, rbx
je 0x1400192a3
test r14w, r14w
jne 0x1400178d1
test edi, edi
jle 0x14001713f
mov eax, dword [rsi + 0x14]
mov ebp, dword [rsi + 0x18]
add eax, edi
cmp eax, ebp
jle 0x140019557
test ebp, ebp
jle 0x14001959e
nop word cs:[rax + rax]
add ebp, ebp
cmp eax, ebp
jg 0x140017840
movsxd rcx, dword [rsi]
movsxd r13, ebp
imul rcx, r13
call fcn.140011340
mov rdx, qword [rsi + 8]
mov rcx, rax
test rdx, rdx
je 0x140019572
movsxd r8, dword [rsi + 0x14]
movsxd rax, dword [rsi]
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov dword [rsi + 0x10], 0
mov qword [rsi + 8], rax
mov rcx, rax
mov dword [rsi + 0x18], ebp
cmp rax, rbx
je 0x1400198ca
movsxd r8, dword [rsi]
movsxd rax, dword [rsi + 0x14]
mov rdx, rbx
imul rax, r8
imul r8, r12
add rcx, rax
call sub.ucrtbase.dll_memcpy
add dword [rsi + 0x14], edi
jmp 0x14001713f
test edi, edi
jne 0x140017af0
lea rbx, [0x1400284a3]
test r14w, r14w
je 0x14001713f
mov qword [rsp + 0x28], rsi
mov r9d, dword [rsp + 0x50]
mov edx, edi
mov rcx, rbx
mov dword [rsp + 0x20], r13d
movzx r8d, byte [rsp + 0x5c]
call fcn.140021570
jmp 0x14001713f
cmp r8d, 3
mov eax, 2
mov rdx, rbx
cmove r8d, eax
lea rcx, [rsp + 0x70]
call fcn.14000e450
mov rdi, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r8, rdi
mov rbx, rbp
mov edx, edi
sar r8, 0x20
mov r15d, r8d
test r12d, r12d
jne 0x140017cb0
test r14w, r14w
jne 0x1400190a0
test edi, edi
je 0x1400179df
jle 0x1400179df
test rbx, rbx
je 0x1400179df
mov eax, dword [rsi + 0x14]
mov ebp, dword [rsi + 0x18]
add eax, edi
cmp eax, ebp
jle 0x140019a09
test ebp, ebp
jle 0x140019a8b
nop dword [rax]
add ebp, ebp
cmp eax, ebp
jg 0x140017970
movsxd rcx, dword [rsi]
movsxd r12, ebp
imul rcx, r12
call fcn.140011340
mov rdx, qword [rsi + 8]
mov rcx, rax
test rdx, rdx
je 0x140019a3f
movsxd r8, dword [rsi + 0x14]
movsxd rax, dword [rsi]
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov dword [rsi + 0x10], 0
mov qword [rsi + 8], rax
mov rcx, rax
mov dword [rsi + 0x18], ebp
cmp rbx, rax
je 0x14001a013
movsxd rdx, dword [rsi]
movsxd rax, dword [rsi + 0x14]
movsxd r8, edi
imul rax, rdx
imul r8, rdx
mov rdx, rbx
add rcx, rax
call sub.ucrtbase.dll_memcpy
add dword [rsi + 0x14], edi
cmp r15d, 0xfa1d05ee
jne 0x14001713f
mov ecx, 1
lea rsi, [0x140028308]
mov ebx, 0x1e
call qword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov rdi, rax
nop word cs:[rax + rax]
mov r8, rbx
mov rcx, rsi
mov r9, rdi
mov edx, 1
call sub.ucrtbase.dll_fwrite
sub rbx, rax
add rsi, rax
test rbx, rbx
jg 0x140017a10
jmp 0x14001713f
mov ecx, 0x15
call fcn.140011790
mov r9, qword [0x1400607a0]
mov r8d, 0x13
movabs r10, 0x28f5c28f5c28f5c3
mov byte [rax + 0x14], 0
mov rdi, rax
lea r11, [rax + 0x12]
nop dword [rax]
mov rdx, rbx
mov rcx, rbx
mov r15, r11
shr rdx, 2
mov rbp, rcx
lea r11, [r11 - 2]
mov rax, rdx
mul r10
mov rbx, rdx
and rdx, 0xfffffffffffffffc
shr rbx, 2
add rdx, rbx
lea rax, [rdx + rdx*4]
shl rax, 2
sub rbp, rax
lea r12, [rbp + rbp + 1]
movzx edx, byte [r9 + rbp*2]
movzx eax, byte [r9 + r12]
mov ah, dl
mov word [r11 + 2], ax
mov eax, r8d
lea r8d, [r8 - 2]
cmp rcx, 0x63
ja 0x140017a68
mov rdx, r15
cmp r12, 0x13
jbe 0x1400194c0
sub eax, 1
mov r8d, 0x15
mov ebp, 0x14
mov rcx, rdi
sub r8d, eax
sub ebp, eax
movsxd r8, r8d
call sub.ucrtbase.dll_memmove
jmp 0x1400170b5
lea ecx, [rdi + 1]
movsxd r12, edi
movsxd rcx, ecx
call fcn.140011790
mov r8, r12
mov rdx, rbp
mov rbx, rax
mov rcx, rax
call sub.ucrtbase.dll_memcpy
mov byte [rbx + r12], 0
jmp 0x14001780c
mov qword [rsp + 0x28], rsi
mov r9d, dword [rsp + 0x50]
mov rcx, rbx
mov dword [rsp + 0x20], r13d
movzx r8d, byte [rsp + 0x5c]
call fcn.140021570
cmp r15d, 0xfa1d05ee
jne 0x14001713f
mov ecx, 1
lea rsi, [0x140028308]
mov ebx, 0x1e
call qword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov rdi, rax
nop dword [rax]
mov r8, rbx
mov rcx, rsi
mov r9, rdi
mov edx, 1
call sub.ucrtbase.dll_fwrite
sub rbx, rax
add rsi, rax
test rbx, rbx
jg 0x140017b68
jmp 0x14001713f
lea rbx, [0x1400287e2]
mov ebp, 1
test rdi, rdi
je 0x1400172c8
mov ecx, 0x15
call fcn.140011790
xor ecx, ecx
mov rbx, rax
test rdi, rdi
jns 0x140017bc1
neg rdi
mov ecx, 1
mov byte [rbx + 0x14], 0
lea r11, [rbx + 0x12]
mov rdx, rdi
mov r15d, ecx
mov r9, qword [0x1400607a0]
mov r8d, 0x13
movabs r10, 0x28f5c28f5c28f5c3
nop word cs:[rax + rax]
mov rdi, rdx
shr rdx, 2
mov rax, rdx
mul r10
shr rdx, 2
imul eax, edx, 0x64
sub edi, eax
lea r12d, [rdi + rdi]
mov rdi, r11
lea r11, [r11 - 2]
movzx eax, byte [r9 + r12 + 1]
movzx ecx, byte [r9 + r12]
lea rbp, [r12 + 1]
mov ah, cl
mov word [r11 + 2], ax
mov eax, r8d
sub r8d, 2
test rdx, rdx
jne 0x140017bf0
mov ecx, r15d
mov rdx, rdi
lea r9d, [rax - 1]
cmp rbp, 0x13
jg 0x140017c4e
mov r8d, r9d
add rdx, 1
mov r9d, eax
test cl, cl
je 0x140017c5e
movsxd rdx, r8d
mov r9d, r8d
add rdx, rbx
mov byte [rdx], 0x2d
mov r8d, 0x15
mov ebp, 0x14
mov rcx, rbx
sub r8d, r9d
sub ebp, r9d
movsxd r8, r8d
call sub.ucrtbase.dll_memmove
jmp 0x1400172c8
cmp edi, 0xffffffff
mov edx, 3
cmove edi, edx
shr eax, 0x10
mov r15d, eax
and r15d, 1
cmp ecx, 0x12
ja case.0x140017cae.0
lea r8, [0x1400288d4]
mov ecx, ecx
movsxd rdx, dword [r8 + rcx*4]
add rdx, r8
jmp rdx
lea ecx, [rdi + 1]
mov qword [rsp + 0x68], r8
movsxd rcx, ecx
mov dword [rsp + 0x60], edi
call fcn.140011790
test edi, edi
mov edx, dword [rsp + 0x60]
mov r8, qword [rsp + 0x68]
mov rbx, rax
jle 0x140019489
lea eax, [rdi - 1]
mov r9d, edi
cmp eax, 6
jbe 0x140017cf7
lea r10, [rbp + 1]
mov rcx, rbx
sub rcx, r10
cmp rcx, 0xe
ja 0x1400192b0
movsxd r11, edi
xor ecx, ecx
nop dword [rax]
movzx eax, byte [rbp + rcx]
lea r10d, [rax - 0x61]
lea r9d, [rax - 0x20]
cmp r10b, 0x1a
cmovb eax, r9d
mov byte [rbx + rcx], al
add rcx, 1
cmp rcx, r11
jne 0x140017d00
mov byte [rbx + rcx], 0
cmp r8d, 0xfa1d05ee
je 0x140019b96
test r14w, r14w
jne 0x140019078
xor r15d, r15d
jmp 0x140017955
mov rdx, rdi
call fcn.14000e120
mov rbx, qword [rsp + 0x78]
mov r15, qword [rsp + 0x70]
mov ebp, ebx
mov rdi, r15
shr rbx, 0x20
test r12d, r12d
je 0x140017530
xor edi, edi
lea ecx, [rbp + 1]
movsxd rcx, ecx
call fcn.140011790
mov r12, rax
test ebp, ebp
jle 0x140019292
lea eax, [rbp - 1]
mov ecx, ebp
cmp eax, 6
jbe 0x140017da2
lea r8, [r15 + 1]
mov rdx, r12
sub rdx, r8
cmp rdx, 0xe
ja 0x1400190c2
movsxd r9, ebp
xor edx, edx
nop word [rax + rax]
movzx eax, byte [r15 + rdx]
lea r8d, [rax - 0x61]
lea ecx, [rax - 0x20]
cmp r8b, 0x1a
cmovb eax, ecx
mov byte [r12 + rdx], al
add rdx, 1
cmp rdx, r9
jne 0x140017db0
mov byte [r12 + rdx], 0
cmp ebx, 0xfa1d05ee
je 0x140019bf6
test dil, dil
jne 0x14001a942
test r14w, r14w
jne 0x140018da3
test ebp, ebp
je 0x14001713f
mov rdi, r12
xor ebx, ebx
jmp 0x140017542
mov eax, dword [rsi + 0x14]
mov ebx, dword [rsi + 0x18]
add eax, 0xc
cmp eax, ebx
jle 0x14001995e
test ebx, ebx
jle 0x14001a36b
nop dword [rax]
add ebx, ebx
cmp eax, ebx
jg 0x140017e30
movsxd rcx, dword [rsi]
movsxd rax, ebx
imul rcx, rax
call fcn.140011340
mov rdx, qword [rsi + 8]
mov rcx, rax
test rdx, rdx
je 0x14001a2e1
movsxd r8, dword [rsi + 0x14]
movsxd rax, dword [rsi]
imul r8, rax
call sub.ucrtbase.dll_memcpy
lea rdx, str.ERROR_
mov dword [rsi + 0x10], 0
mov qword [rsi + 8], rax
mov rcx, rax
mov dword [rsi + 0x18], ebx
cmp rax, rdx
je 0x14001a550
movsxd rax, dword [rsi]
movsxd r8, dword [rsi + 0x14]
imul r8, rax
add rcx, r8
lea r8, [rax + rax*2]
shl r8, 2
call sub.ucrtbase.dll_memcpy
add dword [rsi + 0x14], 0xc
jmp 0x14001713f
mov rax, qword [rbx + 0x18]
mov ebp, 1
lea rdi, [0x1400287e2]
test rax, rax
jne 0x1400195cc
mov eax, dword [rsi + 0x14]
mov ebx, dword [rsi + 0x18]
add eax, ebp
cmp eax, ebx
jle 0x14001a2c1
test ebx, ebx
jle 0x14001a37e
nop dword [rax + rax]
add ebx, ebx
cmp eax, ebx
jg 0x140017ee0
movsxd rcx, dword [rsi]
movsxd rax, ebx
imul rcx, rax
call fcn.140011340
mov rdx, qword [rsi + 8]
mov rcx, rax
test rdx, rdx
je 0x14001a2d3
movsxd r8, dword [rsi + 0x14]
movsxd rax, dword [rsi]
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov dword [rsi + 0x10], 0
mov qword [rsi + 8], rax
mov rcx, rax
mov dword [rsi + 0x18], ebx
cmp rdi, rax
jne 0x14001711f
movsxd rax, dword [rsi]
movsxd rcx, dword [rsi + 0x18]
imul rcx, rax
mov eax, 1
test rcx, rcx
cmove rcx, rax
call fcn.140011a50
mov rbx, qword [rsi + 8]
mov edi, dword [rsi + 0x14]
mov r9, rax
test rbx, rbx
je 0x140017f73
movsxd r8, dword [rsi + 0x18]
movsxd rax, dword [rsi]
mov rcx, r9
mov rdx, rbx
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov r9, rax
movsxd rdx, dword [rsi]
movsxd rax, edi
movsxd r8, ebp
imul rax, rdx
imul r8, rdx
mov rdx, r9
lea rcx, [rbx + rax]
call sub.ucrtbase.dll_memcpy
jmp 0x14001713c
mov ebx, dword [rbx + 0x18]
mov ecx, 5
call fcn.140011790
mov rdi, rax
cmp ebx, 0x7f
jle 0x14001994e
cmp ebx, 0x7ff
jle 0x14001a0db
cmp ebx, 0xffff
jle 0x14001a228
cmp ebx, 0x10ffff
jg 0x14001713f
mov r8d, ebx
mov eax, ebx
mov ecx, ebx
mov edx, ebx
sar r8d, 6
and eax, 0x3f
sar ecx, 0xc
mov byte [rdi + 4], 0
and r8d, 0x3f
or al, 0x80
and ecx, 0x3f
sar edx, 0x12
or r8b, 0x80
shl eax, 8
or cl, 0x80
or edx, 0xfffffff0
or eax, r8d
movzx edx, dl
mov ebp, 4
shl eax, 8
or eax, ecx
shl eax, 8
or eax, edx
mov dword [rdi], eax
mov eax, dword [rsi + 0x14]
mov ebx, dword [rsi + 0x18]
add eax, ebp
cmp eax, ebx
jle 0x14001a21f
test ebx, ebx
jle 0x14001a358
nop dword [rax]
add ebx, ebx
cmp eax, ebx
jg 0x140018038
movsxd rcx, dword [rsi]
movsxd rax, ebx
imul rcx, rax
call fcn.140011340
mov rdx, qword [rsi + 8]
mov rcx, rax
test rdx, rdx
jne 0x140017f05
xor r8d, r8d
mov qword [rsi + 8], rax
mov dword [rsi + 0x10], r8d
mov dword [rsi + 0x18], ebx
cmp rcx, rdi
je 0x140017f2f
nop dword [rax]
test rcx, rcx
je 0x14001713c
jmp 0x14001711f
movsd xmm1, qword [rbx + 0x18]
pxor xmm0, xmm0
ucomisd xmm1, xmm0
jp 0x14001809b
je 0x140019aa7
ucomisd xmm1, qword [0x14002bca0]
jp 0x1400180ab
je 0x140019ee0
ucomisd xmm1, qword [0x14002bca8]
jp 0x1400180f0
jne 0x1400180f0
test r12d, r12d
mov qword [rsp + 0x28], rsi
lea rdx, str.INF
lea rcx, [0x1400287f9]
mov dword [rsp + 0x20], r13d
cmovne rcx, rdx
mov r9d, dword [rsp + 0x50]
mov edx, 4
movzx r8d, byte [rsp + 0x5c]
call fcn.140021570
movsd xmm1, qword [rbx + 0x18]
ucomisd xmm1, qword [0x14002bcb0]
jp 0x140018135
jne 0x140018135
test r12d, r12d
mov qword [rsp + 0x28], rsi
lea rdx, str._INF
lea rcx, [0x140028803]
mov dword [rsp + 0x20], r13d
cmovne rcx, rdx
mov r9d, dword [rsp + 0x50]
mov edx, 4
movzx r8d, byte [rsp + 0x5c]
call fcn.140021570
movsd xmm1, qword [rbx + 0x18]
pxor xmm0, xmm0
mov edx, 1
comisd xmm0, xmm1
movapd xmm0, xmm1
jbe 0x140018152
xorpd xmm0, xmmword [0x14002bc70]
xor edx, edx
movsd xmm2, qword [0x14002bcb8]
comisd xmm2, xmm0
jbe 0x14001816e
comisd xmm0, xmmword [0x14002bc98]
jae 0x14001a4c9
mov dword [rsp + 0x38], r13d
movzx r8d, byte [rsp + 0x5c]
lea rbx, [rsp + 0x70]
mov byte [rsp + 0x30], bpl
mov r9d, dword [rsp + 0x50]
mov rcx, rbx
mov dword [rsp + 0x20], edi
mov byte [rsp + 0x40], r15b
mov byte [rsp + 0x28], dl
call fcn.1400202c0
mov r8, qword [rsp + 0x78]
mov r13, qword [rsp + 0x70]
mov r14, r8
mov edi, r8d
sar r14, 0x20
mov ebp, r14d
test r12d, r12d
jne 0x14001a17e
test edi, edi
je 0x140018d30
jle 0x140018d30
test r13, r13
je 0x140018d30
mov eax, dword [rsi + 0x14]
mov ebx, dword [rsi + 0x18]
add eax, edi
cmp eax, ebx
jle 0x14001822a
test ebx, ebx
jle 0x14001a7c8
add ebx, ebx
cmp eax, ebx
jg 0x1400181e8
movsxd rcx, dword [rsi]
movsxd rax, ebx
imul rcx, rax
call fcn.140011340
mov rdx, qword [rsi + 8]
mov rcx, rax
test rdx, rdx
je 0x14001821c
movsxd r8, dword [rsi + 0x14]
movsxd rax, dword [rsi]
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov rcx, rax
mov qword [rsi + 8], rcx
mov dword [rsi + 0x10], 0
mov dword [rsi + 0x18], ebx
mov rax, qword [rsi + 8]
cmp r13, rax
je 0x14001a5b3
test rax, rax
je 0x14001825a
movsxd r8, dword [rsi]
movsxd rdx, dword [rsi + 0x14]
imul rdx, r8
lea rcx, [rax + rdx]
movsxd rax, edi
mov rdx, r13
imul r8, rax
call sub.ucrtbase.dll_memcpy
add dword [rsi + 0x14], edi
jmp 0x140018d30
movsd xmm1, qword [rbx + 0x18]
xor edx, edx
movabs rcx, 0x8000000000000000
movq rax, xmm1
cmp rax, rcx
je 0x140018288
pxor xmm0, xmm0
comisd xmm0, xmm1
setbe dl
mov dword [rsp + 0x38], r13d
movzx r8d, byte [rsp + 0x5c]
lea rbx, [rsp + 0x70]
mov byte [rsp + 0x30], bpl
mov r9d, dword [rsp + 0x50]
mov rcx, rbx
mov dword [rsp + 0x20], edi
mov byte [rsp + 0x40], r15b
mov byte [rsp + 0x28], dl
call fcn.14001f5f0
mov r8, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r13, r8
mov edi, r8d
sar r13, 0x20
mov r14d, r13d
test r12d, r12d
jne 0x140019c99
test edi, edi
je 0x14001837f
jle 0x14001837f
test rbp, rbp
je 0x14001837f
mov eax, dword [rsi + 0x14]
mov ebx, dword [rsi + 0x18]
add eax, edi
cmp eax, ebx
jle 0x140019c7e
test ebx, ebx
jle 0x14001a4a3
nop word cs:[rax + rax]
add ebx, ebx
cmp eax, ebx
jg 0x140018310
movsxd rcx, dword [rsi]
movsxd rax, ebx
imul rcx, rax
call fcn.140011340
mov rdx, qword [rsi + 8]
mov rcx, rax
test rdx, rdx
je 0x140019f41
movsxd r8, dword [rsi + 0x14]
movsxd rax, dword [rsi]
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov dword [rsi + 0x10], 0
mov qword [rsi + 8], rax
mov rcx, rax
mov dword [rsi + 0x18], ebx
cmp rbp, rax
je 0x14001a075
movsxd rdx, dword [rsi]
movsxd rax, dword [rsi + 0x14]
movsxd r8, edi
imul rax, rdx
imul r8, rdx
mov rdx, rbp
add rcx, rax
call sub.ucrtbase.dll_memcpy
add dword [rsi + 0x14], edi
cmp r14d, 0xfa1d05ee
jne 0x14001713f
jmp 0x1400187df
movss xmm1, dword [rbx + 0x18]
pxor xmm0, xmm0
ucomiss xmm1, xmm0
jp 0x1400183a5
je 0x140019aa7
ucomiss xmm1, dword [0x14002bc88]
jp 0x1400183b4
je 0x140019ee0
ucomiss xmm1, dword [0x14002bc8c]
jp 0x1400183f8
jne 0x1400183f8
test r12d, r12d
mov qword [rsp + 0x28], rsi
lea rdx, str.INF
lea rcx, [0x1400287f9]
mov dword [rsp + 0x20], r13d
cmovne rcx, rdx
mov r9d, dword [rsp + 0x50]
mov edx, 4
movzx r8d, byte [rsp + 0x5c]
call fcn.140021570
movss xmm1, dword [rbx + 0x18]
ucomiss xmm1, dword [0x14002bc90]
jp 0x14001843c
jne 0x14001843c
test r12d, r12d
mov qword [rsp + 0x28], rsi
lea rdx, str._INF
lea rcx, [0x140028803]
mov dword [rsp + 0x20], r13d
cmovne rcx, rdx
mov r9d, dword [rsp + 0x50]
mov edx, 4
movzx r8d, byte [rsp + 0x5c]
call fcn.140021570
movss xmm1, dword [rbx + 0x18]
pxor xmm0, xmm0
mov edx, 1
comiss xmm0, xmm1
movaps xmm0, xmm1
jbe 0x140018456
xorps xmm0, xmmword [0x14002bc50]
xor edx, edx
lea rbx, [rsp + 0x70]
mov byte [rsp + 0x40], r15b
mov r9d, dword [rsp + 0x50]
cvtss2sd xmm1, xmm1
movss xmm2, dword [0x14002bc94]
mov dword [rsp + 0x38], r13d
mov rcx, rbx
mov byte [rsp + 0x30], bpl
movzx r8d, byte [rsp + 0x5c]
comiss xmm2, xmm0
mov byte [rsp + 0x28], dl
mov dword [rsp + 0x20], edi
jbe 0x1400184a3
cvtss2sd xmm0, xmm0
comisd xmm0, xmmword [0x14002bc98]
jae 0x14001a523
call fcn.1400202c0
mov r8, qword [rsp + 0x78]
mov r13, qword [rsp + 0x70]
mov r14, r8
mov edi, r8d
sar r14, 0x20
mov ebp, r14d
test r12d, r12d
jne 0x14001a148
test edi, edi
je 0x140018d30
jle 0x140018d30
test r13, r13
je 0x140018d30
mov eax, dword [rsi + 0x14]
mov ebx, dword [rsi + 0x18]
add eax, edi
cmp eax, ebx
jle 0x14001822a
test ebx, ebx
jle 0x14001a7b5
add ebx, ebx
cmp eax, ebx
jg 0x1400184f7
jmp 0x1400181ee
movsd xmm1, qword [rbx + 0x18]
pxor xmm0, xmm0
mov dword [rsp + 0x38], r13d
lea rbx, [rsp + 0x70]
mov byte [rsp + 0x30], bpl
movzx r8d, byte [rsp + 0x5c]
mov rcx, rbx
comisd xmm0, xmm1
mov byte [rsp + 0x40], r15b
mov r9d, dword [rsp + 0x50]
mov dword [rsp + 0x20], 6
setbe byte [rsp + 0x28]
call fcn.1400202c0
mov r8, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r13, r8
mov edi, r8d
sar r13, 0x20
mov r14d, r13d
test r12d, r12d
jne 0x140019f0b
test edi, edi
je 0x14001837f
jle 0x14001837f
test rbp, rbp
je 0x14001837f
mov eax, dword [rsi + 0x14]
mov ebx, dword [rsi + 0x18]
add eax, edi
cmp eax, ebx
jle 0x140019c7e
test ebx, ebx
jle 0x14001a4b6
nop word [rax + rax]
add ebx, ebx
cmp eax, ebx
jg 0x140018598
jmp 0x140018316
movss xmm1, dword [rbx + 0x18]
pxor xmm0, xmm0
mov dword [rsp + 0x38], r13d
lea rbx, [rsp + 0x70]
mov byte [rsp + 0x30], bpl
movzx r8d, byte [rsp + 0x5c]
mov rcx, rbx
comiss xmm0, xmm1
mov byte [rsp + 0x40], r15b
mov r9d, dword [rsp + 0x50]
cvtss2sd xmm1, xmm1
mov dword [rsp + 0x20], 6
setbe byte [rsp + 0x28]
call fcn.1400202c0
mov r8, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r13, r8
mov edi, r8d
sar r13, 0x20
mov r14d, r13d
test r12d, r12d
jne 0x140019c48
test edi, edi
je 0x14001837f
jle 0x14001837f
test rbp, rbp
je 0x14001837f
mov eax, dword [rsi + 0x14]
mov ebx, dword [rsi + 0x18]
add eax, edi
cmp eax, ebx
jle 0x140019c7e
test ebx, ebx
jle 0x14001a490
nop word cs:[rax + rax]
add ebx, ebx
cmp eax, ebx
jg 0x140018640
jmp 0x140018316
movss xmm1, dword [rbx + 0x18]
pxor xmm0, xmm0
mov byte [rsp + 0x40], r15b
lea rcx, [rsp + 0x70]
mov r9d, dword [rsp + 0x50]
movzx r8d, byte [rsp + 0x5c]
mov dword [rsp + 0x38], r13d
comiss xmm0, xmm1
mov byte [rsp + 0x30], bpl
cvtss2sd xmm1, xmm1
mov dword [rsp + 0x20], edi
setbe byte [rsp + 0x28]
call fcn.14001f5f0
mov rdi, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r13, rdi
mov r15, rbp
sar r13, 0x20
mov r14d, r13d
test r12d, r12d
jne 0x140019ccf
test edi, edi
je 0x14001837f
jle 0x14001837f
test rbp, rbp
je 0x14001837f
mov eax, dword [rsi + 0x14]
mov ebx, dword [rsi + 0x18]
add eax, edi
cmp eax, ebx
jle 0x14001a391
test ebx, ebx
jle 0x14001a414
nop word [rax + rax]
add ebx, ebx
cmp eax, ebx
jg 0x1400186e0
movsxd rcx, dword [rsi]
movsxd rax, ebx
imul rcx, rax
call fcn.140011340
mov rdx, qword [rsi + 8]
mov rcx, rax
test rdx, rdx
je 0x14001a427
movsxd r8, dword [rsi + 0x14]
movsxd rax, dword [rsi]
xor r12d, r12d
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov dword [rsi + 0x10], r12d
mov qword [rsi + 8], rax
mov rcx, rax
mov dword [rsi + 0x18], ebx
cmp r15, rax
je 0x14001a075
movsxd rdx, dword [rsi]
movsxd rax, dword [rsi + 0x14]
movsxd r8, edi
imul rax, rdx
imul r8, rdx
mov rdx, r15
add rcx, rax
call sub.ucrtbase.dll_memcpy
jmp 0x14001837c
movsd xmm1, qword [rbx + 0x18]
pxor xmm0, xmm0
comisd xmm1, xmm0
jp 0x14001a137
je 0x14001a0fe
ja 0x14001a137
movapd xmm0, xmm1
xorpd xmm0, xmmword [0x14002bc70]
comisd xmm0, xmmword [0x14002bc60]
lea rbx, [rsp + 0x70]
jb 0x14001879d
movsd xmm2, qword [0x14002bc80]
comisd xmm2, xmm0
ja 0x14001a438
mov r8d, 0x11
mov rcx, rbx
call fcn.14000df40
mov rax, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r8d, eax
shr rax, 0x20
mov rdi, rax
test r12d, r12d
jne 0x140019f54
mov rdx, rbp
mov rcx, rsi
call 0x14001d6d0
cmp edi, 0xfa1d05ee
jne 0x14001713f
movaps xmm6, xmmword [rsp + 0xa0]
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x14000ead0
movss xmm1, dword [rbx + 0x18]
pxor xmm0, xmm0
comiss xmm1, xmm0
jp 0x14001a140
je 0x14001a0fe
ja 0x14001a140
movaps xmm0, xmm1
xorps xmm0, xmmword [0x14002bc50]
pxor xmm2, xmm2
lea rbx, [rsp + 0x70]
cvtss2sd xmm2, xmm0
comisd xmm2, xmmword [0x14002bc60]
jb 0x14001884f
movss xmm2, dword [0x14002bc68]
comiss xmm2, xmm0
ja 0x14001a480
mov r8d, 8
mov rcx, rbx
call fcn.14000c480
jmp 0x1400187ab
movabs rdx, 0x8000000000000000
movsd xmm1, qword [rbx + 0x18]
movq rax, xmm1
cmp rax, rdx
je 0x14001a3d5
test rax, rax
je 0x14001a32b
pxor xmm3, xmm3
movapd xmm2, xmm1
movapd xmm0, xmm1
cmpltsd xmm2, xmm3
xorpd xmm0, xmmword [0x14002bc70]
andpd xmm0, xmm2
andnpd xmm2, xmm1
orpd xmm0, xmm2
comisd xmm0, xmmword [0x14002bc60]
jb 0x1400188c9
movsd xmm2, qword [0x14002bc80]
comisd xmm2, xmm0
ja 0x14001a667
movabs rdx, 0xfffffffffffff
mov rdi, rax
and rdx, rax
shr rax, 0x34
and eax, 0x7ff
shr rdi, 0x3f
mov r8, rax
cmp rax, 0x7ff
je 0x14001a72e
mov rax, rdx
or rax, r8
je 0x14001a70a
lea r9, [r8 - 0x3ff]
cmp r9, 0x34
ja 0x14001a996
mov rax, rdx
mov ecx, 0x34
bts rax, 0x34
sub rcx, r9
mov r10, rax
shr r10, cl
mov rbx, r10
shl rbx, cl
cmp rax, rbx
jne 0x14001a996
mov ecx, 0xa
mov rax, r10
xor edx, edx
xor r8d, r8d
div rcx
test rdx, rdx
jne 0x140018980
movabs rcx, 0xcccccccccccccccd
movabs r9, 0x1999999999999999
mov rax, r10
add r8d, 1
mul rcx
mov r10, rdx
shr r10, 3
mov rax, r10
imul rax, rcx
ror rax, 1
cmp r9, rax
jae 0x140018960
lea rbx, [rsp + 0x70]
xor r11d, r11d
mov r9d, edi
mov rdx, r10
mov rcx, rbx
mov dword [rsp + 0x28], r11d
mov dword [rsp + 0x20], 0x11
call fcn.140020000
mov rax, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x70]
mov r13d, eax
shr rax, 0x20
mov rbp, rax
test r12d, r12d
jne 0x14001a778
test r13d, r13d
je 0x140018d30
jle 0x140018d30
test rdi, rdi
je 0x140018d30
mov eax, dword [rsi + 0x14]
mov ebx, dword [rsi + 0x18]
add eax, r13d
cmp eax, ebx
jle 0x140018a2f
test ebx, ebx
jle 0x14001a765
add ebx, ebx
cmp eax, ebx
jg 0x1400189ed
movsxd rcx, dword [rsi]
movsxd rax, ebx
imul rcx, rax
call fcn.140011340
mov rdx, qword [rsi + 8]
mov rcx, rax
test rdx, rdx
je 0x140018a21
movsxd r8, dword [rsi + 0x14]
movsxd rax, dword [rsi]
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov rcx, rax
xor r10d, r10d
mov qword [rsi + 8], rcx
mov dword [rsi + 0x10], r10d
mov dword [rsi + 0x18], ebx
mov rax, qword [rsi + 8]
cmp rax, rdi
je 0x14001a87f
test rax, rax
je 0x140018a5f
movsxd r8, dword [rsi]
movsxd rdx, dword [rsi + 0x14]
imul rdx, r8
lea rcx, [rax + rdx]
movsxd rax, r13d
mov rdx, rdi
imul r8, rax
call sub.ucrtbase.dll_memcpy
add dword [rsi + 0x14], r13d
jmp 0x140018d30
movss xmm1, dword [rbx + 0x18]
movd eax, xmm1
cmp eax, 0x80000000
je 0x14001a3f0
test eax, eax
je 0x14001a2f2
pxor xmm3, xmm3
movaps xmm2, xmm1
movaps xmm0, xmm1
cmpltss xmm2, xmm3
xorps xmm0, xmmword [0x14002bc50]
lea rbx, [rsp + 0x70]
andps xmm0, xmm2
andnps xmm2, xmm1
orps xmm0, xmm2
pxor xmm2, xmm2
cvtss2sd xmm2, xmm0
comisd xmm2, xmmword [0x14002bc60]
jb 0x14001884f
movss xmm2, dword [0x14002bc68]
comiss xmm2, xmm0
jbe 0x14001884f
mov r8d, 6
mov rcx, rbx
call fcn.14000c480
mov r8, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
mov rcx, rbx
mov r13, r8
call fcn.1400208b0
sar r13, 0x20
mov rbp, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
cmp r13d, 0xfa1d05ee
je 0x14001aae7
mov r8d, edi
shr rdi, 0x20
jmp 0x1400187bf
movabs rdx, 0x8000000000000000
movsd xmm1, qword [rbx + 0x18]
movq rax, xmm1
cmp rax, rdx
je 0x14001a402
test rax, rax
je 0x14001a259
pxor xmm3, xmm3
movapd xmm2, xmm1
movapd xmm0, xmm1
cmpltsd xmm2, xmm3
xorpd xmm0, xmmword [0x14002bc70]
andpd xmm0, xmm2
andnpd xmm2, xmm1
orpd xmm0, xmm2
comisd xmm0, xmmword [0x14002bc60]
jb 0x140018b80
movsd xmm2, qword [0x14002bc80]
comisd xmm2, xmm0
ja 0x14001a6b6
movabs rdx, 0xfffffffffffff
mov rdi, rax
and rdx, rax
shr rax, 0x34
and eax, 0x7ff
shr rdi, 0x3f
mov r8, rax
cmp rax, 0x7ff
je 0x14001a835
mov rax, rdx
or rax, r8
je 0x14001a80b
lea r9, [r8 - 0x3ff]
cmp r9, 0x34
ja 0x14001a863
mov rax, rdx
mov ecx, 0x34
bts rax, 0x34
sub rcx, r9
mov r10, rax
shr r10, cl
mov rbx, r10
shl rbx, cl
cmp rax, rbx
jne 0x14001a863
mov ecx, 0xa
mov rax, r10
xor edx, edx
div rcx
test rdx, rdx
jne 0x14001ac48
movabs r9, 0xcccccccccccccccd
mov ecx, 1
movabs r11, 0x1999999999999999
mov rax, r10
mov r8d, ecx
add ecx, 1
mul r9
mov r10, rdx
shr r10, 3
mov rax, r10
imul rax, r9
ror rax, 1
cmp r11, rax
jae 0x140018c1d
lea rbx, [rsp + 0x70]
xor r9d, r9d
mov dword [rsp + 0x20], 0x11
mov rdx, r10
mov rcx, rbx
mov dword [rsp + 0x28], r9d
mov r9d, edi
call fcn.140020000
mov rax, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
mov r8d, eax
shr rax, 0x20
mov rbx, rax
test r12d, r12d
jne 0x14001a274
mov rcx, rsi
call 0x14001d6d0
cmp ebx, 0xfa1d05ee
jne 0x14001713f
jmp 0x1400187df
movss xmm1, dword [rbx + 0x18]
movd eax, xmm1
cmp eax, 0x80000000
je 0x14001a3ac
test eax, eax
je 0x14001a1b4
pxor xmm3, xmm3
movaps xmm2, xmm1
movaps xmm0, xmm1
cmpltss xmm2, xmm3
xorps xmm0, xmmword [0x14002bc50]
lea rbx, [rsp + 0x70]
andps xmm0, xmm2
andnps xmm2, xmm1
orps xmm0, xmm2
pxor xmm2, xmm2
cvtss2sd xmm2, xmm0
comisd xmm2, xmmword [0x14002bc60]
jb 0x140018cfb
movss xmm2, dword [0x14002bc68]
comiss xmm2, xmm0
ja 0x14001a61a
mov r8d, 8
mov rcx, rbx
call fcn.14000c480
mov rax, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
mov r8d, eax
shr rax, 0x20
mov rbp, rax
test r12d, r12d
jne 0x14001a1d4
mov rcx, rsi
call 0x14001d6d0
nop
cmp ebp, 0xfa1d05ee
jne 0x14001713f
jmp 0x1400187df
mov qword [rsp + 0x30], rsi
mov r8d, dword [rsp + 0x50]
mov r9d, 1
mov rcx, rbx
mov dword [rsp + 0x28], r13d
movzx edx, byte [rsp + 0x5c]
mov byte [rsp + 0x20], bpl
call fcn.14001ed60
jmp 0x14001713f
mov ebx, dword [rbx + 0x18]
jmp 0x14001708d
movzx ebx, byte [rbx + 0x18]
jmp 0x14001708d
movsx rdi, byte [rbx + 0x18]
test r8d, r8d
je 0x14001736f
jmp 0x1400174c8
mov rdi, r12
xor ebx, ebx
mov qword [rsp + 0x28], rsi
mov r9d, dword [rsp + 0x50]
mov edx, ebp
mov rcx, rdi
mov dword [rsp + 0x20], r13d
movzx r8d, byte [rsp + 0x5c]
call fcn.140021570
jmp 0x1400175e8
lea ecx, [rdi + 1]
mov qword [rsp + 0x68], r8
movsxd rcx, ecx
mov dword [rsp + 0x60], edi
call fcn.140011790
test edi, edi
mov edx, dword [rsp + 0x60]
mov r8, qword [rsp + 0x68]
mov rbx, rax
jle 0x140019041
lea eax, [rdi - 1]
mov r9d, edi
cmp eax, 6
jbe 0x140018e13
lea r10, [rbp + 1]
mov rcx, rbx
sub rcx, r10
cmp rcx, 0xe
ja 0x140018e68
movsxd r11, edi
xor ecx, ecx
nop dword [rax + rax]
movzx eax, byte [rbp + rcx]
lea r10d, [rax - 0x61]
lea r9d, [rax - 0x20]
cmp r10b, 0x1a
cmovb eax, r9d
mov byte [rbx + rcx], al
add rcx, 1
cmp rcx, r11
jne 0x140018e20
mov byte [rbx + rcx], 0
cmp r8d, 0xfa1d05ee
je 0x140019994
test r14w, r14w
jne 0x140019078
xor r15d, r15d
jmp 0x14001741f
cmp eax, 0xe
jbe 0x140019a9e
mov ecx, edi
movdqa xmm5, xmmword [0x14002bc20]
xor eax, eax
pxor xmm6, xmm6
shr ecx, 4
movdqa xmm4, xmmword [0x14002bc30]
movdqa xmm3, xmmword [0x14002bc40]
shl rcx, 4
movdqu xmm2, xmmword [rbp + rax]
movdqa xmm0, xmm2
movdqa xmm1, xmm2
paddb xmm0, xmm5
paddb xmm1, xmm3
psubusb xmm0, xmm4
pcmpeqb xmm0, xmm6
pand xmm1, xmm0
pandn xmm0, xmm2
por xmm0, xmm1
movups xmmword [rbx + rax], xmm0
add rax, 0x10
cmp rcx, rax
jne 0x140018e98
mov eax, edi
and eax, 0xfffffff0
mov ecx, eax
cmp edi, eax
je 0x140019980
mov r9d, edi
sub r9d, eax
lea r10d, [r9 - 1]
cmp r10d, 6
jbe 0x140018f43
movq xmm0, qword [0x14002bc20]
movq xmm2, qword [rbp + rcx]
movq xmm3, qword [0x14002bc30]
movq xmm1, qword [0x14002bc40]
paddb xmm0, xmm2
paddb xmm1, xmm2
psubusb xmm0, xmm3
pxor xmm3, xmm3
pcmpeqb xmm0, xmm3
pand xmm1, xmm0
pandn xmm0, xmm2
por xmm0, xmm1
movq qword [rbx + rcx], xmm0
mov ecx, r9d
and ecx, 0xfffffff8
add eax, ecx
and r9d, 7
je 0x140019041
movsxd r9, eax
movzx ecx, byte [rbp + r9]
lea r11d, [rcx - 0x61]
lea r10d, [rcx - 0x20]
cmp r11b, 0x1a
cmovb ecx, r10d
mov byte [rbx + r9], cl
lea ecx, [rax + 1]
cmp ecx, edi
jge 0x140019041
movsxd rcx, ecx
movzx r9d, byte [rbp + rcx]
lea r11d, [r9 - 0x61]
lea r10d, [r9 - 0x20]
cmp r11b, 0x1a
cmovb r9d, r10d
mov byte [rbx + rcx], r9b
lea ecx, [rax + 2]
cmp ecx, edi
jge 0x140019041
movsxd rcx, ecx
movzx r9d, byte [rbp + rcx]
lea r11d, [r9 - 0x61]
lea r10d, [r9 - 0x20]
cmp r11b, 0x1a
cmovb r9d, r10d
mov byte [rbx + rcx], r9b
lea ecx, [rax + 3]
cmp ecx, edi
jge 0x140019041
movsxd rcx, ecx
movzx r9d, byte [rbp + rcx]
lea r11d, [r9 - 0x61]
lea r10d, [r9 - 0x20]
cmp r11b, 0x1a
cmovb r9d, r10d
mov byte [rbx + rcx], r9b
lea ecx, [rax + 4]
cmp ecx, edi
jge 0x140019041
movsxd rcx, ecx
movzx r9d, byte [rbp + rcx]
lea r11d, [r9 - 0x61]
lea r10d, [r9 - 0x20]
cmp r11b, 0x1a
cmovb r9d, r10d
mov byte [rbx + rcx], r9b
lea ecx, [rax + 5]
cmp ecx, edi
jge 0x140019041
movsxd rcx, ecx
movzx r9d, byte [rbp + rcx]
lea r11d, [r9 - 0x61]
lea r10d, [r9 - 0x20]
cmp r11b, 0x1a
cmovb r9d, r10d
add eax, 6
mov byte [rbx + rcx], r9b
cmp eax, edi
jge 0x140019041
cdqe
movzx ecx, byte [rbp + rax]
lea r10d, [rcx - 0x61]
lea r9d, [rcx - 0x20]
cmp r10b, 0x1a
cmovb ecx, r9d
mov byte [rbx + rax], cl
movsxd rax, edi
mov byte [rbx + rax], 0
test rbx, rbx
je 0x1400192a3
cmp r8d, 0xfa1d05ee
je 0x140019994
test r14w, r14w
jne 0x140019078
test edi, edi
jle 0x14001713f
jmp 0x140018e5c
mov qword [rsp + 0x28], rsi
mov r9d, dword [rsp + 0x50]
mov rcx, rbx
mov dword [rsp + 0x20], r13d
movzx r8d, byte [rsp + 0x5c]
call fcn.140021570
jmp 0x14001713f
mov qword [rsp + 0x28], rsi
mov r9d, dword [rsp + 0x50]
mov rcx, rbx
mov dword [rsp + 0x20], r13d
movzx r8d, byte [rsp + 0x5c]
call fcn.140021570
jmp 0x1400179df
cmp eax, 0xe
jbe 0x14001a007
mov edx, ebp
movdqa xmm5, xmmword [0x14002bc20]
xor eax, eax
pxor xmm6, xmm6
shr edx, 4
movdqa xmm4, xmmword [0x14002bc30]
movdqa xmm3, xmmword [0x14002bc40]
shl rdx, 4
movdqu xmm2, xmmword [r15 + rax]
movdqa xmm0, xmm2
movdqa xmm1, xmm2
paddb xmm0, xmm5
paddb xmm1, xmm3
psubusb xmm0, xmm4
pcmpeqb xmm0, xmm6
pand xmm1, xmm0
pandn xmm0, xmm2
por xmm0, xmm1
movups xmmword [r12 + rax], xmm0
add rax, 0x10
cmp rdx, rax
jne 0x1400190f2
mov eax, ebp
and eax, 0xfffffff0
mov edx, eax
cmp eax, ebp
je 0x14001a34b
mov ecx, ebp
sub ecx, eax
lea r8d, [rcx - 1]
cmp r8d, 6
jbe 0x14001919b
movq xmm0, qword [0x14002bc20]
movq xmm2, qword [r15 + rdx]
movq xmm3, qword [0x14002bc30]
movq xmm1, qword [0x14002bc40]
paddb xmm0, xmm2
paddb xmm1, xmm2
psubusb xmm0, xmm3
pxor xmm3, xmm3
pcmpeqb xmm0, xmm3
pand xmm1, xmm0
pandn xmm0, xmm2
por xmm0, xmm1
movq qword [r12 + rdx], xmm0
mov edx, ecx
and edx, 0xfffffff8
add eax, edx
and ecx, 7
je 0x140019292
movsxd rcx, eax
movzx edx, byte [r15 + rcx]
lea r9d, [rdx - 0x61]
lea r8d, [rdx - 0x20]
cmp r9b, 0x1a
cmovb edx, r8d
mov byte [r12 + rcx], dl
lea edx, [rax + 1]
cmp edx, ebp
jge 0x140019292
movsxd rdx, edx
movzx ecx, byte [r15 + rdx]
lea r9d, [rcx - 0x61]
lea r8d, [rcx - 0x20]
cmp r9b, 0x1a
cmovb ecx, r8d
mov byte [r12 + rdx], cl
lea edx, [rax + 2]
cmp edx, ebp
jge 0x140019292
movsxd rdx, edx
movzx ecx, byte [r15 + rdx]
lea r9d, [rcx - 0x61]
lea r8d, [rcx - 0x20]
cmp r9b, 0x1a
cmovb ecx, r8d
mov byte [r12 + rdx], cl
lea edx, [rax + 3]
cmp edx, ebp
jge 0x140019292
movsxd rdx, edx
movzx ecx, byte [r15 + rdx]
lea r9d, [rcx - 0x61]
lea r8d, [rcx - 0x20]
cmp r9b, 0x1a
cmovb ecx, r8d
mov byte [r12 + rdx], cl
lea edx, [rax + 4]
cmp edx, ebp
jge 0x140019292
movsxd rdx, edx
movzx ecx, byte [r15 + rdx]
lea r9d, [rcx - 0x61]
lea r8d, [rcx - 0x20]
cmp r9b, 0x1a
cmovb ecx, r8d
mov byte [r12 + rdx], cl
lea edx, [rax + 5]
cmp edx, ebp
jge 0x140019292
movsxd rdx, edx
movzx ecx, byte [r15 + rdx]
lea r9d, [rcx - 0x61]
lea r8d, [rcx - 0x20]
cmp r9b, 0x1a
cmovb ecx, r8d
add eax, 6
mov byte [r12 + rdx], cl
cmp eax, ebp
jge 0x140019292
cdqe
movzx edx, byte [r15 + rax]
lea r8d, [rdx - 0x61]
lea ecx, [rdx - 0x20]
cmp r8b, 0x1a
cmovb edx, ecx
mov byte [r12 + rax], dl
movsxd rax, ebp
mov byte [r12 + rax], 0
test r12, r12
jne 0x140017dd5
call fcn.140016f90
nop dword [rax + rax]
cmp eax, 0xe
jbe 0x140019ffe
mov ecx, edi
movdqa xmm5, xmmword [0x14002bc20]
xor eax, eax
pxor xmm6, xmm6
shr ecx, 4
movdqa xmm4, xmmword [0x14002bc30]
movdqa xmm3, xmmword [0x14002bc40]
shl rcx, 4
movdqu xmm2, xmmword [rbp + rax]
movdqa xmm0, xmm2
movdqa xmm1, xmm2
paddb xmm0, xmm5
paddb xmm1, xmm3
psubusb xmm0, xmm4
pcmpeqb xmm0, xmm6
pand xmm1, xmm0
pandn xmm0, xmm2
por xmm0, xmm1
movups xmmword [rbx + rax], xmm0
add rax, 0x10
cmp rcx, rax
jne 0x1400192e0
mov eax, edi
and eax, 0xfffffff0
mov ecx, eax
cmp edi, eax
je 0x140019b82
mov r9d, edi
sub r9d, eax
lea r10d, [r9 - 1]
cmp r10d, 6
jbe 0x14001938b
movq xmm0, qword [0x14002bc20]
movq xmm2, qword [rbp + rcx]
movq xmm3, qword [0x14002bc30]
movq xmm1, qword [0x14002bc40]
paddb xmm0, xmm2
paddb xmm1, xmm2
psubusb xmm0, xmm3
pxor xmm3, xmm3
pcmpeqb xmm0, xmm3
pand xmm1, xmm0
pandn xmm0, xmm2
por xmm0, xmm1
movq qword [rbx + rcx], xmm0
mov ecx, r9d
and ecx, 0xfffffff8
add eax, ecx
and r9d, 7
je 0x140019489
movsxd r9, eax
movzx ecx, byte [rbp + r9]
lea r11d, [rcx - 0x61]
lea r10d, [rcx - 0x20]
cmp r11b, 0x1a
cmovb ecx, r10d
mov byte [rbx + r9], cl
lea ecx, [rax + 1]
cmp ecx, edi
jge 0x140019489
movsxd rcx, ecx
movzx r9d, byte [rbp + rcx]
lea r11d, [r9 - 0x61]
lea r10d, [r9 - 0x20]
cmp r11b, 0x1a
cmovb r9d, r10d
mov byte [rbx + rcx], r9b
lea ecx, [rax + 2]
cmp ecx, edi
jge 0x140019489
movsxd rcx, ecx
movzx r9d, byte [rbp + rcx]
lea r11d, [r9 - 0x61]
lea r10d, [r9 - 0x20]
cmp r11b, 0x1a
cmovb r9d, r10d
mov byte [rbx + rcx], r9b
lea ecx, [rax + 3]
cmp edi, ecx
jle 0x140019489
movsxd rcx, ecx
movzx r9d, byte [rbp + rcx]
lea r11d, [r9 - 0x61]
lea r10d, [r9 - 0x20]
cmp r11b, 0x1a
cmovb r9d, r10d
mov byte [rbx + rcx], r9b
lea ecx, [rax + 4]
cmp edi, ecx
jle 0x140019489
movsxd rcx, ecx
movzx r9d, byte [rbp + rcx]
lea r11d, [r9 - 0x61]
lea r10d, [r9 - 0x20]
cmp r11b, 0x1a
cmovb r9d, r10d
mov byte [rbx + rcx], r9b
lea ecx, [rax + 5]
cmp ecx, edi
jge 0x140019489
movsxd rcx, ecx
movzx r9d, byte [rbp + rcx]
lea r11d, [r9 - 0x61]
lea r10d, [r9 - 0x20]
cmp r11b, 0x1a
cmovb r9d, r10d
add eax, 6
mov byte [rbx + rcx], r9b
cmp eax, edi
jge 0x140019489
cdqe
movzx ecx, byte [rbp + rax]
lea r10d, [rcx - 0x61]
lea r9d, [rcx - 0x20]
cmp r10b, 0x1a
cmovb ecx, r9d
mov byte [rbx + rax], cl
movsxd rax, edi
mov byte [rbx + rax], 0
test rbx, rbx
je 0x1400192a3
cmp r8d, 0xfa1d05ee
je 0x140019b96
test r14w, r14w
jne 0x140019078
test edi, edi
jle 0x14001713f
jmp 0x140017d3c
add rdx, 1
jmp 0x140017ace
mov edi, 1
jmp 0x140017d6e
mov rcx, qword [rsi + 8]
cmp rcx, rdi
jne 0x140018078
movsxd r12, ebx
movsxd rcx, dword [rsi]
mov eax, 1
imul rcx, r12
test rcx, rcx
cmove rcx, rax
call fcn.140011a50
mov rdi, qword [rsi + 8]
movsxd rbx, dword [rsi + 0x14]
movsxd r12, dword [rsi]
mov r9, rax
test rdi, rdi
je 0x14001952b
movsxd r8, dword [rsi + 0x18]
mov rdx, rdi
mov rcx, rax
imul r8, r12
call sub.ucrtbase.dll_memcpy
mov r9, rax
imul rbx, r12
movsxd r8, ebp
mov rdx, r9
imul r8, r12
lea rcx, [rdi + rbx]
call sub.ucrtbase.dll_memcpy
jmp 0x14001713c
mov qword [rsi + 8], rax
mov dword [rsi + 0x10], 0
mov dword [rsi + 0x18], ebx
jmp 0x1400194de
mov rcx, qword [rsi + 8]
cmp rbx, rcx
je 0x1400198c7
test rcx, rcx
je 0x1400178a9
jmp 0x14001788f
mov qword [rsi + 8], rax
mov dword [rsi + 0x10], 0
mov dword [rsi + 0x18], ebp
jmp 0x14001955b
mov ebx, 2
cmp eax, 2
jg 0x1400170d0
jmp 0x1400170d6
xor eax, eax
xor edx, edx
jmp 0x1400176bc
mov ebp, 2
cmp eax, 2
jg 0x140017840
jmp 0x140017846
mov rcx, qword [rsi + 8]
cmp rcx, rbx
je 0x140019b21
test rcx, rcx
je 0x1400174ac
jmp 0x14001748f
mov ecx, eax
mov byte [rsp + 0x90], 0
mov qword [rsp + 0x88], 0
and ecx, 0xf
cmp cl, 0xa
lea r8d, [rcx + 0x57]
lea edx, [rcx + 0x30]
mov qword [rsp + 0x80], 0
cmovae edx, r8d
mov byte [rsp + 0x8f], dl
mov rdx, rax
shr rdx, 4
je 0x14001a75b
and edx, 0xf
lea r8d, [rdx + 0x57]
cmp dl, 0xa
lea ecx, [rdx + 0x30]
mov edx, r8d
cmovb edx, ecx
mov byte [rsp + 0x8e], dl
mov rdx, rax
shr rdx, 8
je 0x14001a98c
and edx, 0xf
lea r8d, [rdx + 0x57]
cmp dl, 0xa
lea ecx, [rdx + 0x30]
mov edx, r8d
cmovb edx, ecx
mov byte [rsp + 0x8d], dl
mov rdx, rax
shr rdx, 0xc
je 0x14001aa23
and edx, 0xf
lea r8d, [rdx + 0x57]
cmp dl, 0xa
lea ecx, [rdx + 0x30]
mov edx, r8d
cmovb edx, ecx
mov byte [rsp + 0x8c], dl
mov rdx, rax
shr rdx, 0x10
je 0x14001aa19
and edx, 0xf
lea r8d, [rdx + 0x57]
cmp dl, 0xa
lea ecx, [rdx + 0x30]
mov edx, r8d
cmovb edx, ecx
mov byte [rsp + 0x8b], dl
mov rdx, rax
shr rdx, 0x14
je 0x14001aa0f
and edx, 0xf
lea r8d, [rdx + 0x57]
cmp dl, 0xa
lea ecx, [rdx + 0x30]
mov edx, r8d
cmovb edx, ecx
mov byte [rsp + 0x8a], dl
mov rdx, rax
shr rdx, 0x18
je 0x14001aa05
and edx, 0xf
lea r8d, [rdx + 0x57]
cmp dl, 0xa
lea ecx, [rdx + 0x30]
mov edx, r8d
cmovb edx, ecx
mov byte [rsp + 0x89], dl
mov rdx, rax
shr rdx, 0x1c
je 0x14001a9fb
and edx, 0xf
lea r8d, [rdx + 0x57]
cmp dl, 0xa
lea ecx, [rdx + 0x30]
mov edx, r8d
cmovb edx, ecx
mov byte [rsp + 0x88], dl
mov rdx, rax
shr rdx, 0x20
je 0x14001a9f1
and edx, 0xf
lea r8d, [rdx + 0x57]
cmp dl, 0xa
lea ecx, [rdx + 0x30]
mov edx, r8d
cmovb edx, ecx
mov byte [rsp + 0x87], dl
mov rdx, rax
shr rdx, 0x24
je 0x14001a9e7
and edx, 0xf
lea r8d, [rdx + 0x57]
cmp dl, 0xa
lea ecx, [rdx + 0x30]
mov edx, r8d
cmovb edx, ecx
mov byte [rsp + 0x86], dl
mov rdx, rax
shr rdx, 0x28
je 0x14001a9dd
and edx, 0xf
lea r8d, [rdx + 0x57]
cmp dl, 0xa
lea ecx, [rdx + 0x30]
mov edx, r8d
cmovb edx, ecx
mov byte [rsp + 0x85], dl
mov rdx, rax
shr rdx, 0x2c
je 0x14001aad3
and edx, 0xf
lea r8d, [rdx + 0x57]
cmp dl, 0xa
lea ecx, [rdx + 0x30]
mov edx, r8d
cmovb edx, ecx
mov byte [rsp + 0x84], dl
mov rdx, rax
shr rdx, 0x30
je 0x14001aac9
and edx, 0xf
lea r8d, [rdx + 0x57]
cmp dl, 0xa
lea ecx, [rdx + 0x30]
mov edx, r8d
cmovb edx, ecx
mov byte [rsp + 0x83], dl
mov rdx, rax
shr rdx, 0x34
je 0x14001aadd
and edx, 0xf
lea r8d, [rdx + 0x57]
cmp dl, 0xa
lea ecx, [rdx + 0x30]
mov edx, r8d
cmovb edx, ecx
mov byte [rsp + 0x82], dl
mov rdx, rax
shr rdx, 0x38
je 0x14001aabf
and edx, 0xf
lea r8d, [rdx + 0x57]
cmp dl, 0xa
lea ecx, [rdx + 0x30]
mov edx, r8d
cmovb edx, ecx
shr rax, 0x3c
mov byte [rsp + 0x81], dl
je 0x14001ab25
lea ecx, [rax + 0x30]
cmp al, 9
lea edx, [rax + 0x57]
mov eax, ecx
cmova eax, edx
xor edi, edi
mov byte [rsp + 0x80], al
mov ebx, 0x11
mov ebp, 0x10
sub ebx, edi
sub ebp, edi
movsxd rcx, ebx
call fcn.140011340
mov r9, rax
lea rax, [rsp + rdi + 0x80]
cmp ebx, 8
jae 0x140019ad2
test bl, 4
jne 0x14001a92d
test ebx, ebx
je 0x14001988e
movzx edx, byte [rax]
mov byte [r9], dl
test bl, 2
jne 0x14001ab2f
mov rdi, r9
jmp 0x140017ec3
mov qword [rsi + 8], rax
mov dword [rsi + 0x10], 0
mov dword [rsi + 0x18], ebp
jmp 0x1400195b5
mov rcx, qword [rsi + 8]
movsxd r12, edi
cmp rbx, rcx
je 0x1400194ea
test rcx, rcx
je 0x14001713c
jmp 0x14001732f
movsxd r13, ebp
movsxd rcx, dword [rsi]
mov eax, 1
imul rcx, r13
test rcx, rcx
cmove rcx, rax
call fcn.140011a50
mov rbp, qword [rsi + 8]
movsxd rbx, dword [rsi + 0x14]
movsxd r13, dword [rsi]
mov r9, rax
test rbp, rbp
je 0x14001990b
movsxd r8, dword [rsi + 0x18]
mov rdx, rbp
mov rcx, rax
imul r8, r13
call sub.ucrtbase.dll_memcpy
mov r9, rax
imul rbx, r13
mov r8, r12
mov rdx, r9
imul r8, r13
lea rcx, [rbp + rbx]
call sub.ucrtbase.dll_memcpy
jmp 0x1400178a9
mov ebp, 2
cmp eax, 2
jg 0x140017440
jmp 0x140017446
mov qword [rsi + 8], rax
mov dword [rsi + 0x10], 0
mov dword [rsi + 0x18], edi
jmp 0x1400198ad
mov byte [rax], bl
mov ebp, 1
mov byte [rax + 1], 0
jmp 0x140018019
mov rcx, qword [rsi + 8]
lea rdx, str.ERROR_
cmp rcx, rdx
je 0x14001a550
test rcx, rcx
je 0x140017ea1
jmp 0x140017e86
movsxd rax, edi
mov byte [rbx + rax], 0
cmp r8d, 0xfa1d05ee
jne 0x140018e52
lea r15, [0x140028308]
mov r12d, 0x1e
mov dword [rsp + 0x68], edx
mov ecx, 1
call qword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov qword [rsp + 0x60], rbx
mov rbx, r15
mov r15, r12
mov r12d, dword [rsp + 0x68]
mov rbp, rax
nop dword [rax + rax]
mov r8, r15
mov rcx, rbx
mov r9, rbp
mov edx, 1
call sub.ucrtbase.dll_fwrite
sub r15, rax
add rbx, rax
test r15, r15
jg 0x1400199c8
mov rbx, qword [rsp + 0x60]
mov edx, r12d
xor r15d, r15d
jmp 0x1400173fe
mov edi, 2
cmp eax, 2
jg 0x1400172e0
jmp 0x1400172e6
mov rcx, qword [rsi + 8]
cmp rbx, rcx
je 0x14001a010
test rcx, rcx
je 0x1400179dc
jmp 0x1400179bf
mov rcx, qword [rsi + 8]
cmp rcx, rdi
je 0x140019f98
test rcx, rcx
je 0x1400175df
jmp 0x1400175c2
mov qword [rsi + 8], rax
mov dword [rsi + 0x10], 0
mov dword [rsi + 0x18], ebp
jmp 0x140019a0d
mov qword [rsi + 8], rax
mov dword [rsi + 0x10], 0
mov dword [rsi + 0x18], r12d
jmp 0x140019a28
movsxd r12, edi
mov byte [rbx + r12], 0
test r14w, r14w
jne 0x1400178d1
jmp 0x14001781e
mov r12d, 2
cmp eax, 2
jg 0x140017570
jmp 0x140017578
mov ebp, 2
cmp eax, 2
jg 0x140017970
jmp 0x140017976
xor eax, eax
xor ecx, ecx
jmp 0x140018eee
mov qword [rsp + 0x28], rsi
mov r9d, dword [rsp + 0x50]
mov edx, 1
lea rcx, [0x1400287e2]
mov dword [rsp + 0x20], r13d
movzx r8d, byte [rsp + 0x5c]
call fcn.140021570
jmp 0x14001713f
mov rdx, qword [rax]
lea r8, [r9 + 8]
and r8, 0xfffffffffffffff8
mov qword [r9], rdx
mov edx, ebx
mov rcx, qword [rax + rdx - 8]
mov qword [r9 + rdx - 8], rcx
mov rcx, r9
sub rcx, r8
add ebx, ecx
sub rax, rcx
and ebx, 0xfffffff8
mov rdx, rax
cmp ebx, 8
jb 0x14001988e
and ebx, 0xfffffff8
xor eax, eax
mov ecx, eax
add eax, 8
mov r10, qword [rdx + rcx]
mov qword [r8 + rcx], r10
cmp eax, ebx
jb 0x140019b0b
jmp 0x14001988e
movsxd r12, ebp
movsxd rcx, dword [rsi]
mov eax, 1
imul rcx, r12
test rcx, rcx
cmove rcx, rax
call fcn.140011a50
mov rbp, qword [rsi + 8]
movsxd rbx, dword [rsi + 0x14]
movsxd r12, dword [rsi]
mov r9, rax
test rbp, rbp
je 0x140019b65
movsxd r8, dword [rsi + 0x18]
mov rdx, rbp
mov rcx, rax
imul r8, r12
call sub.ucrtbase.dll_memcpy
mov r9, rax
imul rbx, r12
movsxd r8, edi
mov rdx, r9
imul r8, r12
lea rcx, [rbp + rbx]
call sub.ucrtbase.dll_memcpy
jmp 0x1400174ac
movsxd rax, edi
mov byte [rbx + rax], 0
cmp r8d, 0xfa1d05ee
jne 0x140017d32
lea r15, [0x140028308]
mov r12d, 0x1e
mov dword [rsp + 0x68], edx
mov ecx, 1
call qword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov qword [rsp + 0x60], rbx
mov rbx, r15
mov r15, r12
mov r12d, dword [rsp + 0x68]
mov rbp, rax
nop dword [rax]
mov r8, r15
mov rcx, rbx
mov r9, rbp
mov edx, 1
call sub.ucrtbase.dll_fwrite
sub r15, rax
add rbx, rax
test r15, r15
jg 0x140019bc8
mov rbx, qword [rsp + 0x60]
mov edx, r12d
xor r15d, r15d
jmp 0x140017934
lea rbx, [0x140028308]
mov ecx, 1
mov r15d, 0x1e
call qword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov qword [rsp + 0x60], rsi
mov rsi, rbx
mov rbx, rax
nop dword [rax]
mov r8, r15
mov rcx, rsi
mov r9, rbx
mov edx, 1
call sub.ucrtbase.dll_fwrite
sub r15, rax
add rsi, rax
test r15, r15
jg 0x140019c20
mov rsi, qword [rsp + 0x60]
jmp 0x140017de1
mov rdx, rbp
mov rcx, rbx
call fcn.140020d80
mov r8, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r14, r8
mov edi, r8d
sar r14, 0x20
cmp r13d, 0xfa1d05ee
jne 0x140018607
call 0x14000ead0
jmp 0x140018607
mov rcx, qword [rsi + 8]
cmp rbp, rcx
je 0x14001a075
test rcx, rcx
je 0x14001837c
jmp 0x14001835f
mov rdx, rbp
mov rcx, rbx
call fcn.140020d80
mov r8, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r14, r8
mov edi, r8d
sar r14, 0x20
cmp r13d, 0xfa1d05ee
jne 0x1400182d7
call 0x14000ead0
jmp 0x1400182d7
lea ecx, [rdi + 1]
movsxd rcx, ecx
call fcn.140011790
mov r15, rax
test edi, edi
jle 0x14001a9bb
lea eax, [rdi - 1]
cmp eax, 0xe
jbe 0x14001a9b2
mov edx, edi
movdqa xmm5, xmmword [0x14002bc20]
xor eax, eax
pxor xmm6, xmm6
shr edx, 4
movdqa xmm4, xmmword [0x14002bc30]
movdqa xmm3, xmmword [0x14002bc40]
shl rdx, 4
nop dword [rax + rax]
movdqu xmm2, xmmword [rbp + rax]
movdqa xmm0, xmm2
movdqa xmm1, xmm2
paddb xmm0, xmm5
paddb xmm1, xmm3
psubusb xmm0, xmm4
pcmpeqb xmm0, xmm6
pand xmm1, xmm0
pandn xmm0, xmm2
por xmm0, xmm1
movups xmmword [r15 + rax], xmm0
add rax, 0x10
cmp rdx, rax
jne 0x140019d20
mov eax, edi
and eax, 0xfffffff0
mov edx, eax
cmp edi, eax
je 0x14001aa7c
mov ecx, edi
sub ecx, edx
lea r8d, [rcx - 1]
cmp r8d, 6
jbe 0x140019dc9
movq xmm0, qword [0x14002bc20]
movq xmm2, qword [rbp + rdx]
movq xmm3, qword [0x14002bc30]
movq xmm1, qword [0x14002bc40]
paddb xmm0, xmm2
paddb xmm1, xmm2
psubusb xmm0, xmm3
pxor xmm3, xmm3
pcmpeqb xmm0, xmm3
pand xmm1, xmm0
pandn xmm0, xmm2
por xmm0, xmm1
movq qword [r15 + rdx], xmm0
mov edx, ecx
and edx, 0xfffffff8
add eax, edx
and ecx, 7
je 0x140019eb6
movsxd rcx, eax
movzx edx, byte [rbp + rcx]
lea r9d, [rdx - 0x61]
lea r8d, [rdx - 0x20]
cmp r9b, 0x1a
cmovb edx, r8d
mov byte [r15 + rcx], dl
lea edx, [rax + 1]
cmp edx, edi
jge 0x140019eb6
movsxd rdx, edx
movzx ecx, byte [rbp + rdx]
lea r9d, [rcx - 0x61]
lea r8d, [rcx - 0x20]
cmp r9b, 0x1a
cmovb ecx, r8d
mov byte [r15 + rdx], cl
lea edx, [rax + 2]
cmp edx, edi
jge 0x140019eb6
movsxd rdx, edx
movzx ecx, byte [rbp + rdx]
lea r9d, [rcx - 0x61]
lea r8d, [rcx - 0x20]
cmp r9b, 0x1a
cmovb ecx, r8d
mov byte [r15 + rdx], cl
lea edx, [rax + 3]
cmp edx, edi
jge 0x140019eb6
movsxd rdx, edx
movzx ecx, byte [rbp + rdx]
lea r9d, [rcx - 0x61]
lea r8d, [rcx - 0x20]
cmp r9b, 0x1a
cmovb ecx, r8d
mov byte [r15 + rdx], cl
lea edx, [rax + 4]
cmp edx, edi
jge 0x140019eb6
movsxd rdx, edx
movzx ecx, byte [rbp + rdx]
add rdx, r15
lea r8d, [rcx - 0x61]
cmp r8b, 0x19
ja 0x140019e75
sub ecx, 0x20
mov byte [rdx], cl
lea edx, [rax + 5]
cmp edx, edi
jge 0x140019eb6
movsxd rdx, edx
movzx ecx, byte [rbp + rdx]
add rdx, r15
lea r8d, [rcx - 0x61]
cmp r8b, 0x19
ja 0x140019e96
sub ecx, 0x20
add eax, 6
mov byte [rdx], cl
cmp eax, edi
jge 0x140019eb6
cdqe
movzx edx, byte [rbp + rax]
add rax, r15
lea ecx, [rdx - 0x61]
cmp cl, 0x19
ja 0x140019eb4
sub edx, 0x20
mov byte [rax], dl
movsxd rax, edi
mov byte [r15 + rax], 0
test r15, r15
je 0x1400192a3
cmp r13d, 0xfa1d05ee
je 0x14001a94c
xor r14d, r14d
jmp 0x1400186bf
mov qword [rsp + 0x28], rsi
mov r9d, dword [rsp + 0x50]
mov edx, 2
lea rcx, [0x14002882e]
mov dword [rsp + 0x20], r13d
movzx r8d, byte [rsp + 0x5c]
call fcn.140021570
jmp 0x14001713f
mov rdx, rbp
mov rcx, rbx
call fcn.140020d80
mov r8, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r14, r8
mov edi, r8d
sar r14, 0x20
cmp r13d, 0xfa1d05ee
jne 0x140018563
call 0x14000ead0
jmp 0x140018563
mov qword [rsi + 8], rax
mov dword [rsi + 0x10], 0
mov dword [rsi + 0x18], ebx
jmp 0x140019c82
mov rdx, rbp
mov rcx, rbx
call fcn.140020d80
mov rax, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r8d, eax
sar rax, 0x20
mov rbx, rax
cmp edi, 0xfa1d05ee
je 0x140019f82
mov edi, ebx
jmp 0x1400187c8
mov dword [rsp + 0x50], r8d
mov edi, ebx
call 0x14000ead0
mov r8d, dword [rsp + 0x50]
jmp 0x1400187c8
movsxd r13, r12d
movsxd rcx, dword [rsi]
mov eax, 1
imul rcx, r13
test rcx, rcx
cmove rcx, rax
call fcn.140011a50
mov rdi, qword [rsi + 8]
mov r12d, dword [rsi + 0x14]
mov r9, rax
test rdi, rdi
je 0x140019fdc
movsxd r8, dword [rsi + 0x18]
movsxd rax, dword [rsi]
mov rcx, r9
mov rdx, rdi
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov r9, rax
movsxd rdx, dword [rsi]
movsxd rax, r12d
movsxd r8, ebp
imul rax, rdx
imul r8, rdx
mov rdx, r9
lea rcx, [rdi + rax]
call sub.ucrtbase.dll_memcpy
jmp 0x1400175df
xor eax, eax
xor ecx, ecx
jmp 0x140019336
xor eax, eax
xor edx, edx
jmp 0x140019147
movsxd r12, ebp
movsxd rcx, dword [rsi]
mov eax, 1
imul rcx, r12
test rcx, rcx
cmove rcx, rax
call fcn.140011a50
mov rbx, qword [rsi + 8]
mov ebp, dword [rsi + 0x14]
mov r9, rax
test rbx, rbx
je 0x14001a053
movsxd r8, dword [rsi + 0x18]
movsxd rax, dword [rsi]
mov rcx, r9
mov rdx, rbx
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov r9, rax
movsxd rdx, dword [rsi]
movsxd rax, ebp
movsxd r8, edi
imul rax, rdx
imul r8, rdx
mov rdx, r9
lea rcx, [rbx + rax]
call sub.ucrtbase.dll_memcpy
jmp 0x1400179dc
movsxd rax, dword [rsi]
movsxd rcx, dword [rsi + 0x18]
imul rcx, rax
mov eax, 1
test rcx, rcx
cmove rcx, rax
call fcn.140011a50
mov rbx, qword [rsi + 8]
mov ebp, dword [rsi + 0x14]
mov r9, rax
test rbx, rbx
je 0x14001a0b9
movsxd r8, dword [rsi + 0x18]
movsxd rax, dword [rsi]
mov rcx, r9
mov rdx, rbx
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov r9, rax
movsxd rdx, dword [rsi]
movsxd rax, ebp
movsxd r8, edi
imul rax, rdx
imul r8, rdx
mov rdx, r9
lea rcx, [rbx + rax]
call sub.ucrtbase.dll_memcpy
jmp 0x14001837c
mov eax, ebx
mov byte [rdi + 2], 0
mov ebp, 2
sar eax, 6
or eax, 0xffffffc0
mov byte [rdi], al
mov eax, ebx
and eax, 0x3f
or eax, 0xffffff80
mov byte [rdi + 1], al
jmp 0x140018019
mov r8d, 3
lea rdx, [0x140028825]
test r12d, r12d
jne 0x14001a3be
movaps xmm6, xmmword [rsp + 0xa0]
mov rcx, rsi
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x14001d6d0
movapd xmm0, xmm1
jmp 0x14001877c
movaps xmm0, xmm1
jmp 0x140018827
mov rdx, r13
mov rcx, rbx
call fcn.140020d80
mov r8, qword [rsp + 0x78]
mov r13, qword [rsp + 0x70]
mov edi, r8d
sar r8, 0x20
mov rbp, r8
cmp r14d, 0xfa1d05ee
jne 0x1400184c8
call 0x14000ead0
jmp 0x1400184c8
mov rdx, r13
mov rcx, rbx
call fcn.140020d80
mov r8, qword [rsp + 0x78]
mov r13, qword [rsp + 0x70]
mov edi, r8d
sar r8, 0x20
mov rbp, r8
cmp r14d, 0xfa1d05ee
jne 0x1400181bd
call 0x14000ead0
jmp 0x1400181bd
mov r8d, 2
lea rdx, [0x14002881e]
test r12d, r12d
je 0x14001a114
mov ebp, 1
lea rbx, [rsp + 0x70]
mov rcx, rbx
call fcn.140020d80
mov rax, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
mov r8d, eax
sar rax, 0x20
mov rbx, rax
cmp ebp, 0xfa1d05ee
je 0x14001a1ff
mov ebp, ebx
jmp 0x140018d26
mov dword [rsp + 0x5c], r8d
mov ebp, ebx
mov qword [rsp + 0x50], rdx
call 0x14000ead0
mov r8d, dword [rsp + 0x5c]
mov rdx, qword [rsp + 0x50]
jmp 0x140018d26
mov rcx, qword [rsi + 8]
jmp 0x14001806b
mov eax, ebx
mov byte [rdi + 3], 0
mov ebp, 3
sar eax, 0xc
or eax, 0xffffffe0
mov byte [rdi], al
mov eax, ebx
sar eax, 6
and eax, 0x3f
or eax, 0xffffff80
mov byte [rdi + 1], al
mov eax, ebx
and eax, 0x3f
or eax, 0xffffff80
mov byte [rdi + 2], al
jmp 0x140018019
mov r8d, 3
lea rdx, [0x140028825]
test r12d, r12d
je 0x14001a114
mov ebx, 1
lea rcx, [rsp + 0x70]
call fcn.140020d80
mov rax, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
mov r8d, eax
sar rax, 0x20
mov rdi, rax
cmp ebx, 0xfa1d05ee
je 0x14001a2a1
mov ebx, edi
jmp 0x140018c7f
mov dword [rsp + 0x5c], r8d
mov ebx, edi
mov qword [rsp + 0x50], rdx
call 0x14000ead0
mov r8d, dword [rsp + 0x5c]
mov rdx, qword [rsp + 0x50]
jmp 0x140018c7f
mov rcx, qword [rsi + 8]
cmp rdi, rcx
jne 0x140018078
jmp 0x140017f2f
xor edx, edx
mov qword [rsi + 8], rax
mov dword [rsi + 0x10], edx
mov dword [rsi + 0x18], ebx
jmp 0x14001a2c5
mov qword [rsi + 8], rax
xor eax, eax
mov dword [rsi + 0x10], eax
mov dword [rsi + 0x18], ebx
jmp 0x140019962
mov r8d, 2
lea rdx, [0x14002881e]
test r12d, r12d
je 0x14001a114
lea rcx, [rsp + 0x70]
call fcn.140020d80
mov rax, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r8d, eax
shr rax, 0x20
mov rdi, rax
jmp 0x1400187c8
test r12d, r12d
jne 0x14001a7db
mov r13d, 3
lea rdi, [0x140028825]
mov ebp, 1
jmp 0x1400189d8
movsxd rax, ebp
mov byte [r12 + rax], 0
jmp 0x140017dd5
mov ebx, 2
cmp eax, 2
jg 0x140018038
jmp 0x14001803e
mov ebx, 2
cmp eax, 2
jg 0x140017e30
jmp 0x140017e36
mov ebx, 2
cmp eax, 2
jg 0x140017ee0
jmp 0x140017ee6
mov rcx, qword [rsi + 8]
cmp r15, rcx
je 0x14001a075
test rcx, rcx
je 0x14001837c
jmp 0x14001872f
mov r8d, 3
lea rdx, [0x140028821]
jmp 0x14001a1c1
lea rcx, [rsp + 0x70]
mov r8d, 3
lea rdx, [0x140028825]
jmp 0x14001a30d
test r12d, r12d
jne 0x14001a8e5
mov r13d, 4
lea rdi, str._0.0
jmp 0x14001a341
mov r8d, 3
lea rdx, [0x140028821]
jmp 0x14001a2ff
mov r8d, 4
lea rdx, str._0.0
jmp 0x14001a266
mov ebx, 2
cmp eax, 2
jg 0x1400186e0
jmp 0x1400186e6
xor ebp, ebp
mov qword [rsi + 8], rax
mov dword [rsi + 0x10], ebp
mov dword [rsi + 0x18], ebx
jmp 0x14001a395
mov r8d, 0x12
mov rcx, rbx
call fcn.14000df40
mov r8, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
mov rcx, rbx
mov r13, r8
call fcn.1400208b0
sar r13, 0x20
mov rbp, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
cmp r13d, 0xfa1d05ee
jne 0x140018b0d
call 0x14000ead0
jmp 0x140018b0d
mov r8d, 6
mov rcx, rbx
call fcn.14000c480
jmp 0x14001a446
mov ebx, 2
cmp eax, 2
jg 0x140018640
jmp 0x140018316
mov ebx, 2
cmp eax, 2
jg 0x140018310
jmp 0x140018316
mov ebx, 2
cmp eax, 2
jg 0x140018598
jmp 0x140018316
mov dword [rsp + 0x38], r13d
movzx r8d, byte [rsp + 0x5c]
lea r14, [rsp + 0x70]
mov byte [rsp + 0x30], bpl
mov r9d, dword [rsp + 0x50]
mov rcx, r14
mov dword [rsp + 0x20], edi
mov byte [rsp + 0x40], r15b
mov byte [rsp + 0x28], dl
call fcn.14001f5f0
mov r8, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x70]
mov r13, r8
mov ebp, r8d
sar r13, 0x20
mov ebx, r13d
test r12d, r12d
jne 0x14001a956
mov r8d, ebp
mov rdx, rdi
jmp 0x140018c7f
call fcn.14001f5f0
mov r8, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r14, r8
mov r13d, r8d
sar r14, 0x20
mov edi, r14d
test r12d, r12d
jne 0x14001a8f7
mov r8d, r13d
jmp 0x1400187c8
movsxd rax, dword [rsi]
movsxd rcx, dword [rsi + 0x18]
imul rcx, rax
mov eax, 1
test rcx, rcx
cmove rcx, rax
call fcn.140011a50
mov rbx, qword [rsi + 8]
mov edi, dword [rsi + 0x14]
mov r9, rax
test rbx, rbx
je 0x14001a594
movsxd r8, dword [rsi + 0x18]
movsxd rax, dword [rsi]
mov rcx, r9
mov rdx, rbx
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov r9, rax
movsxd r8, dword [rsi]
movsxd rax, edi
mov rdx, r9
imul rax, r8
imul r8, r8, 0xc
lea rcx, [rbx + rax]
call sub.ucrtbase.dll_memcpy
jmp 0x140017ea1
movsxd rax, dword [rsi]
movsxd rcx, dword [rsi + 0x18]
imul rcx, rax
mov eax, 1
test rcx, rcx
cmove rcx, rax
call fcn.140011a50
mov rbx, qword [rsi + 8]
mov r12d, dword [rsi + 0x14]
mov r9, rax
test rbx, rbx
je 0x14001a5f8
movsxd r8, dword [rsi + 0x18]
movsxd rax, dword [rsi]
mov rcx, r9
mov rdx, rbx
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov r9, rax
movsxd rdx, dword [rsi]
movsxd rax, r12d
movsxd r8, edi
imul rax, rdx
imul r8, rdx
mov rdx, r9
lea rcx, [rbx + rax]
call sub.ucrtbase.dll_memcpy
jmp 0x14001825a
mov r8d, 6
mov rcx, rbx
call fcn.14000c480
mov r8, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
mov rcx, rbx
mov r13, r8
call fcn.1400208b0
sar r13, 0x20
mov rdi, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
cmp r13d, 0xfa1d05ee
je 0x14001ab6e
mov r8d, ebp
mov rdx, rdi
shr rbp, 0x20
jmp 0x140018d1d
lea rbx, [rsp + 0x70]
mov r8d, 0x12
mov rcx, rbx
call fcn.14000df40
mov r8, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
mov rcx, rbx
mov r13, r8
call fcn.1400208b0
sar r13, 0x20
mov rdi, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
cmp r13d, 0xfa1d05ee
je 0x14001abac
mov r13d, ebp
shr rbp, 0x20
jmp 0x1400189b7
lea rbx, [rsp + 0x70]
mov r8d, 0x12
mov rcx, rbx
call fcn.14000df40
mov r8, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
mov rcx, rbx
mov rbp, r8
call fcn.1400208b0
sar rbp, 0x20
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
cmp ebp, 0xfa1d05ee
je 0x14001aa2d
mov r8d, edi
shr rdi, 0x20
mov rdx, rbx
mov rbx, rdi
jmp 0x140018c76
test dil, dil
jne 0x14001ab53
test r12d, r12d
jne 0x14001ab41
mov r13d, 5
lea rdi, [0x140028811]
jmp 0x14001a341
test rdx, rdx
jne 0x14001aaa4
test dil, dil
jne 0x14001aa89
test r12d, r12d
jne 0x14001ac50
mov r13d, 4
lea rdi, [0x1400287f9]
jmp 0x14001a341
mov edi, 0xf
jmp 0x140019848
mov ebx, 2
cmp eax, 2
jg 0x1400189ed
jmp 0x1400189f3
mov r8d, r13d
mov rdx, rdi
mov rcx, rbx
call fcn.140020d80
mov rax, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x70]
mov r13d, eax
sar rax, 0x20
mov rbx, rax
cmp ebp, 0xfa1d05ee
je 0x14001a7a9
mov ebp, ebx
jmp 0x1400189c0
call 0x14000ead0
mov ebp, ebx
jmp 0x1400189c0
mov ebx, 2
cmp eax, 2
jg 0x1400184f7
jmp 0x1400181ee
mov ebx, 2
cmp eax, 2
jg 0x1400181e8
jmp 0x1400181ee
mov r8d, 3
lea rdx, [0x140028825]
lea rcx, [rsp + 0x70]
call fcn.140020d80
mov rax, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x70]
mov r13d, eax
shr rax, 0x20
mov rbp, rax
jmp 0x1400189c0
cmp dil, 1
lea rdx, [0x140028811]
mov ebx, 1
sbb r8d, r8d
lea rax, [0x140028817]
add r8d, 6
test dil, dil
cmovne rdx, rax
jmp 0x140018c76
mov ebx, 1
test rdx, rdx
jne 0x14001aa6a
test dil, dil
lea rdx, [0x1400287f9]
lea rax, [0x140028803]
mov r8d, 4
cmovne rdx, rax
jmp 0x140018c76
lea rbx, [rsp + 0x70]
mov rcx, rbx
call fcn.14000d630
mov r10, qword [rsp + 0x70]
mov r8d, dword [rsp + 0x78]
jmp 0x140018c44
movsxd rax, dword [rsi]
movsxd rcx, dword [rsi + 0x18]
imul rcx, rax
mov eax, 1
test rcx, rcx
cmove rcx, rax
call fcn.140011a50
mov rbx, qword [rsi + 8]
mov edi, dword [rsi + 0x14]
mov r9, rax
test rbx, rbx
je 0x14001a8c3
movsxd r8, dword [rsi + 0x18]
movsxd rax, dword [rsi]
mov rcx, r9
mov rdx, rbx
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov r9, rax
movsxd rdx, dword [rsi]
movsxd rax, edi
movsxd r8, r13d
imul rax, rdx
imul r8, rdx
mov rdx, r9
lea rcx, [rbx + rax]
call sub.ucrtbase.dll_memcpy
jmp 0x140018a5f
mov r8d, 4
lea rdx, str._0.0
jmp 0x14001a7e8
mov rdx, rbp
mov rcx, rbx
call fcn.140020d80
mov r8, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov rdi, r8
mov r13d, r8d
sar rdi, 0x20
cmp r14d, 0xfa1d05ee
jne 0x14001a548
call 0x14000ead0
jmp 0x14001a548
mov edx, dword [rax]
mov ebx, ebx
mov dword [r9], edx
mov eax, dword [rax + rbx - 4]
mov dword [r9 + rbx - 4], eax
jmp 0x14001988e
mov rdi, r12
xor ebx, ebx
jmp 0x140017513
call 0x14000ead0
jmp 0x140019ed4
mov rdx, rdi
mov rcx, r14
call fcn.140020d80
mov r8, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x70]
mov rbx, r8
mov ebp, r8d
sar rbx, 0x20
cmp r13d, 0xfa1d05ee
jne 0x14001a518
call 0x14000ead0
jmp 0x14001a518
mov edi, 0xe
jmp 0x140019848
lea rbx, [rsp + 0x70]
mov rcx, rbx
call fcn.14000d630
mov r10, qword [rsp + 0x70]
mov r8d, dword [rsp + 0x78]
jmp 0x140018985
xor edx, edx
xor eax, eax
jmp 0x140019d67
movsxd rdi, edi
mov byte [rax + rdi], 0
test rax, rax
je 0x1400192a3
cmp r13d, 0xfa1d05ee
jne 0x14001713f
jmp 0x1400187df
mov edi, 6
jmp 0x140019848
mov edi, 7
jmp 0x140019848
mov edi, 8
jmp 0x140019848
mov edi, 9
jmp 0x140019848
mov edi, 0xa
jmp 0x140019848
mov edi, 0xb
jmp 0x140019848
mov edi, 0xc
jmp 0x140019848
mov edi, 0xd
jmp 0x140019848
mov ecx, 1
lea r13, [0x140028308]
mov ebp, 0x1e
call qword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov r14, rax
mov r8, rbp
mov rcx, r13
mov r9, r14
mov edx, 1
call sub.ucrtbase.dll_fwrite
sub rbp, rax
add r13, rax
test rbp, rbp
jg 0x14001aa47
jmp 0x14001a6f8
mov r8d, 3
lea rdx, [0x14002880d]
jmp 0x140018c76
movsxd rax, edi
mov byte [r15 + rax], 0
jmp 0x140019ec7
test r12d, r12d
jne 0x14001ac24
mov r13d, 4
lea rdi, [0x140028803]
jmp 0x14001a341
test r12d, r12d
jne 0x14001ac36
mov r13d, 3
lea rdi, [0x14002880d]
jmp 0x14001a341
mov edi, 2
jmp 0x140019848
mov edi, 4
jmp 0x140019848
mov edi, 5
jmp 0x140019848
mov edi, 3
jmp 0x140019848
mov ecx, 1
lea r15, [0x140028308]
mov r13d, 0x1e
call qword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov r14, rax
mov r8, r13
mov rcx, r15
mov r9, r14
mov edx, 1
call sub.ucrtbase.dll_fwrite
sub r13, rax
add r15, rax
test r13, r13
jg 0x14001ab02
jmp 0x140018b0d
mov edi, 1
jmp 0x140019848
mov ebx, ebx
movzx eax, word [rax + rbx - 2]
mov word [r9 + rbx - 2], ax
jmp 0x14001988e
mov r8d, 5
lea rdx, [0x140028811]
jmp 0x14001a7e8
test r12d, r12d
jne 0x14001ac12
mov r13d, 6
lea rdi, [0x140028817]
jmp 0x14001a341
mov ecx, 1
lea r15, [0x140028308]
mov r13d, 0x1e
call qword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov r14, rax
mov r8, r13
mov rcx, r15
mov r9, r14
mov edx, 1
call sub.ucrtbase.dll_fwrite
sub r13, rax
add r15, rax
test r13, r13
jg 0x14001ab89
jmp 0x14001a658
mov ecx, 1
lea r15, [0x140028308]
mov r13d, 0x1e
call qword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov r14, rax
mov r8, r13
mov rcx, r15
mov r9, r14
mov edx, 1
call sub.ucrtbase.dll_fwrite
sub r13, rax
add r15, rax
test r13, r13
jg 0x14001abc7
jmp 0x14001a6aa
movsxd r12, edi
mov byte [rax + r12], 0
test rax, rax
je 0x1400192a3
test r14w, r14w
jne 0x1400178d1
test edi, edi
je 0x14001713f
jmp 0x140017816
mov r8d, 6
lea rdx, [0x140028817]
jmp 0x14001a7e8
mov r8d, 4
lea rdx, [0x140028803]
jmp 0x14001a7e8
mov r8d, 3
lea rdx, [0x14002880d]
jmp 0x14001a7e8
xor r8d, r8d
jmp 0x140018c3f
mov r8d, 4
lea rdx, [0x1400287f9]
jmp 0x14001a7e8
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
mov rsi, rcx
mov rbp, rdx
mov edi, r8d
test r8d, r8d
je 0x14001d77f
jle 0x14001d77f
test rdx, rdx
je 0x14001d77f
mov eax, dword [rcx + 0x14]
mov ebx, dword [rcx + 0x18]
add eax, r8d
cmp eax, ebx
jle 0x14001d7c8
test ebx, ebx
jle 0x14001d7b0
nop dword [rax]
add ebx, ebx
cmp eax, ebx
jg 0x14001d718
movsxd rcx, dword [rsi]
movsxd r12, ebx
imul rcx, r12
call fcn.140011340
mov rdx, qword [rsi + 8]
mov rcx, rax
test rdx, rdx
je 0x14001d790
movsxd r8, dword [rsi + 0x14]
movsxd rax, dword [rsi]
imul r8, rax
call sub.ucrtbase.dll_memcpy
mov dword [rsi + 0x10], 0
mov qword [rsi + 8], rax
mov rcx, rax
mov dword [rsi + 0x18], ebx
cmp rbp, rax
je 0x14001d7d3
movsxd rdx, dword [rsi]
movsxd rax, dword [rsi + 0x14]
movsxd r8, edi
imul rax, rdx
imul r8, rdx
mov rdx, rbp
add rcx, rax
call sub.ucrtbase.dll_memcpy
add dword [rsi + 0x14], edi
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
mov qword [rsi + 8], rax
mov dword [rsi + 0x10], 0
mov dword [rsi + 0x18], ebx
cmp rbp, rcx
je 0x14001d7d0
test rcx, rcx
je 0x14001d77c
jmp 0x14001d75f
mov ebx, 2
cmp eax, 2
jg 0x14001d718
jmp 0x14001d71e
mov rcx, qword [rcx + 8]
jmp 0x14001d79e
movsxd r12, ebx
movsxd rcx, dword [rsi]
mov eax, 1
imul rcx, r12
test rcx, rcx
cmove rcx, rax
call fcn.140011a50
mov rbp, qword [rsi + 8]
movsxd rbx, dword [rsi + 0x14]
movsxd r12, dword [rsi]
mov r9, rax
test rbp, rbp
je 0x14001d814
movsxd r8, dword [rsi + 0x18]
mov rdx, rbp
mov rcx, rax
imul r8, r12
call sub.ucrtbase.dll_memcpy
mov r9, rax
imul rbx, r12
movsxd r8, edi
mov rdx, r9
imul r8, r12
lea rcx, [rbp + rbx]
call sub.ucrtbase.dll_memcpy
jmp 0x14001d77c