Function at 0x180023160
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x760
mov rax, qword [0x18014a1c0]
xor rax, rsp
mov qword [rsp + 0x750], rax
mov r14, r9
mov qword [rsp + 0x190], r8
mov rdi, rdx
mov rbx, rcx
mov qword [rsp + 0x60], rcx
xor r15d, r15d
mov esi, r15d
mov dword [rsp + 0x38], r15d
mov r8d, 0x104
lea rdx, [rsp + 0x640]
xor ecx, ecx
call qword [sym.imp.kernel32.dll_GetModuleFileNameA]
xorps xmm0, xmm0
movups xmmword [rsp + 0x450], xmm0
mov qword [rsp + 0x460], r15
mov qword [rsp + 0x468], r15
lea rax, [rsp + 0x640]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], sil
jne 0x1800231e6
lea rdx, [rsp + 0x640]
lea rcx, [rsp + 0x450]
call fcn.1800180c0
nop
lea r15, [rsp + 0x450]
mov r12, qword [rsp + 0x450]
cmp qword [rsp + 0x468], 0xf
cmova r15, r12
mov r13, qword [rsp + 0x460]
test r13, r13
je 0x1800232a3
xor edx, edx
mov r8d, 0x100
lea rcx, [rsp + 0x4b0]
call fcn.18010d6a0
lea rcx, [0x18012dbb4]
lea rdx, [0x18012dbb6]
movzx eax, byte [rcx]
mov byte [rsp + rax + 0x4b0], 1
inc rcx
cmp rcx, rdx
jne 0x180023252
lea rax, [r13 - 1]
mov r8, 0xffffffffffffffff
cmp rax, r8
cmovb r8, rax
add r8, r15
movzx eax, byte [r8]
cmp byte [rsp + rax + 0x4b0], 0
jne 0x18002329e
cmp r8, r15
je 0x1800232a3
dec r8
movzx eax, byte [r8]
cmp byte [rsp + rax + 0x4b0], 0
je 0x180023288
sub r8, r15
jmp 0x1800232aa
mov r8, 0xffffffffffffffff
cmp r8, 0xffffffffffffffff
je 0x180023375
xorps xmm0, xmm0
movups xmmword [rsp + 0x260], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x270], xmm1
cmp r13, r8
cmovb r8, r13
lea rdx, [rsp + 0x450]
cmp qword [rsp + 0x468], 0xf
cmova rdx, r12
lea rcx, [rsp + 0x260]
call fcn.1800180c0
mov esi, 0x200
mov rdx, qword [rsp + 0x468]
cmp rdx, 0xf
jbe 0x18002333c
inc rdx
mov rcx, qword [rsp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180023337
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002653e
call fcn.1800ce3d0
movups xmm0, xmmword [rsp + 0x260]
movups xmmword [rsp + 0x450], xmm0
movups xmm1, xmmword [rsp + 0x270]
movups xmmword [rsp + 0x460], xmm1
movdqa xmm0, xmmword [0x180133fc0]
movdqu xmmword [rsp + 0x270], xmm0
mov byte [rsp + 0x260], 0
lea rdx, [rsp + 0x450]
lea rcx, [rsp + 0x430]
call fcn.180016230
nop
lea rdx, [rsp + 0x430]
lea rcx, [rsp + 0x5c0]
call fcn.180009010
nop
mov rdx, rax
lea rcx, [rsp + 0x3d0]
call fcn.180016d10
nop
mov rdx, qword [rsp + 0x5d8]
cmp rdx, 0xf
jbe 0x1800233f5
inc rdx
mov rcx, qword [rsp + 0x5c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800233f0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026345
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fc0]
movdqu xmmword [rsp + 0x5d0], xmm0
mov byte [rsp + 0x5c0], 0
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x30], rax
call fcn.1800cc818
mov r12d, eax
xorps xmm0, xmm0
movups xmmword [rsp + 0xb0], xmm0
xor r13d, r13d
mov qword [rsp + 0xc0], r13
mov qword [rsp + 0xc8], 7
mov word [rsp + 0xb0], r13w
or esi, 0x10
mov dword [rsp + 0x38], esi
mov dword [rsp + 0x20], r13d
xor r9d, r9d
lea r8d, [r13 + 9]
lea rdx, str.workspace
mov ecx, eax
call fcn.1800cc840
mov r15, rax
shr rax, 0x20
test eax, eax
jne 0x18002634b
xor r8d, r8d
movsxd rdx, r15d
lea rcx, [rsp + 0xb0]
call fcn.1800130d0
lea r9, [rsp + 0xb0]
cmp qword [rsp + 0xc8], 7
cmova r9, qword [rsp + 0xb0]
mov dword [rsp + 0x20], r15d
mov r8d, 9
lea rdx, str.workspace
mov ecx, r12d
call fcn.1800cc840
mov rcx, rax
shr rax, 0x20
test eax, eax
jne 0x180026358
and esi, 0xffffffef
or esi, 0xc
mov dword [rsp + 0x38], esi
lea rdx, [rsp + 0x3d0]
lea rcx, [rsp + 0x280]
call fcn.180003080
or esi, 0x20
mov dword [rsp + 0x38], esi
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x280]
call fcn.180002d20
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x3d0]
call fcn.180013200
and esi, 0xffffffdf
mov rdx, qword [rsp + 0x298]
cmp rdx, 7
jbe 0x18002356f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x280]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002356a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026362
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x290], xmm0
mov word [rsp + 0x280], r13w
mov rdx, qword [rsp + 0xc8]
cmp rdx, 7
jbe 0x1800235d1
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800235cc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026368
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0xc0], xmm0
mov word [rsp + 0xb0], r13w
lea rdx, [rsp + 0x3d0]
lea rcx, [0x18014cdc0]
call fcn.180016e10
mov rcx, rax
call fcn.180016c80
mov rdx, qword [rsp + 0x190]
lea rcx, [rsp + 0x2d0]
call fcn.180016d10
nop
lea r8, [rsp + 0x2d0]
lea rdx, [rsp + 0x3d0]
lea rcx, [rsp + 0x3b0]
call fcn.180002f40
nop
mov rdx, qword [rsp + 0x2e8]
cmp rdx, 7
jbe 0x180023683
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x2d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002367e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002636e
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x2e0], xmm0
mov word [rsp + 0x2d0], r13w
lea rdx, [rsp + 0x3b0]
lea rcx, [rsp + 0x3f0]
call fcn.1800207a0
nop
lea rdx, [rsp + 0x3d0]
lea rcx, [rsp + 0x410]
call fcn.1800207a0
nop
lea rdx, [rsp + 0x470]
lea rcx, [rsp + 0x3f0]
call fcn.180016460
bts esi, 7
lea rdx, [rsp + 0x2a0]
lea rcx, [rsp + 0x410]
call fcn.180016460
bts esi, 8
mov dword [rsp + 0x38], esi
lea r9, [rsp + 0x2a0]
mov r15, qword [rsp + 0x2a0]
mov r12, qword [rsp + 0x2b8]
cmp r12, 0xf
cmova r9, r15
lea rcx, [rsp + 0x470]
mov rsi, qword [rsp + 0x470]
mov r13, qword [rsp + 0x488]
cmp r13, 0xf
cmova rcx, rsi
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x20], rax
mov rdx, qword [rsp + 0x480]
call fcn.18002ce00
mov qword [rsp + 0x30], rax
cmp r12, 0xf
jbe 0x1800237a6
lea rdx, [r12 + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x18002378e
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026374
mov rcx, r15
call fcn.1800ce3d0
mov r13, qword [rsp + 0x488]
mov rsi, qword [rsp + 0x470]
movdqa xmm0, xmmword [0x180133fc0]
movdqu xmmword [rsp + 0x2b0], xmm0
mov byte [rsp + 0x2a0], 0
cmp r13, 0xf
jbe 0x1800237f6
lea rdx, [r13 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x1800237ee
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002637a
mov rcx, rsi
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fc0]
movdqu xmmword [rsp + 0x480], xmm0
mov byte [rsp + 0x470], 0
xorps xmm0, xmm0
cmp qword [rsp + 0x30], 0
je 0x180023a6b
movups xmmword [rbx], xmm0
xor edi, edi
mov qword [rbx + 0x10], rdi
mov qword [rbx + 0x18], rdi
lea r8d, [rdi + 1]
lea rdx, [0x18012e94c]
mov rcx, rbx
call fcn.1800180c0
nop
mov rdx, qword [rsp + 0x428]
cmp rdx, 7
jbe 0x180023887
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x410]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180023882
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026526
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x420], xmm0
mov word [rsp + 0x410], di
mov rdx, qword [rsp + 0x408]
cmp rdx, 7
jbe 0x1800238e8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800238e3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002652c
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x400], xmm0
mov word [rsp + 0x3f0], di
mov rdx, qword [rsp + 0x3c8]
cmp rdx, 7
jbe 0x180023949
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180023944
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026532
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x3c0], xmm0
mov word [rsp + 0x3b0], di
mov rdx, qword [rsp + 0x3e8]
cmp rdx, 7
jbe 0x1800239aa
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800239a5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026538
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x3e0], xmm0
mov word [rsp + 0x3d0], di
mov rdx, qword [rsp + 0x448]
cmp rdx, 0xf
jbe 0x180023a06
inc rdx
mov rcx, qword [rsp + 0x430]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180023a01
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002653e
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fc0]
movdqu xmmword [rsp + 0x440], xmm0
mov byte [rsp + 0x430], 0
mov rdx, qword [rsp + 0x468]
cmp rdx, 0xf
jbe 0x180025749
inc rdx
mov rcx, qword [rsp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180023a61
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026544
call fcn.1800ce3d0
jmp 0x180025749
mov dword [rsp + 0x220], 0x1f1b1e54
mov byte [rsp + 0x224], 0xfa
xor eax, eax
movups xmmword [rsp + 0x225], xmm0
mov byte [rsp + 0x235], al
xor r13d, r13d
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movabs r9, 0x631f864c65a6279f
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0x220]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0x59
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0x220], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x16
jb 0x180023aa6
lea rcx, [rsp + 0x220]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], r13b
jne 0x180023b03
mov r8, qword [rdi + 0x10]
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x180023b1d
mov rcx, qword [rdi]
cmp r8, rax
jne 0x1800242e5
lea rdx, [rsp + 0x220]
call fcn.18010cf00
test eax, eax
jne 0x1800242e5
lea rdx, [rsp + 0x3b0]
lea rcx, [rsp + 0x190]
call fcn.180020b50
movsd xmm0, qword [rax]
movsd qword [rsp + 0x60], xmm0
mov ecx, dword [rax + 8]
mov dword [rsp + 0x470], ecx
lea rax, [0x18014af30]
mov qword [rsp + 0x478], rax
movaps xmm0, xmmword [rsp + 0x470]
movdqa xmmword [rsp + 0x470], xmm0
mov eax, dword [rsp + 0x60]
test eax, eax
je 0x18002408d
cmp eax, 1
je 0x180024095
xor edx, edx
mov r8d, 0x110
lea rcx, [rsp + 0x4b0]
call fcn.18010d6a0
lea rdx, [rsp + 0x3b0]
cmp qword [rsp + 0x3c8], 7
cmova rdx, qword [rsp + 0x3b0]
mov r8d, 0x20
lea rcx, [rsp + 0x4b0]
call fcn.18001a620
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rdi, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x4b0], rdi
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x4ac], edx
cmp qword [rsp + 0x540], 0
jne 0x180023efb
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
xor r8d, r8d
lea rdx, [0x18012dac5]
mov rcx, rbx
call fcn.1800180c0
nop
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x4b0], rdi
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x4ac], edx
lea rcx, [rsp + 0x4c0]
call fcn.180011d70
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x4b0], rax
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rsp + rcx + 0x4ac], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x560], rax
lea rcx, [rsp + 0x560]
call fcn.1800cc5bc
nop
mov rdx, qword [rsp + 0x428]
cmp rdx, 7
jbe 0x180023d0f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x410]
cmp rdx, 0x1000
mov rax, rcx
jb 0x180023d0a
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800263fa
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
mov word [rsp + 0x410], r13w
movdqu xmmword [rsp + 0x420], xmm0
mov rdx, qword [rsp + 0x408]
cmp rdx, 7
jbe 0x180023d71
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3f0]
cmp rdx, 0x1000
mov rax, rcx
jb 0x180023d6c
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026400
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
mov word [rsp + 0x3f0], r13w
movdqu xmmword [rsp + 0x400], xmm0
mov rdx, qword [rsp + 0x3c8]
cmp rdx, 7
jbe 0x180023dd3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3b0]
cmp rdx, 0x1000
mov rax, rcx
jb 0x180023dce
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026406
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
mov word [rsp + 0x3b0], r13w
movdqu xmmword [rsp + 0x3c0], xmm0
mov rdx, qword [rsp + 0x3e8]
cmp rdx, 7
jbe 0x180023e35
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3d0]
cmp rdx, 0x1000
mov rax, rcx
jb 0x180023e30
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002640c
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
mov word [rsp + 0x3d0], r13w
movdqu xmmword [rsp + 0x3e0], xmm0
mov rdx, qword [rsp + 0x448]
cmp rdx, 0xf
jbe 0x180023e92
inc rdx
mov rcx, qword [rsp + 0x430]
cmp rdx, 0x1000
mov rax, rcx
jb 0x180023e8d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026412
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fc0]
movdqu xmmword [rsp + 0x440], xmm0
mov byte [rsp + 0x430], 0
mov rdx, qword [rsp + 0x468]
cmp rdx, 0xf
jbe 0x180025749
inc rdx
mov rcx, qword [rsp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180023a61
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026418
call fcn.1800ce3d0
jmp 0x180025749
mov qword [rsp + 0x4a0], r13
mov word [rsp + 0x4a8], 1
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsp + rcx + 0x4f8]
mov qword [rsp + 0x490], rax
test rax, rax
sete byte [rsp + 0x498]
mov byte [rsp + 0x499], 0
movaps xmm0, xmmword [rsp + 0x4a0]
movdqa xmmword [rsp + 0x470], xmm0
movaps xmm1, xmmword [rsp + 0x490]
movdqa xmmword [rsp + 0x190], xmm1
lea r8, [rsp + 0x470]
lea rdx, [rsp + 0x190]
lea rcx, [rsp + 0x5c0]
call fcn.180016f90
nop
lea rcx, [rsp + 0x4c0]
call fcn.180014d20
test rax, rax
jne 0x180023fd0
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
mov eax, 6
mov edx, 2
cmp qword [rsp + rcx + 0x4f8], 0
cmovne eax, edx
or eax, dword [rsp + rcx + 0x4c0]
and eax, 0x17
mov dword [rsp + rcx + 0x4c0], eax
mov edx, dword [rsp + rcx + 0x4c4]
and edx, eax
jne 0x180026380
movups xmm0, xmmword [rsp + 0x5c0]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rsp + 0x5d0]
movups xmmword [rbx + 0x10], xmm1
movdqa xmm0, xmmword [0x180133fc0]
movdqu xmmword [rsp + 0x5d0], xmm0
mov byte [rsp + 0x5c0], 0
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x4b0], rdi
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x4ac], edx
lea rcx, [rsp + 0x4c0]
call fcn.180011d70
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x4b0], rax
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rsp + rcx + 0x4ac], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x560], rax
lea rcx, [rsp + 0x560]
call fcn.1800cc5bc
nop
jmp 0x180023cc7
test ecx, ecx
jne 0x1800263dd
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
xor r8d, r8d
lea rdx, [0x18012dac5]
mov rcx, rbx
call fcn.1800180c0
nop
mov rdx, qword [rsp + 0x428]
cmp rdx, 7
jbe 0x1800240fe
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x410]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800240f9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800263fa
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x420], xmm0
mov word [rsp + 0x410], r13w
mov rdx, qword [rsp + 0x408]
cmp rdx, 7
jbe 0x180024160
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002415b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026400
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x400], xmm0
mov word [rsp + 0x3f0], r13w
mov rdx, qword [rsp + 0x3c8]
cmp rdx, 7
jbe 0x1800241c2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800241bd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026406
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x3c0], xmm0
mov word [rsp + 0x3b0], r13w
mov rdx, qword [rsp + 0x3e8]
cmp rdx, 7
jbe 0x180024224
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002421f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002640c
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x3e0], xmm0
mov word [rsp + 0x3d0], r13w
mov rdx, qword [rsp + 0x448]
cmp rdx, 0xf
jbe 0x180024281
inc rdx
mov rcx, qword [rsp + 0x430]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002427c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026412
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fc0]
movdqu xmmword [rsp + 0x440], xmm0
mov byte [rsp + 0x430], 0
mov rdx, qword [rsp + 0x468]
cmp rdx, 0xf
jbe 0x180025749
inc rdx
mov rcx, qword [rsp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180023a61
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026418
jmp 0x180023a61
mov dword [rsp + 0x170], 0x27332b27
mov word [rsp + 0x174], 0xe509
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x176], xmm0
mov dword [rsp + 0x186], eax
mov byte [rsp + 0x18a], al
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movabs r9, 0xf656fecec7040e9c
nop dword [rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0x170]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0x44
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0x170], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x1b
jb 0x180024330
lea rcx, [rsp + 0x170]
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], r13b
jne 0x180024390
mov r8, qword [rdi + 0x10]
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800243aa
mov rcx, qword [rdi]
cmp r8, rax
jne 0x180024f5c
lea rdx, [rsp + 0x170]
call fcn.18010cf00
test eax, eax
jne 0x180024f5c
mov rdx, qword [rsp + 0x190]
mov rax, qword [rdx + 0x10]
cmp rax, 4
jb 0x180024471
lea rcx, [rax - 4]
xorps xmm0, xmm0
movups xmmword [rsp + 0x470], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x480], xmm1
cmp rax, rcx
jb 0x18002641e
cmp qword [rdx + 0x18], 0xf
jbe 0x18002440c
mov rdx, qword [rdx]
add rdx, rcx
mov r8d, 4
lea rcx, [rsp + 0x470]
call fcn.1800180c0
mov r15d, dword [rsp + 0x38]
or r15d, 0x402
lea rcx, [rsp + 0x470]
mov rdi, qword [rsp + 0x470]
mov rsi, qword [rsp + 0x488]
cmp rsi, 0xf
cmova rcx, rdi
mov r8, qword [rsp + 0x480]
cmp r8, 4
jne 0x180024486
lea rdx, str..png
call fcn.18010cf00
test eax, eax
jne 0x180024486
mov r12b, 1
jmp 0x180024489
mov rsi, qword [rsp + 0x488]
mov rdi, qword [rsp + 0x470]
mov r15d, dword [rsp + 0x38]
xor r12b, r12b
test r15b, 2
je 0x1800244c6
cmp rsi, 0xf
jbe 0x1800244c6
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x1800244be
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026424
mov rcx, rdi
call fcn.1800ce3d0
xor edx, edx
mov r8d, 0x108
lea rcx, [rsp + 0x4b0]
call fcn.18010d6a0
lea rdx, [rsp + 0x3b0]
lea rcx, [rsp + 0x4b0]
test r12b, r12b
je 0x180024925
cmp qword [rsp + 0x3c8], 7
cmova rdx, qword [rsp + 0x3b0]
call fcn.18002e200
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rdi, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x4b0], rdi
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x4ac], edx
cmp qword [rsp + 0x538], 0
jne 0x180024826
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
xor r8d, r8d
lea rdx, [0x18012dac5]
mov rcx, rbx
call fcn.1800180c0
nop
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x4b0], rdi
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x4ac], edx
lea rcx, [rsp + 0x4b8]
call fcn.180011d70
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x4b0], rax
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rsp + rcx + 0x4ac], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x558], rax
lea rcx, [rsp + 0x558]
call fcn.1800cc5bc
nop
mov rdx, qword [rsp + 0x428]
cmp rdx, 7
jbe 0x18002463f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x410]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002463a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002642a
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x420], xmm0
mov word [rsp + 0x410], r13w
mov rdx, qword [rsp + 0x408]
cmp rdx, 7
jbe 0x1800246a1
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002469c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026430
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x400], xmm0
mov word [rsp + 0x3f0], r13w
mov rdx, qword [rsp + 0x3c8]
cmp rdx, 7
jbe 0x180024703
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800246fe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026436
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x3c0], xmm0
mov word [rsp + 0x3b0], r13w
mov rdx, qword [rsp + 0x3e8]
cmp rdx, 7
jbe 0x180024765
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180024760
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002643c
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x3e0], xmm0
mov word [rsp + 0x3d0], r13w
mov rdx, qword [rsp + 0x448]
cmp rdx, 0xf
jbe 0x1800247c2
inc rdx
mov rcx, qword [rsp + 0x430]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800247bd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026442
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fc0]
movdqu xmmword [rsp + 0x440], xmm0
mov byte [rsp + 0x430], 0
mov rdx, qword [rsp + 0x468]
cmp rdx, 0xf
jbe 0x180025749
inc rdx
mov rcx, qword [rsp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180023a61
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026448
jmp 0x180023a61
mov r8, qword [r14 + 0x10]
cmp qword [r14 + 0x18], 0xf
jbe 0x180024834
mov r14, qword [r14]
mov rdx, r14
lea rcx, [rsp + 0x4b0]
call fcn.18002a590
lea rcx, [rsp + 0x4b8]
call fcn.180014d20
test rax, rax
jne 0x180024898
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
mov eax, 6
mov edx, 2
cmp qword [rsp + rcx + 0x4f8], 0
cmovne eax, edx
or eax, dword [rsp + rcx + 0x4c0]
and eax, 0x17
mov dword [rsp + rcx + 0x4c0], eax
mov edx, dword [rsp + rcx + 0x4c4]
and edx, eax
jne 0x18002644e
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x4b0], rdi
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x4ac], edx
lea rcx, [rsp + 0x4b8]
call fcn.180011d70
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x4b0], rax
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rsp + rcx + 0x4ac], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x558], rax
lea rcx, [rsp + 0x558]
call fcn.1800cc5bc
nop
jmp 0x180024d09
cmp qword [rsp + 0x3c8], 7
cmova rdx, qword [rsp + 0x3b0]
call fcn.18002e200
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rdi, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x4b0], rdi
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x4ac], edx
cmp qword [rsp + 0x538], 0
jne 0x180024c11
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
xor r8d, r8d
lea rdx, [0x18012dac5]
mov rcx, rbx
call fcn.1800180c0
nop
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x4b0], rdi
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x4ac], edx
lea rcx, [rsp + 0x4b8]
call fcn.180011d70
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x4b0], rax
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rsp + rcx + 0x4ac], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x558], rax
lea rcx, [rsp + 0x558]
call fcn.1800cc5bc
nop
mov rdx, qword [rsp + 0x428]
cmp rdx, 7
jbe 0x180024a70
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x410]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180024a6b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800264ab
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x420], xmm0
mov word [rsp + 0x410], r13w
mov rdx, qword [rsp + 0x408]
cmp rdx, 7
jbe 0x180024ad2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180024acd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800264b1
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x400], xmm0
mov word [rsp + 0x3f0], r13w
mov rdx, qword [rsp + 0x3c8]
cmp rdx, 7
jbe 0x180024b34
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180024b2f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800264b7
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x3c0], xmm0
mov word [rsp + 0x3b0], r13w
mov rdx, qword [rsp + 0x3e8]
cmp rdx, 7
jbe 0x180024b96
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180024b91
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800264bd
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x3e0], xmm0
mov word [rsp + 0x3d0], r13w
mov rdx, qword [rsp + 0x448]
cmp rdx, 0xf
jbe 0x180024bf3
inc rdx
mov rcx, qword [rsp + 0x430]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180024bee
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800264c3
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fc0]
movdqu xmmword [rsp + 0x440], xmm0
mov byte [rsp + 0x430], 0
jmp 0x18002573c
mov rcx, r14
call fcn.1800133d0
mov r8, qword [r14 + 0x10]
mov rdx, rax
lea rcx, [rsp + 0x4b0]
call fcn.18002a590
lea rcx, [rsp + 0x4b8]
call fcn.180014d20
test rax, rax
jne 0x180024c81
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
mov eax, 6
mov edx, 2
cmp qword [rsp + rcx + 0x4f8], 0
cmovne eax, edx
or eax, dword [rsp + rcx + 0x4c0]
and eax, 0x17
mov dword [rsp + rcx + 0x4c0], eax
mov edx, dword [rsp + rcx + 0x4c4]
and edx, eax
jne 0x1800264c9
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x4b0], rdi
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x4ac], edx
lea rcx, [rsp + 0x4b8]
call fcn.180011d70
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x4b0], rax
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rsp + rcx + 0x4ac], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x558], rax
lea rcx, [rsp + 0x558]
call fcn.1800cc5bc
nop
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
mov r8d, 1
lea rdx, [0x18012e94c]
mov rcx, rbx
call fcn.1800180c0
nop
mov rdx, qword [rsp + 0x428]
cmp rdx, 7
jbe 0x180024d75
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x410]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180024d70
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026526
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x420], xmm0
mov word [rsp + 0x410], r13w
mov rdx, qword [rsp + 0x408]
cmp rdx, 7
jbe 0x180024dd7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180024dd2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002652c
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x400], xmm0
mov word [rsp + 0x3f0], r13w
mov rdx, qword [rsp + 0x3c8]
cmp rdx, 7
jbe 0x180024e39
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180024e34
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026532
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x3c0], xmm0
mov word [rsp + 0x3b0], r13w
mov rdx, qword [rsp + 0x3e8]
cmp rdx, 7
jbe 0x180024e9b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180024e96
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026538
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x3e0], xmm0
mov word [rsp + 0x3d0], r13w
mov rdx, qword [rsp + 0x448]
cmp rdx, 0xf
jbe 0x180024ef8
inc rdx
mov rcx, qword [rsp + 0x430]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180024ef3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002653e
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fc0]
movdqu xmmword [rsp + 0x440], xmm0
mov byte [rsp + 0x430], 0
mov rdx, qword [rsp + 0x468]
cmp rdx, 0xf
jbe 0x180025749
inc rdx
mov rcx, qword [rsp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180023a61
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026544
jmp 0x180023a61
mov dword [rsp + 0x150], 0x3c303125
mov word [rsp + 0x154], 0x2134
mov byte [rsp + 0x156], 0x5c
xor eax, eax
mov qword [rsp + 0x157], rax
mov dword [rsp + 0x15f], eax
mov word [rsp + 0x163], ax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movabs r9, 0x145ba086ebfeec4b
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0x150]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0xd
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0x150], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x15
jb 0x180024fa6
lea rcx, [rsp + 0x150]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], r13b
jne 0x180025003
mov r8, qword [rdi + 0x10]
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x18002501d
mov rcx, qword [rdi]
cmp r8, rax
jne 0x1800255e2
lea rdx, [rsp + 0x150]
call fcn.18010cf00
test eax, eax
jne 0x1800255e2
xor edx, edx
mov r8d, 0x108
lea rcx, [rsp + 0x4b0]
call fcn.18010d6a0
lea rdx, [rsp + 0x3b0]
cmp qword [rsp + 0x3c8], 7
cmova rdx, qword [rsp + 0x3b0]
lea rcx, [rsp + 0x4b0]
call fcn.18002e200
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rdi, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x4b0], rdi
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x4ac], edx
cmp qword [rsp + 0x538], 0
jne 0x180025392
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
xor r8d, r8d
lea rdx, [0x18012dac5]
mov rcx, rbx
call fcn.1800180c0
nop
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x4b0], rdi
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x4ac], edx
lea rcx, [rsp + 0x4b8]
call fcn.180011d70
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x4b0], rax
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rsp + rcx + 0x4ac], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x558], rax
lea rcx, [rsp + 0x558]
call fcn.1800cc5bc
nop
mov rdx, qword [rsp + 0x428]
cmp rdx, 7
jbe 0x1800251ab
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x410]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800251a6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002655c
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x420], xmm0
mov word [rsp + 0x410], r13w
mov rdx, qword [rsp + 0x408]
cmp rdx, 7
jbe 0x18002520d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180025208
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026562
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x400], xmm0
mov word [rsp + 0x3f0], r13w
mov rdx, qword [rsp + 0x3c8]
cmp rdx, 7
jbe 0x18002526f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002526a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026568
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x3c0], xmm0
mov word [rsp + 0x3b0], r13w
mov rdx, qword [rsp + 0x3e8]
cmp rdx, 7
jbe 0x1800252d1
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800252cc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002654a
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x3e0], xmm0
mov word [rsp + 0x3d0], r13w
mov rdx, qword [rsp + 0x448]
cmp rdx, 0xf
jbe 0x18002532e
inc rdx
mov rcx, qword [rsp + 0x430]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180025329
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026550
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fc0]
movdqu xmmword [rsp + 0x440], xmm0
mov byte [rsp + 0x430], 0
mov rdx, qword [rsp + 0x468]
cmp rdx, 0xf
jbe 0x180025749
inc rdx
mov rcx, qword [rsp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180023a61
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026556
jmp 0x180023a61
mov rdx, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x18002539f
mov rdx, qword [r14]
mov r8, qword [r14 + 0x10]
lea rcx, [rsp + 0x4b0]
call fcn.18001b0d0
mov r8, qword [r14 + 0x10]
cmp qword [r14 + 0x18], 0xf
jbe 0x1800253be
mov r14, qword [r14]
mov rdx, r14
lea rcx, [rsp + 0x4b0]
call fcn.18002a590
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
mov r8d, 1
lea rdx, [0x18012e94c]
mov rcx, rbx
call fcn.1800180c0
nop
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x4b0], rdi
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x4ac], edx
lea rcx, [rsp + 0x4b8]
call fcn.180011d70
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x4b0], rax
mov rax, qword [rsp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rsp + rcx + 0x4ac], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x558], rax
lea rcx, [rsp + 0x558]
call fcn.1800cc5bc
nop
mov rdx, qword [rsp + 0x428]
cmp rdx, 7
jbe 0x1800254c2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x410]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800254bd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002655c
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x420], xmm0
mov word [rsp + 0x410], r13w
mov rdx, qword [rsp + 0x408]
cmp rdx, 7
jbe 0x180025524
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002551f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026562
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x400], xmm0
mov word [rsp + 0x3f0], r13w
mov rdx, qword [rsp + 0x3c8]
cmp rdx, 7
jbe 0x180025586
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180025581
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180026568
call fcn.1800ce3d0
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x3c0], xmm0
mov word [rsp + 0x3b0], r13w
mov r8, qword [rsp + 0x3e8]
cmp r8, 7
jbe 0x1800255c3
mov rdx, qword [rsp + 0x3d0]
lea rcx, [rsp + 0x3d0]
call fcn.180015e50
movdqa xmm0, xmmword [0x180133fb0]
movdqu xmmword [rsp + 0x3e0], xmm0
mov word [rsp + 0x3d0], r13w
jmp 0x18002572e
mov dword [rsp + 0x130], 0xdcc4dec2
mov word [rsp + 0x134], 0xdace
mov byte [rsp + 0x136], 0x7c
xor eax, eax
mov qword [rsp + 0x137], rax
mov dword [rsp + 0x13f], eax
mov word [rsp + 0x143], ax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movabs r9, 0xef07a0f834ba8f
nop dword [rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0x130]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
add r8b, 0x17
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0x130], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x15
jb 0x180025630
lea rcx, [rsp + 0x130]
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], r13b
jne 0x180025690
mov r8, qword [rdi + 0x10]
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800256aa
mov rcx, qword [rdi]
cmp r8, rax
jne 0x18002576f
lea rdx, [rsp + 0x130]
call fcn.18010cf00
test eax, eax
jne 0x18002576f
lea rcx, [rsp + 0x3b0]
call fcn.1800208c0
test al, al
je 0x1800256e6
lea rcx, [rsp + 0x3b0]
call fcn.180020b00
lea rdx, [0x18012dac5]
mov rcx, rbx
call fcn.180013780
nop
lea rcx, [rsp + 0x410]
call fcn.180003010
nop
lea rcx, [rsp + 0x3f0]
call fcn.180003010
nop
lea rcx, [rsp + 0x3b0]
call fcn.180003010
nop
lea rcx, [rsp + 0x3d0]
call fcn.180003010
nop
lea rcx, [rsp + 0x430]
call fcn.180013550
nop
lea rcx, [rsp + 0x450]
call fcn.180013550
mov rax, rbx
mov rcx, qword [rsp + 0x750]
xor rcx, rsp
call fcn.1800ce3b0
add rsp, 0x760
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov dword [rsp + 0x1e0], 0x5a585a55
mov word [rsp + 0x1e4], 0x445c
mov byte [rsp + 0x1e6], 0x26
xor eax, eax
mov qword [rsp + 0x1e7], rax
mov dword [rsp + 0x1ef], eax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movabs r9, 0x75a2c10b9eb39a26
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0x1e0]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0xa
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0x1e0], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x13
jb 0x1800257b1
lea rdx, [rsp + 0x1e0]
mov rcx, rdi
call fcn.180016820
test al, al
je 0x18002597c
lea rcx, [rsp + 0x3b0]
call fcn.1800208c0
test al, al
je 0x1800258db
lea rcx, [rsp + 0x3b0]
call fcn.180020950
test al, al
jne 0x1800258db
mov dword [rsp + 0x240], 0xe0dfd3d2
mov byte [rsp + 0x244], 0x4a
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x245], xmm0
mov byte [rsp + 0x255], al
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movabs r9, 0xd0e22c0523870c35
nop dword [rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0x240]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0x73
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0x240], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x16
jb 0x180025880
lea rdx, [rsp + 0x240]
jmp 0x1800256ed
mov dword [rsp + 0x1a0], 0xe8eef8e6
mov word [rsp + 0x1a4], 0x55e9
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x1a6], xmm0
mov qword [rsp + 0x1b6], rax
mov word [rsp + 0x1be], ax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movabs r9, 0xab43bf59966e96b4
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0x1a0]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
add r8b, 0x14
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0x1a0], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x20
jb 0x180025921
lea rdx, [rsp + 0x1a0]
jmp 0x1800256ed
mov dword [rsp + 0x90], 0x1c651a59
mov dword [rsp + 0x94], 0x1b606c1c
mov word [rsp + 0x98], 0x6319
mov byte [rsp + 0x9a], 0xf0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x9b], xmm0
mov dword [rsp + 0xab], eax
mov byte [rsp + 0xaf], al
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movabs r9, 0x9846aa880f877e9f
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0x90]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0x59
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0x90], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x20
jb 0x1800259d3
lea rdx, [rsp + 0x90]
mov rcx, rdi
call fcn.180016820
test al, al
je 0x180025b8c
lea rcx, [rsp + 0x3b0]
call fcn.180020c30
mov rcx, rbx
test al, al
je 0x180025ab5
lea rdx, [0x18012e94c]
call fcn.180013780
nop
lea rcx, [rsp + 0x410]
call fcn.180003010
nop
lea rcx, [rsp + 0x3f0]
call fcn.180003010
nop
lea rcx, [rsp + 0x3b0]
call fcn.180003010
nop
lea rcx, [rsp + 0x3d0]
call fcn.180003010
nop
lea rcx, [rsp + 0x430]
call fcn.180013550
nop
lea rcx, [rsp + 0x450]
call fcn.180013550
mov rax, rbx
jmp 0x18002574c
lea rdx, [0x18012dac5]
call fcn.180013780
nop
lea rcx, [rsp + 0x410]
call fcn.180003010
nop
lea rcx, [rsp + 0x3f0]
call fcn.180003010
nop
lea rcx, [rsp + 0x3b0]
call fcn.180003010
nop
lea rcx, [rsp + 0x3d0]
call fcn.180003010
nop
lea rcx, [rsp + 0x430]
call fcn.180013550
nop
lea rcx, [rsp + 0x450]
call fcn.180013550
mov rax, rbx
jmp 0x18002574c
mov dword [rsp + 0x70], 0xe0e8eee2
mov dword [rsp + 0x74], 0x1ee2e21e
mov dword [rsp + 0x78], 0x25e7e9e2
mov byte [rsp + 0x7c], 0xb2
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x7d], xmm0
mov word [rsp + 0x8d], ax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movabs r9, 0x139797d63c24b15
nop
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0x70]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
add r8b, 0x6d
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0x70], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x1f
jb 0x180025bd0
lea rdx, [rsp + 0x70]
mov rcx, rdi
call fcn.180016820
test al, al
je 0x180025c99
lea rcx, [rsp + 0x3b0]
call fcn.1800208c0
test al, al
je 0x1800256e6
lea rcx, [rsp + 0x3b0]
call fcn.1800209b0
lea rcx, [rsp + 0x3b0]
test al, al
je 0x180025c70
call fcn.180020b00
test al, al
je 0x1800256e6
lea rdx, [0x18012e94c]
jmp 0x1800256ed
lea rdx, [rsp + 0x5c0]
call fcn.180020490
nop
mov rcx, rax
call fcn.180021d60
nop
lea rcx, [rsp + 0x5c0]
call fcn.180013550
jmp 0x1800256e6
mov dword [rsp + 0x110], 0xcadeccdd
mov dword [rsp + 0x114], 0xcddbd9d6
mov byte [rsp + 0x118], 0xbe
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x119], xmm0
mov dword [rsp + 0x129], eax
mov word [rsp + 0x12d], ax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movabs r9, 0x24521385c35036b7
nop word [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0x110]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
dec r8b
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0x110], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x1f
jb 0x180025cf0
lea rdx, [rsp + 0x110]
mov rcx, rdi
call fcn.180016820
test al, al
je 0x180025ebd
lea rcx, [rsp + 0x3b0]
call fcn.1800208c0
test al, al
je 0x180025e1e
lea rcx, [rsp + 0x3b0]
call fcn.180020950
test al, al
je 0x180025e1e
mov dword [rsp + 0x200], 0xe01f1312
mov byte [rsp + 0x204], 0x8a
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x205], xmm0
mov qword [rsp + 0x215], rax
mov word [rsp + 0x21d], ax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movabs r9, 0xd44c96afd4003195
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0x200]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0x13
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0x200], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x1f
jb 0x180025dc3
lea rdx, [rsp + 0x200]
jmp 0x1800256ed
mov dword [rsp + 0x1c0], 0xaeb482b8
mov word [rsp + 0x1c4], 0x1dbd
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x1c6], xmm0
mov dword [rsp + 0x1d6], eax
mov byte [rsp + 0x1da], al
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movabs r9, 0x16612df6e9536c5b
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0x1c0]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0x7d
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0x1c0], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x1b
jb 0x180025e62
lea rdx, [rsp + 0x1c0]
jmp 0x1800256ed
mov dword [rsp + 0xd0], 0xe7e5f4f8
mov dword [rsp + 0xd4], 0xfaf2f0f2
mov word [rsp + 0xd8], 0x65eb
xor eax, eax
mov qword [rsp + 0xda], rax
mov dword [rsp + 0xe2], eax
mov word [rsp + 0xe6], ax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movabs r9, 0xecfd9e33730db752
nop word [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0xd0]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0x3e
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0xd0], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x18
jb 0x180025f10
lea rdx, [rsp + 0xd0]
mov rcx, rdi
call fcn.180016820
test al, al
je 0x18002623c
lea rdx, [rsp + 0x3b0]
lea rcx, [rsp + 0x620]
call fcn.180003080
nop
lea rcx, [rsp + 0x620]
call fcn.1800208c0
test al, al
je 0x18002621a
lea rcx, [rsp + 0x620]
call fcn.180020950
test al, al
je 0x18002621a
lea rcx, [rsp + 0x5e0]
call fcn.18002a570
nop
lea rdx, [rsp + 0x620]
lea rcx, [rsp + 0x5f0]
call fcn.180003fd0
nop
lea rcx, [rsp + 0x490]
call fcn.180004220
lea rdx, [rsp + 0x5f0]
lea rcx, [rsp + 0x2f8]
call fcn.18000a040
mov rdx, rax
lea rcx, [rsp + 0x490]
call fcn.180004120
nop
lea rcx, [rsp + 0x4a0]
call fcn.180004220
lea rdx, [rsp + 0x5f0]
lea rcx, [rsp + 0x308]
call fcn.18000a040
mov rdx, rax
lea rcx, [rsp + 0x4a0]
call fcn.1800041a0
nop
mov rax, qword [rsp + 0x490]
cmp rax, qword [rsp + 0x4a0]
je 0x1800261c0
movabs rdi, 0xe7e26c25591207a5
lea rcx, [rax + 0x20]
lea rdx, [rsp + 0x600]
call fcn.180020490
nop
mov dword [rsp + 0xf0], 0x5d555c7a
mov dword [rsp + 0xf4], 0x48585c47
mov dword [rsp + 0xf8], 0x3370464b
xor eax, eax
mov qword [rsp + 0xfc], rax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
nop word [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0xf0]
add rcx, rdi
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
add r8b, 0x7d
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0xf0], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x14
jb 0x1800260b0
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x600]
call fcn.18002ab30
cmp rax, 0xffffffffffffffff
je 0x180026156
lea r8, [rax + 0xb]
mov r9, 0xffffffffffffffff
lea rdx, [rsp + 0x318]
lea rcx, [rsp + 0x600]
call fcn.1800132a0
mov rdx, rax
lea rcx, [rsp + 0x600]
call fcn.1800135b0
lea rcx, [rsp + 0x318]
call fcn.180013550
lea rdx, [rsp + 0x600]
lea rcx, [rsp + 0x2c0]
call fcn.18002c570
nop
lea rdx, [rsp + 0x2c0]
lea rcx, [rsp + 0x5e0]
call fcn.18002a1e0
nop
lea rcx, [rsp + 0x2c0]
call fcn.18002a550
nop
lea rcx, [rsp + 0x600]
call fcn.180013550
lea rcx, [rsp + 0x490]
call fcn.180004020
mov rax, qword [rsp + 0x490]
cmp rax, qword [rsp + 0x4a0]
jne 0x180026060
lea rcx, [rsp + 0x4a0]
call fcn.180004150
nop
lea rcx, [rsp + 0x490]
call fcn.180004150
nop
lea rcx, [rsp + 0x5f0]
call fcn.180004150
mov rdx, rbx
lea rcx, [rsp + 0x5e0]
call fcn.18002a2c0
nop
lea rcx, [rsp + 0x5e0]
call fcn.18002a550
nop
lea rcx, [rsp + 0x620]
call fcn.180003010
jmp 0x1800256f6
lea rdx, [0x18012e94c]
mov rcx, rbx
call fcn.180013780
nop
lea rcx, [rsp + 0x620]
call fcn.180003010
jmp 0x1800256f6
mov dword [rsp + 0x40], 0xbeacbebf
mov dword [rsp + 0x44], 0x8e9090ad
mov dword [rsp + 0x48], 0x9695ba89
mov word [rsp + 0x4c], 0x9985
mov byte [rsp + 0x4e], 0x14
xor eax, eax
mov qword [rsp + 0x4f], rax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movabs r9, 0x512cfa28babcb1db
nop dword [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rsp + rax + 0x40]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
add r8b, 3
mov rax, qword [rsp + 0x30]
mov byte [rsp + rax + 0x40], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x17
jb 0x180026280
lea rdx, [rsp + 0x40]
mov rcx, rdi
call fcn.180016820
test al, al
je 0x1800256e6
lea rdx, [rsp + 0x3b0]
lea rcx, [0x18014cdc0]
call fcn.180016e10
mov rcx, rax
call fcn.180016c80
lea rdx, [rsp + 0x5c0]
lea rcx, [rsp + 0x3b0]
call fcn.180020490
mov rcx, rax
call fcn.1800222e0
test al, al
jne 0x1800256e6
lea rdx, str.failed.
lea rcx, [0x18014cdc0]
call fcn.1800169d0
mov rcx, rax
call fcn.180016c80
lea rdx, [0x18012e94c]
jmp 0x1800256ed
call fcn.1800d7b00
nop
shr r15, 0x20
mov ecx, r15d
call fcn.1800024d0
int3
shr rcx, 0x20
call fcn.1800024d0
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
test dl, 4
je 0x18002638e
lea rbx, str.ios_base::badbit_set
jmp 0x1800263a3
test dl, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0xb0]
call fcn.180001e40
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x338]
call fcn.180002a00
lea rdx, [0x180147110]
lea rcx, [rsp + 0x338]
call fcn.1800d0264
nop
lea r8, [rsp + 0x3b0]
lea rdx, [rsp + 0x470]
lea rcx, str.exists
call fcn.180020740
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.180015ea0
int3
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
test dl, 4
je 0x18002645c
lea rbx, str.ios_base::badbit_set
jmp 0x180026471
test dl, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0xb0]
call fcn.180001e40
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x360]
call fcn.180002a00
lea rdx, [0x180147110]
lea rcx, [rsp + 0x360]
call fcn.1800d0264
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
test dl, 4
je 0x1800264d7
lea rbx, str.ios_base::badbit_set
jmp 0x1800264ec
test dl, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0xb0]
call fcn.180001e40
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x388]
call fcn.180002a00
lea rdx, [0x180147110]
lea rcx, [rsp + 0x388]
call fcn.1800d0264
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
nop
call fcn.1800d7b00
int3