Function at 0x180331d30
Capabilities:
Download url
Receive data

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x530]
sub rsp, 0x630
mov rax, qword [0x18054e100]
xor rax, rsp
mov qword [rbp + 0x528], rax
xor r13d, r13d
lea edx, [r13 + 1]
lea rcx, [rbp + 0x180]
call fcn.180077390
nop
lea rcx, [rbp + 0x4e0]
call fcn.1803006b0
nop
lea r8d, [r13 + 0xb]
lea rdx, str._ffmpeg.zip
mov rcx, rax
call fcn.18006a3c0
xorps xmm0, xmm0
movups xmmword [rbp + 0x290], xmm0
mov qword [rbp + 0x2a0], r13
mov qword [rbp + 0x2a8], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x290], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x2a0], xmm1
mov qword [rax + 0x10], r13
mov ebx, 0xf
mov qword [rax + 0x18], rbx
mov byte [rax], r13b
lea rdx, [rbp + 0x290]
cmp qword [rbp + 0x2a8], rbx
cmova rdx, qword [rbp + 0x290]
lea r9d, [r13 + 0x40]
lea r8d, [r13 + 1]
lea rcx, [rbp + 0x180]
call fcn.180077210
nop
mov rdx, qword [rbp + 0x2a8]
cmp rdx, rbx
jbe 0x180331e44
inc rdx
mov rcx, qword [rbp + 0x290]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180331e3f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18033315b
call fcn.180357650
mov qword [rbp + 0x2a0], r13
mov qword [rbp + 0x2a8], rbx
mov byte [rbp + 0x290], 0
lea rcx, [rbp + 0x4e0]
call fcn.18006b8d0
mov rax, qword [rbp + 0x180]
movsxd rcx, dword [rax + 4]
mov r12d, 2
mov r14d, 6
lea rdi, vtable.std::ios_base.0
test byte [rbp + rcx + 0x190], r14b
je 0x180332f52
xorps xmm0, xmm0
movups xmmword [rbp + 0x290], xmm0
mov qword [rbp + 0x2a0], r13
mov qword [rbp + 0x2a8], rbx
lea ecx, [r12 + 0x2e]
call fcn.180357684
mov rcx, rax
mov qword [rbp + 0x290], rax
mov qword [rbp + 0x2a0], 0x2e
mov qword [rbp + 0x2a8], 0x2f
movups xmm0, xmmword [str.https:__github.com_BtbN_FFmpeg_Builds_releases]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x180503dd8]
movups xmmword [rax + 0x10], xmm1
movsd xmm0, qword [0x180503de8]
movsd qword [rax + 0x20], xmm0
mov eax, dword [0x180503df0]
mov dword [rcx + 0x28], eax
movzx eax, word [0x180503df4]
mov word [rcx + 0x2c], ax
mov byte [rcx + 0x2e], 0
lea rcx, [rbp + 0x370]
call fcn.1803006b0
nop
lea r8d, [r12 + 9]
lea rdx, str._ffmpeg.txt
mov rcx, rax
call fcn.18006a3c0
xorps xmm0, xmm0
movups xmmword [rbp + 0x2d0], xmm0
mov qword [rbp + 0x2e0], r13
mov qword [rbp + 0x2e8], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x2d0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x2e0], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], rbx
mov byte [rax], 0
lea rcx, [rbp + 0x370]
call fcn.18006b8d0
mov edi, dword [rbp + 0x2a0]
lea r8, [rbp + 0x290]
cmp qword [rbp + 0x2a8], 0xf
cmova r8, qword [rbp + 0x290]
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
lea r9d, [rdi + 1]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
movsxd rbx, eax
mov eax, r12d
mul rbx
mov rsi, 0xffffffffffffffff
cmovo rax, rsi
mov rcx, rax
call fcn.180357d9c
mov r15, rax
lea r8, [rbp + 0x290]
cmp qword [rbp + 0x2a8], 0xf
cmova r8, qword [rbp + 0x290]
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rax
lea r9d, [rdi + 1]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
xorps xmm0, xmm0
movups xmmword [rbp + 0x3d8], xmm0
mov qword [rbp + 0x3e8], r13
mov qword [rbp + 0x3f0], r13
mov r8, rsi
nop
inc r8
cmp word [r15 + r8*2], 0
jne 0x180332010
mov rdx, r15
lea rcx, [rbp + 0x3d8]
call fcn.18008a510
mov rcx, r15
call fcn.180357650
nop
lea r12, [rbp + 0x3d8]
cmp qword [rbp + 0x3f0], 7
cmova r12, qword [rbp + 0x3d8]
mov edi, dword [rbp + 0x2e0]
lea r8, [rbp + 0x2d0]
cmp qword [rbp + 0x2e8], 0xf
cmova r8, qword [rbp + 0x2d0]
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
lea r9d, [rdi + 1]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
movsxd rbx, eax
mov eax, 2
mul rbx
cmovo rax, rsi
mov rcx, rax
call fcn.180357d9c
mov r15, rax
lea r8, [rbp + 0x2d0]
cmp qword [rbp + 0x2e8], 0xf
cmova r8, qword [rbp + 0x2d0]
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rax
lea r9d, [rdi + 1]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
xorps xmm0, xmm0
movups xmmword [rbp + 0x3b8], xmm0
mov qword [rbp + 0x3c8], r13
mov qword [rbp + 0x3d0], r13
mov r8, rsi
inc r8
cmp word [r15 + r8*2], 0
jne 0x1803320e2
mov rdx, r15
lea rcx, [rbp + 0x3b8]
call fcn.18008a510
mov rcx, r15
call fcn.180357650
nop
lea r8, [rbp + 0x3b8]
cmp qword [rbp + 0x3d0], 7
cmova r8, qword [rbp + 0x3b8]
mov qword [rsp + 0x20], r13
xor r9d, r9d
mov rdx, r12
xor ecx, ecx
call qword [sym.imp.urlmon.dll_URLDownloadToFileW]
call fcn.18032dde0
lea rcx, [rbp + 0x370]
call fcn.1803006b0
nop
mov r8d, 0xe
lea rdx, str._ffmpegurl.txt
mov rcx, rax
call fcn.18006a3c0
xorps xmm0, xmm0
movups xmmword [rbp + 0x350], xmm0
mov qword [rbp + 0x360], r13
mov qword [rbp + 0x368], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x350], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x360], xmm1
mov qword [rax + 0x10], r13
mov r15d, 0xf
mov qword [rax + 0x18], r15
mov byte [rax], 0
lea rcx, [rbp + 0x370]
call fcn.18006b8d0
lea rdx, [rbp + 0x350]
cmp qword [rbp + 0x368], r15
cmova rdx, qword [rbp + 0x350]
mov dword [rsp + 0x20], 1
mov ebx, 2
lea r9d, [r15 + 0x31]
mov r8d, ebx
lea rcx, [rbp + 0x70]
call fcn.1801569b0
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x70], rax
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0x6c], edx
lea ecx, [rbx + 6]
movabs r12, 0x7fffffffffffffff
lea r13, [0x18058c6c0]
cmp qword [rbp + 0xf8], 0
je 0x180332621
xorps xmm0, xmm0
movups xmmword [rbp + 0x2b0], xmm0
mov qword [rbp + 0x2c0], 1
mov qword [rbp + 0x2c8], r15
movzx eax, word [0x1804a69cc]
mov byte [rbp + 0x2b0], al
mov byte [rbp + 0x2b1], 0
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x30], 1
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, str._a_href
lea rcx, [rbp + 0x370]
call fcn.18006a4c0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x418], xmm0
mov qword [rbp + 0x428], r14
mov qword [rbp + 0x430], r15
mov eax, dword [str._https]
mov dword [rbp + 0x418], eax
movzx eax, word [0x180503c38]
mov word [rbp + 0x41c], ax
mov byte [rbp + 0x41e], 0
lea r9, [rbp + 0x418]
mov qword [rsp + 0x30], 0xd
lea rax, str.:__github.com
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r14
lea rcx, [rbp + 0x4a0]
call fcn.18006a4c0
nop
lea r9, [rbp + 0x370]
cmp qword [rbp + 0x388], r15
cmova r9, qword [rbp + 0x370]
lea rcx, [0x18058c6a0]
mov rdi, qword [0x18058c6a0]
cmp qword [0x18058c6b8], r15
cmova rcx, rdi
mov rbx, qword [rbp + 0x380]
mov qword [rsp + 0x20], rbx
xor r8d, r8d
mov rdx, qword [0x18058c6b0]
call fcn.18015aeb0
cmp rax, 0xffffffffffffffff
je 0x18033236b
lea r9, [rbp + 0x4a0]
cmp qword [rbp + 0x4b8], r15
cmova r9, qword [rbp + 0x4a0]
mov rcx, qword [rbp + 0x4b0]
mov qword [rsp + 0x20], rcx
mov r8, rbx
mov rdx, rax
lea rcx, [0x18058c6a0]
call fcn.18015a570
mov rdi, qword [0x18058c6a0]
xorps xmm0, xmm0
movups xmmword [rbp + 0x3f8], xmm0
mov r12d, 1
mov qword [rbp + 0x408], r12
mov qword [rbp + 0x410], r15
movzx eax, word [0x18043b180]
mov byte [rbp + 0x3f8], al
mov byte [rbp + 0x3f9], 0
lea r13, [rbp + 0x2b0]
cmp qword [rbp + 0x2c8], 0xf
seta byte [rsp + 0x40]
mov rbx, qword [rbp + 0x2b0]
cmova r13, rbx
lea rcx, [0x18058c6a0]
cmp qword [0x18058c6b8], 0xf
cmova rcx, rdi
mov qword [rsp + 0x48], rcx
mov rdi, qword [rbp + 0x2c0]
mov rdx, qword [0x18058c6b0]
cmp rdi, rdx
ja 0x180332507
test rdi, rdi
jne 0x1803323f8
xor r13d, r13d
mov ebx, r13d
jmp 0x180332476
mov rax, rcx
sub rax, rdi
inc rax
add rax, rdx
mov qword [rsp + 0x58], rax
movsx edx, byte [r13]
mov r8, rax
sub r8, rcx
call fcn.18038d9a0
mov rbx, rax
test rax, rax
je 0x180332500
nop word [rax + rax]
mov r8, rdi
mov rdx, r13
mov rcx, rbx
call fcn.18038de00
test eax, eax
je 0x180332467
inc rbx
mov r8, qword [rsp + 0x58]
sub r8, rbx
movsx edx, byte [r13]
mov rcx, rbx
call fcn.18038d9a0
mov rbx, rax
test rax, rax
jne 0x180332430
jmp 0x180332500
sub rbx, qword [rsp + 0x48]
cmp rbx, 0xffffffffffffffff
je 0x180332500
mov r13, qword [rbp + 0x2b0]
movzx esi, byte [rsp + 0x40]
lea r9, [rbp + 0x3f8]
cmp r15, 0xf
cmova r9, qword [rbp + 0x3f8]
mov qword [rsp + 0x20], r12
mov r8, rdi
mov rdx, rbx
lea rcx, [0x18058c6a0]
call fcn.18015a570
lea r9, [rbp + 0x2b0]
test sil, sil
cmovne r9, r13
lea rcx, [0x18058c6a0]
cmp qword [0x18058c6b8], 0xf
cmova rcx, qword [0x18058c6a0]
mov r12, qword [rbp + 0x408]
lea r8, [r12 + rbx]
mov qword [rsp + 0x20], rdi
mov rdx, qword [0x18058c6b0]
call fcn.18015aeb0
mov rbx, rax
mov r15, qword [rbp + 0x410]
cmp rax, 0xffffffffffffffff
jne 0x180332482
mov rsi, rax
mov rbx, qword [rbp + 0x2b0]
call fcn.18032e8e0
lea r13, [0x18058c6c0]
mov rdx, r13
cmp qword [0x18058c6d8], 0xf
cmova rdx, qword [0x18058c6c0]
mov r8, qword [0x18058c6d0]
lea rcx, [rbp + 0x70]
call fcn.18007f940
nop
cmp r15, 0xf
jbe 0x180332573
lea rdx, [r15 + 1]
mov rcx, qword [rbp + 0x3f8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18033256d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180333161
call fcn.180357650
nop
lea rcx, [rbp + 0x4a0]
call fcn.18006b8d0
nop
mov rdx, qword [rbp + 0x430]
cmp rdx, 0xf
jbe 0x1803325c2
inc rdx
mov rcx, qword [rbp + 0x418]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1803325bc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180333167
call fcn.180357650
nop
lea rcx, [rbp + 0x370]
call fcn.18006b8d0
nop
cmp byte [rsp + 0x40], 0
je 0x18033260d
mov rdx, qword [rbp + 0x2c8]
inc rdx
mov rax, rbx
cmp rdx, 0x1000
jb 0x180332605
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18033316d
mov rcx, rbx
call fcn.180357650
mov r15d, 0xf
movabs r12, 0x7fffffffffffffff
lea ebx, [r15 - 0xd]
lea rcx, [rbp + 0x78]
call fcn.180078e10
test rax, rax
jne 0x180332664
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
mov eax, r14d
cmp qword [rbp + rcx + 0xb8], 0
cmovne eax, ebx
or eax, dword [rbp + rcx + 0x80]
and eax, 0x17
mov dword [rbp + rcx + 0x80], eax
and eax, dword [rbp + rcx + 0x84]
jne 0x180333173
mov rdx, r13
lea rcx, [rbp + 0x4e0]
call fcn.1800691d0
nop
lea rcx, [rbp + 0x370]
call fcn.1803006b0
nop
mov r8d, 0xb
lea rdx, str._ffmpeg.zip
mov rcx, rax
call fcn.18006a3c0
xorps xmm0, xmm0
movups xmmword [rbp + 0x330], xmm0
xor ebx, ebx
mov qword [rbp + 0x340], rbx
mov qword [rbp + 0x348], rbx
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x330], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x340], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], r15
mov byte [rax], bl
lea rcx, [rbp + 0x370]
call fcn.18006b8d0
lea rdx, [rbp + 0x4e0]
lea rcx, [rbp + 0x508]
call fcn.180169930
nop
lea rax, [rbp + 0x508]
cmp qword [rbp + 0x520], 7
cmova rax, qword [rbp + 0x508]
mov qword [rsp + 0x48], rax
mov edi, dword [rbp + 0x340]
lea r8, [rbp + 0x330]
cmp qword [rbp + 0x348], 0xf
cmova r8, qword [rbp + 0x330]
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbx
lea r9d, [rdi + 1]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
movsxd rbx, eax
mov eax, 2
mul rbx
cmovo rax, rsi
mov rcx, rax
call fcn.180357d9c
mov r15, rax
lea r8, [rbp + 0x330]
cmp qword [rbp + 0x348], 0xf
cmova r8, qword [rbp + 0x330]
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rax
lea r9d, [rdi + 1]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
xorps xmm0, xmm0
movups xmmword [rbp + 0x438], xmm0
xor edi, edi
mov qword [rbp + 0x448], rdi
mov qword [rbp + 0x450], rdi
inc rsi
cmp word [r15 + rsi*2], di
jne 0x1803327a1
mov r8, rsi
mov rdx, r15
lea rcx, [rbp + 0x438]
call fcn.18008a510
mov rcx, r15
call fcn.180357650
nop
lea r8, [rbp + 0x438]
cmp qword [rbp + 0x450], 7
cmova r8, qword [rbp + 0x438]
mov qword [rsp + 0x20], rdi
xor r9d, r9d
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.urlmon.dll_URLDownloadToFileW]
xorps xmm0, xmm0
movups xmmword [rbp + 0x398], xmm0
mov qword [rbp + 0x3a8], 1
mov r15d, 0xf
mov qword [rbp + 0x3b0], r15
movzx eax, word [0x18043b180]
mov byte [rbp + 0x398], al
mov byte [rbp + 0x399], 0
mov qword [rbp + 0x460], rdi
mov ecx, 8
mov qword [rbp + 0x468], rcx
mov qword [rbp + 0x470], r15
mov rbx, qword [str.ffmpeg_N]
mov qword [rbp + 0x458], rbx
mov byte [rbp + 0x460], 0
lea rax, [r12 - 1]
cmp rax, rcx
jb 0x1803331c9
lea r9, [rbp + 0x398]
mov qword [rsp + 0x30], rcx
lea rax, str.ffmpeg_N
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea rcx, [rbp + 0x478]
call fcn.18006a4c0
nop
mov rcx, qword [rbp + 0x3a8]
sub r12, rcx
cmp r12, 0xa
jb 0x1803331cf
lea rax, [rbp + 0x398]
cmp qword [rbp + 0x3b0], r15
cmova rax, qword [rbp + 0x398]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0xa
lea r9, str._win64_gpl
lea rcx, [rbp + 0x4c0]
call fcn.18006a4c0
nop
mov word [rbp + 0x2fe], di
mov qword [rbp + 0x300], 0xe
mov qword [rbp + 0x308], r15
movsd xmm0, qword [str._win64_gpl.zip]
movsd qword [rbp + 0x2f0], xmm0
mov eax, dword [0x180503c58]
mov dword [rbp + 0x2f8], eax
movzx eax, word [0x180503c5c]
mov word [rbp + 0x2fc], ax
mov byte [rbp + 0x2fe], 0
lea rdi, [0x18058c6e0]
cmp rdi, r13
je 0x18033295b
cmp qword [0x18058c6d8], r15
cmova r13, qword [0x18058c6c0]
mov r8, qword [0x18058c6d0]
mov rdx, r13
mov rcx, rdi
call fcn.180068770
lea rsi, [rbp + 0x458]
mov r15, rdi
cmp qword [0x18058c6f8], 0xf
cmova r15, qword [0x18058c6e0]
mov rbx, qword [0x18058c6f0]
mov ecx, 8
cmp rcx, rbx
ja 0x180332a24
mov r12, r15
sub r12, rcx
add r12, rbx
movsx r13d, byte [rsi]
lea r8, [r12 + 1]
sub r8, r15
mov edx, r13d
mov rcx, r15
call fcn.18038d9a0
mov rbx, rax
test rax, rax
je 0x180332a24
mov r8d, 8
mov rdx, rsi
mov rcx, rbx
call fcn.18038de00
test eax, eax
je 0x1803329e7
inc rbx
lea r8, [r12 + 1]
sub r8, rbx
mov edx, r13d
mov rcx, rbx
call fcn.18038d9a0
mov rbx, rax
test rax, rax
jne 0x1803329b2
jmp 0x180332a24
sub rbx, r15
cmp rbx, 0xffffffffffffffff
je 0x180332a24
mov r8d, 8
lea r9, [rbp + 0x478]
cmp qword [rbp + 0x490], 0xf
cmova r9, qword [rbp + 0x478]
mov rax, qword [rbp + 0x488]
mov qword [rsp + 0x20], rax
mov rdx, rbx
mov rcx, rdi
call fcn.18015a570
lea rsi, [rbp + 0x2f0]
mov r15, rdi
cmp qword [0x18058c6f8], 0xf
cmova r15, qword [0x18058c6e0]
mov rcx, qword [0x18058c6f0]
mov edx, 0xe
cmp rdx, rcx
ja 0x180332af2
mov r12, r15
sub r12, rdx
add r12, rcx
movsx r13d, byte [rsi]
lea r8, [r12 + 1]
sub r8, r15
mov edx, r13d
mov rcx, r15
call fcn.18038d9a0
mov rbx, rax
test rax, rax
je 0x180332af2
nop
mov r8d, 0xe
mov rdx, rsi
mov rcx, rbx
call fcn.18038de00
test eax, eax
je 0x180332ab5
inc rbx
lea r8, [r12 + 1]
sub r8, rbx
mov edx, r13d
mov rcx, rbx
call fcn.18038d9a0
mov rbx, rax
test rax, rax
jne 0x180332a80
jmp 0x180332af2
sub rbx, r15
cmp rbx, 0xffffffffffffffff
je 0x180332af2
mov r8d, 0xe
lea r9, [rbp + 0x4c0]
cmp qword [rbp + 0x4d8], 0xf
cmova r9, qword [rbp + 0x4c0]
mov rax, qword [rbp + 0x4d0]
mov qword [rsp + 0x20], rax
mov rdx, rbx
mov rcx, rdi
call fcn.18015a570
lea rcx, [rbp + 0x370]
call fcn.1803006b0
nop
mov r8d, 0x11
lea rdx, str._ffmpegfolder.txt
mov rcx, rax
call fcn.18006a3c0
xorps xmm0, xmm0
movups xmmword [rbp + 0x310], xmm0
xor esi, esi
mov qword [rbp + 0x320], rsi
mov qword [rbp + 0x328], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x310], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x320], xmm1
mov qword [rax + 0x10], rsi
mov r15d, 0xf
mov qword [rax + 0x18], r15
mov byte [rax], sil
lea rcx, [rbp + 0x370]
call fcn.18006b8d0
lea rdx, [rbp + 0x310]
cmp qword [rbp + 0x328], r15
cmova rdx, qword [rbp + 0x310]
mov dword [rsp + 0x20], 1
lea r9d, [rsi + 0x40]
mov r12d, 2
mov r8d, r12d
lea rcx, [rsp + 0x60]
call fcn.1801569b0
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea r13, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x60], r13
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x5c], edx
cmp qword [rbp - 0x18], rsi
je 0x180332beb
call fcn.18032f010
cmp qword [0x18058c6f8], r15
cmova rdi, qword [0x18058c6e0]
mov r8, qword [0x18058c6f0]
mov rdx, rdi
lea rcx, [rsp + 0x60]
call fcn.18007f940
lea rcx, [rsp + 0x68]
call fcn.180078e10
test rax, rax
jne 0x180332c25
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
mov eax, r14d
cmp qword [rbp + rcx - 0x58], 0
cmovne eax, r12d
or eax, dword [rsp + rcx + 0x70]
and eax, 0x17
mov dword [rsp + rcx + 0x70], eax
and eax, dword [rsp + rcx + 0x74]
jne 0x1803331d5
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x60], r13
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x5c], edx
lea rcx, [rsp + 0x68]
call fcn.180077160
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea rdi, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x60], rdi
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rsp + rcx + 0x5c], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp + 8], rax
lea rcx, [rbp + 8]
call fcn.1803379ec
nop
mov rdx, qword [rbp + 0x328]
cmp rdx, 0xf
jbe 0x180332ccb
inc rdx
mov rcx, qword [rbp + 0x310]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180332cc6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18033322b
call fcn.180357650
mov qword [rbp + 0x320], rsi
mov qword [rbp + 0x328], r15
mov byte [rbp + 0x310], 0
lea rcx, [rbp + 0x4c0]
call fcn.18006b8d0
nop
lea rcx, [rbp + 0x478]
call fcn.18006b8d0
nop
lea rcx, [rbp + 0x458]
call fcn.18006b8d0
nop
lea rcx, [rbp + 0x398]
call fcn.18006b8d0
nop
lea rcx, [rbp + 0x438]
call fcn.18008cc80
nop
lea rcx, [rbp + 0x508]
call fcn.18008cc80
nop
lea rcx, [rbp + 0x330]
call fcn.18006b8d0
nop
lea rcx, [rbp + 0x4e0]
call fcn.18006b8d0
nop
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x70], r13
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0x6c], edx
lea rcx, [rbp + 0x78]
call fcn.180077160
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x70], rdi
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rbp + rcx + 0x6c], edx
lea rdi, vtable.std::ios_base.0
mov qword [rbp + 0x118], rdi
lea rcx, [rbp + 0x118]
call fcn.1803379ec
nop
mov rdx, qword [rbp + 0x368]
cmp rdx, 0xf
jbe 0x180332de8
inc rdx
mov rcx, qword [rbp + 0x350]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180332de3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180333231
call fcn.180357650
mov qword [rbp + 0x360], rsi
mov qword [rbp + 0x368], r15
mov byte [rbp + 0x350], 0
mov rdx, qword [rbp + 0x3d0]
cmp rdx, 7
jbe 0x180332e43
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3b8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180332e3e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180333237
call fcn.180357650
mov qword [rbp + 0x3c8], rsi
mov qword [rbp + 0x3d0], 7
mov word [rbp + 0x3b8], si
mov rdx, qword [rbp + 0x3f0]
cmp rdx, 7
jbe 0x180332ea2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3d8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180332e9d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18033323d
call fcn.180357650
mov qword [rbp + 0x3e8], rsi
mov qword [rbp + 0x3f0], 7
mov word [rbp + 0x3d8], si
mov rdx, qword [rbp + 0x2e8]
cmp rdx, 0xf
jbe 0x180332efc
inc rdx
mov rcx, qword [rbp + 0x2d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180332ef7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180333243
call fcn.180357650
mov qword [rbp + 0x2e0], rsi
mov qword [rbp + 0x2e8], r15
mov byte [rbp + 0x2d0], 0
mov rdx, qword [rbp + 0x2a8]
cmp rdx, 0xf
jbe 0x180332f52
inc rdx
mov rcx, qword [rbp + 0x290]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180332f4d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180333249
call fcn.180357650
lea rcx, [rbp + 0x190]
call fcn.180078e10
test rax, rax
jne 0x180332f9d
mov rax, qword [rbp + 0x180]
movsxd rcx, dword [rax + 4]
cmp qword [rbp + rcx + 0x1c8], 0
cmovne r14d, r12d
or r14d, dword [rbp + rcx + 0x190]
and r14d, 0x17
mov dword [rbp + rcx + 0x190], r14d
and r14d, dword [rbp + rcx + 0x194]
jne 0x180333101
mov byte [0x1805b2f0d], 1
cmp byte [0x1805708dc], 0
je 0x180332ffe
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov r8, rax
mov eax, 0x10624dd3
mul r8d
shr edx, 6
imul ecx, edx, 0x3e8
sub r8d, ecx
mov eax, 0x57619f1
imul r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x5dc
cmp r8d, eax
jne 0x180332ff5
call fcn.18032f9e0
mov byte [0x1805708dc], 0
jmp 0x180332ffe
cmp byte [0x1805708dc], 0
jne 0x18033304e
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov r8, rax
mov eax, 0x10624dd3
mul r8d
shr edx, 6
imul ecx, edx, 0x3e8
sub r8d, ecx
mov eax, 0x10624dd3
imul r8d
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7d0
cmp r8d, eax
jne 0x18033304e
call fcn.180330020
call fcn.1803309d0
call fcn.180331380
mov byte [0x1805b2f0d], 0
mov rax, qword [rbp + 0x180]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x180], rax
mov rax, qword [rbp + 0x180]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x17c], edx
lea rcx, [rbp + 0x190]
call fcn.180077160
mov rax, qword [rbp + 0x180]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x180], rax
mov rax, qword [rbp + 0x180]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rbp + rcx + 0x17c], edx
mov qword [rbp + 0x230], rdi
lea rcx, [rbp + 0x230]
call fcn.1803379ec
nop
xor eax, eax
mov rcx, qword [rbp + 0x528]
xor rcx, rsp
call fcn.180357630
lea r11, [rsp + 0x630]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
test r14b, 4
je 0x180333110
lea rbx, str.ios_base::badbit_set
jmp 0x180333126
test r14b, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x48]
call fcn.18008ba60
mov r8, rax
mov rdx, rbx
lea rcx, [rbp + 0x4e0]
call fcn.18008b850
lea rdx, [0x18054c8c8]
lea rcx, [rbp + 0x4e0]
call fcn.180359a20
nop
call fcn.18035e820
nop
call fcn.18035e820
nop
call fcn.18035e820
nop
call fcn.18035e820
int3
test al, 4
je 0x180333180
lea rbx, str.ios_base::badbit_set
jmp 0x180333194
test al, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x48]
call fcn.18008ba60
mov r8, rax
mov rdx, rbx
lea rcx, [rbp + 0x478]
call fcn.18008b850
lea rdx, [0x18054c8c8]
lea rcx, [rbp + 0x478]
call fcn.180359a20
nop
call fcn.18006b090
nop
call fcn.18006b090
nop
test al, 4
je 0x1803331e2
lea rbx, str.ios_base::badbit_set
jmp 0x1803331f6
test al, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x48]
call fcn.18008ba60
mov r8, rax
mov rdx, rbx
lea rcx, [rbp + 0x370]
call fcn.18008b850
lea rdx, [0x18054c8c8]
lea rcx, [rbp + 0x370]
call fcn.180359a20
nop
call fcn.18035e820
nop
call fcn.18035e820
nop
call fcn.18035e820
nop
call fcn.18035e820
nop
call fcn.18035e820
nop
call fcn.18035e820
int3