Function at 0x14001bab8
Capabilities:
Check for time delay via queryperformancecounter
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x3a8]
sub rsp, 0x478
mov r13, r9
mov rsi, rdx
xor ebx, ebx
mov qword [rbp - 0x68], rbx
mov qword [rbp - 0x60], rbx
xor edx, edx
lea r14, [0x1400758c0]
mov rcx, r14
mov rax, qword [0x1400758c8]
call rax
mov qword [rbp - 0x60], rbx
mov qword [rbp - 0x68], rbx
mov edx, 0x500
mov rcx, r14
mov rax, qword [0x1400758c0]
call rax
mov rdi, rax
test rax, rax
jne 0x14001bb3f
xor edx, edx
mov rcx, r14
mov rax, qword [0x1400758c8]
call rax
nop
jmp 0x14001e1fc
mov rax, rbx
mov r9d, 1
mov r10d, 0x100
mov byte [rdi + rax], al
add rax, r9
cmp rax, r10
jb 0x14001bb4e
mov r8d, 0xffffffff
mov rdx, rbx
lea r11, [0x14008c9c0]
movzx ecx, byte [rdx + rdi]
mov eax, r8d
xor rcx, rax
movzx eax, cl
shr r8d, 8
xor r8d, dword [r11 + rax*4]
add rdx, r9
cmp rdx, r10
jb 0x14001bb69
not r8d
cmp r8d, 0x29058c73
je 0x14001bba7
mov rdx, rdi
mov rcx, r14
mov rax, qword [0x1400758c8]
call rax
nop
jmp 0x14001e1fc
lea rcx, [rdi + 0x100]
mov edx, 0x400
call fcn.140021e2c
mov r12, rbx
mov r15, rdi
mov r14d, ebx
mov ebx, 0xffffffff
mov edx, r14d
xor eax, eax
mov r8d, eax
test r14d, r14d
je 0x14001bc07
lea r13d, [rax + 1]
lea rsi, [0x14008c9c0]
movzx ecx, byte [r15 + r8]
mov eax, ebx
xor rcx, rax
movzx eax, cl
shr ebx, 8
xor ebx, dword [rsi + rax*4]
add r8, r13
cmp r8, rdx
jb 0x14001bbde
mov rsi, qword [rbp + 0x3b8]
mov r13, qword [rbp + 0x3c8]
mov rcx, r15
call fcn.14005a7f0
not ebx
cmp ebx, eax
jne 0x14001e1e8
inc r14d
mov eax, 0x20
cmp r14d, eax
jb 0x14001bbc1
lea r14d, [rax - 0x1f]
add r12, r14
add r15, r14
cmp r12, 0x4e0
lea ebx, [rax - 0x20]
jb 0x14001bbbe
mov rdx, rdi
lea rcx, [0x1400758c0]
mov rax, qword [0x1400758c8]
call rax
nop
movabs rax, 0x100000000
mov qword [rbp + 0x120], rax
mov qword [rbp + 0x128], r14
mov qword [rbp + 0x130], r14
lea rcx, [rbp + 0x128]
call fcn.14000c784
xor edi, edi
test eax, eax
je 0x14001bc9f
mov rcx, qword [rbp + 0x128]
call fcn.14000c768
test eax, eax
je 0x14001bc9f
mov rcx, qword [rbp + 0x128]
call fcn.14000c768
jmp 0x14001bca4
call fcn.14000c7b4
mov r12d, eax
mov dword [rbp - 0x4c], eax
lea rcx, [rbp + 0x120]
call fcn.14000c804
mov byte [rbp - 0x53], al
mov dword [rbp - 0x58], r12d
mov cl, dil
mov dword [rbp - 0x70], ecx
mov dword [rbp - 0x18], 0xfa0
mov dword [rbp - 0x48], 0x16
mov byte [rbp - 0x7d], dil
mov r15, rdi
mov qword [rbp - 0x40], rdi
mov byte [rbp - 0x54], dil
movabs rax, 0x400000000
mov qword [rbp - 8], rax
mov dword [rbp + 0x50], r14d
mov qword [rbp + 0x100], rdi
mov dword [rbp + 0x108], r14d
mov qword [rbp + 0x58], rdi
mov qword [rbp + 0x60], rdi
lea rcx, [rbp + 0x68]
call fcn.140002684
nop
lea rcx, [rbp + 0x78]
call fcn.140002a00
nop
mov qword [rbp + 0x10], rdi
mov r14, rdi
mov qword [rbp + 0x18], rdi
mov byte [rbp - 0x80], dil
mov byte [rbp - 0x7f], dil
test rsi, rsi
je 0x14001bdee
mov ebx, edi
mov eax, dword [r13 + 8]
test eax, eax
je 0x14001bdee
xor r15d, r15d
lea r12d, [r15 + 1]
mov ecx, ebx
mov rax, qword [r13]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsi]
lea rdx, [0x14007141c]
mov rcx, rsi
call qword [rax]
xor r8d, r8d
mov rdx, rdi
lea rcx, [rbp - 0x68]
call fcn.140004824
nop
mov rax, qword [rsi]
mov rdx, qword [rbp - 0x68]
mov rcx, rsi
call qword [rax]
nop
mov rcx, qword [rbp - 0x68]
call fcn.14005af1c
cmp dword [rdi + 0x18], r15d
je 0x14001bdc8
mov rax, qword [rsi]
lea rdx, [0x140071420]
mov rcx, rsi
call qword [rax]
lea rdx, [rdi + 0x10]
xor r8d, r8d
lea rcx, [rbp]
call fcn.140004824
nop
mov rax, qword [rsi]
mov rdx, qword [rbp]
mov rcx, rsi
call qword [rax]
nop
mov rcx, qword [rbp]
call fcn.14005af1c
add ebx, r12d
mov eax, dword [r13 + 8]
cmp ebx, eax
jb 0x14001bd4d
mov r12d, dword [rbp - 0x4c]
mov r15, qword [rbp - 0x40]
xor edi, edi
test eax, eax
je 0x14001bdee
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
xor eax, eax
cmp dword [r13 + 8], eax
jbe 0x14001c395
mov ecx, edi
mov rax, qword [r13]
mov rbx, qword [rax + rcx*8]
mov rdx, rbx
lea rcx, [rbp - 0x30]
call fcn.140002860
nop
mov rcx, qword [rbp - 0x30]
call fcn.140003af8
lea rdx, str.file
mov rcx, qword [rbp - 0x30]
call fcn.140004410
xor ecx, ecx
test al, al
je 0x14001bf28
cmp dword [rbx + 0x18], ecx
je 0x14001c36a
or qword [rbp + 0x98], 0xffffffffffffffff
mov byte [rbp + 0xa0], cl
mov rdx, qword [rbx + 0x10]
lea rcx, [rbp + 0x98]
call fcn.1400093fc
test al, al
je 0x14001c355
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0x98]
call fcn.140009338
test al, al
je 0x14001c355
test rsi, rsi
je 0x14001bea7
mov rax, qword [rsi]
lea rdx, str.file_size_
mov rcx, rsi
call qword [rax]
xor r8d, r8d
mov rdx, qword [rbp - 0x20]
mov rcx, rsi
call fcn.1400218a4
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov rbx, qword [rbp - 0x20]
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x14001beb9
cmp rbx, r14
je 0x14001bedd
mov rcx, rax
call fcn.14005a400
xor eax, eax
mov r14d, eax
mov rcx, rbx
call fcn.14005a3e0
mov qword [rbp + 0x10], rax
test rax, rax
cmovne r14, rbx
mov qword [rbp + 0x18], r14
test rbx, rbx
je 0x14001beeb
test rax, rax
je 0x14001c347
mov byte [rbp - 0x80], 1
lea r9, [rbp]
mov r8, rbx
mov rdx, rax
lea rcx, [rbp + 0x98]
call fcn.14000955c
test al, al
je 0x14001c355
cmp qword [rbp], rbx
jne 0x14001c34e
lea rcx, [rbp + 0x98]
call fcn.14000908c
jmp 0x14001c0fc
xor r14d, r14d
mov dword [rbp + 0x20], r14d
mov qword [rbp + 0x28], r14
cmp dword [rbx + 0x18], r14d
je 0x14001bf8a
lea rdx, [rbp + 0x88]
mov rcx, qword [rbx + 0x10]
call fcn.1400049dc
mov rcx, qword [rbp + 0x88]
cmp word [rcx], r14w
jne 0x14001bf7d
cmp dword [rbx + 0x18], r14d
je 0x14001bf7d
mov ecx, 0xffffffff
cmp rax, rcx
lea rcx, [rbp + 0x20]
ja 0x14001bf73
mov edx, eax
call fcn.14000b490
jmp 0x14001bf8a
mov rdx, rax
call fcn.14000b538
jmp 0x14001bf8a
lea rdx, [rbx + 0x10]
lea rcx, [rbp + 0x20]
call fcn.14000b428
lea rdx, str.time
mov rcx, qword [rbp - 0x30]
call fcn.140004410
test al, al
je 0x14001bfe6
lea rcx, [rbp + 0xf0]
call fcn.140002a00
nop
lea r8, [rbp - 0x18]
lea rdx, [rbp + 0x20]
mov rcx, rax
call fcn.140010bc4
mov ebx, eax
mov rcx, qword [rbp + 0xf0]
call fcn.14005af1c
test ebx, ebx
jne 0x14001c37d
lea ecx, [rbx + 1]
mov dword [rbp - 0x70], ecx
imul eax, dword [rbp - 0x18], 0x3e8
mov dword [rbp - 0x18], eax
jmp 0x14001c0f2
lea rdx, str.timems
mov rcx, qword [rbp - 0x30]
call fcn.140004410
test al, al
je 0x14001c038
lea rcx, [rbp + 0xc8]
call fcn.140002a00
nop
lea r8, [rbp - 0x18]
lea rdx, [rbp + 0x20]
mov rcx, rax
call fcn.140010bc4
mov ebx, eax
mov rcx, qword [rbp + 0xc8]
call fcn.14005af1c
test ebx, ebx
jne 0x14001c37d
lea ecx, [rbx + 1]
mov dword [rbp - 0x70], ecx
jmp 0x14001c0f2
lea rdx, [0x14007144c]
mov rcx, qword [rbp - 0x30]
call fcn.140004410
test al, al
je 0x14001c097
lea rcx, [rbp + 0x2b8]
call fcn.140002a00
nop
lea r8, [rbp - 0x50]
lea rdx, [rbp + 0x20]
mov rcx, rax
call fcn.140010bc4
mov ebx, eax
mov rcx, qword [rbp + 0x2b8]
call fcn.14005af1c
test ebx, ebx
jne 0x14001c37d
mov ecx, dword [rbp - 0x50]
cmp ecx, 0x40
jae 0x14001c378
lea eax, [rbx + 1]
shl rax, cl
mov qword [rbp - 8], rax
jmp 0x14001c0f2
lea rdx, [0x140071450]
mov rcx, qword [rbp - 0x30]
call fcn.140004410
test al, al
je 0x14001c11a
mov byte [rbp - 0x7f], 1
lea rcx, [rbp + 0xd8]
call fcn.140002a00
nop
lea r8, [rbp - 0x48]
lea rdx, [rbp + 0x20]
mov rcx, rax
call fcn.140010bc4
mov ebx, eax
mov rcx, qword [rbp + 0xd8]
call fcn.14005af1c
test ebx, ebx
jne 0x14001c37d
lea eax, [rbx + 0x20]
cmp dword [rbp - 0x48], eax
ja 0x14001c378
mov byte [rbp - 0x7d], 1
lea rcx, [rbp + 0x20]
call fcn.14000b354
nop
mov rcx, qword [rbp - 0x30]
call fcn.14005af1c
inc edi
cmp edi, dword [r13 + 8]
jae 0x14001c395
mov r14, qword [rbp + 0x18]
jmp 0x14001bdfa
lea rdx, [0x140071454]
mov rcx, qword [rbp - 0x30]
call fcn.140004410
test al, al
jne 0x14001c0af
lea rdx, [0x140071458]
mov rcx, qword [rbp - 0x30]
call fcn.140004410
test al, al
je 0x14001c17a
lea rcx, [rbp + 0x2c8]
call fcn.140002a00
nop
lea r8, [rbp + 0x50]
lea rdx, [rbp + 0x20]
mov rcx, rax
call fcn.140010bc4
mov ebx, eax
mov rcx, qword [rbp + 0x2c8]
call fcn.14005af1c
test ebx, ebx
jne 0x14001c37d
jmp 0x14001c0f2
lea rdx, [0x14007145c]
mov rcx, qword [rbp - 0x30]
call fcn.140004410
test al, al
je 0x14001c1f6
lea rcx, [rbp + 0x298]
call fcn.140002a00
nop
lea r8, [rbp - 0x10]
lea rdx, [rbp + 0x20]
mov rcx, rax
call fcn.140010bc4
mov ebx, eax
mov rcx, qword [rbp + 0x298]
call fcn.14005af1c
test ebx, ebx
jne 0x14001c37d
mov eax, dword [rbp - 0x10]
test eax, eax
je 0x14001c0f2
cmp eax, r12d
jae 0x14001c0f2
lea r8d, [rbx + 2]
mov edx, r12d
lea rcx, [rbp + 0x100]
call fcn.140022248
mov eax, dword [rbp - 0x10]
mov dword [rbp + 0x100], eax
jmp 0x14001c0f2
lea rdx, [0x140071460]
mov rcx, qword [rbp - 0x30]
call fcn.140004410
test al, al
je 0x14001c28f
mov dword [rbp - 0x78], r14d
lea rcx, [rbp + 0x2a8]
call fcn.140002a00
nop
lea r8, [rbp - 0x78]
lea rdx, [rbp + 0x20]
mov rcx, rax
call fcn.140010bc4
mov ebx, eax
mov rcx, qword [rbp + 0x2a8]
call fcn.14005af1c
test ebx, ebx
jne 0x14001c37d
mov eax, dword [rbp - 0x78]
test eax, eax
je 0x14001c378
imul r15, rax, 0xf4240
mov qword [rbp - 0x40], r15
test rsi, rsi
je 0x14001c0f2
mov rax, qword [rsi]
lea rdx, str.freq
mov rcx, rsi
call qword [rax]
mov edx, dword [rbp - 0x78]
xor r8d, r8d
mov rcx, rsi
call fcn.1400218a4
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
jmp 0x14001c0f2
lea rdx, [0x14006ff38]
lea rcx, [rbp - 0x30]
call fcn.140003838
test al, al
je 0x14001c32d
mov rdx, qword [rbp - 0x30]
add rdx, 4
lea rcx, [rbp - 0x68]
call fcn.1400029a8
nop
lea rdx, [0x14006f8a0]
mov rcx, qword [rbp - 0x68]
call fcn.140004410
test al, al
jne 0x14001c323
cmp dword [rbp - 0x60], r14d
jne 0x14001c2f2
mov eax, 8
cmp word [rbp + 0x20], ax
jne 0x14001c2f2
lea rdx, [0x14006f8a0]
mov rcx, qword [rbp + 0x28]
call fcn.140004410
test al, al
jne 0x14001c323
mov byte [rbp - 0x7e], r14b
mov dword [rbp - 0x58], r12d
lea r9, [rbp - 0x7e]
lea r8, [rbp - 0x58]
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x68]
call fcn.14001073c
mov ebx, eax
mov rcx, qword [rbp - 0x68]
test eax, eax
jne 0x14001c371
call fcn.14005af1c
jmp 0x14001c0f2
mov byte [rbp - 0x54], 1
mov rcx, qword [rbp - 0x68]
jmp 0x14001c319
lea r8, [rbp + 0x20]
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x58]
call fcn.1400105b8
mov ebx, eax
test eax, eax
jmp 0x14001c16f
mov ebx, 0x8007000e
jmp 0x14001c35c
mov ebx, 0x80004005
jmp 0x14001c35c
call fcn.14000930c
mov ebx, eax
lea rcx, [rbp + 0x98]
call fcn.14000908c
jmp 0x14001c387
mov ebx, 0x80070057
jmp 0x14001c387
call fcn.14005af1c
jmp 0x14001c37d
mov ebx, 0x80070057
lea rcx, [rbp + 0x20]
call fcn.14000b354
nop
mov rcx, qword [rbp - 0x30]
call fcn.14005af1c
jmp 0x14001e1bf
mov r14, qword [rbp + 0x3e0]
xor r13d, r13d
test rsi, rsi
je 0x14001c3e7
lea rcx, [rbp - 0x68]
call fcn.140002684
nop
lea rcx, [rbp - 0x68]
call fcn.14000cfe0
mov rax, qword [rsi]
mov rdx, qword [rbp - 0x68]
mov rcx, rsi
call qword [rax]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
nop
mov rcx, qword [rbp - 0x68]
call fcn.14005af1c
mov rax, qword [rsi]
lea rdx, str.1T_CPU_Freq__MHz_:
mov rcx, rsi
call qword [rax]
jmp 0x14001c3f0
test r14, r14
je 0x14001c65a
mov edi, 0x40
test r15, r15
je 0x14001c415
lea r13d, [rdi - 0x3f]
imul rax, rdi, 0xf4240
cmp r15, rax
jae 0x14001c412
shr rdi, 1
cmp rdi, r13
ja 0x14001c3fe
xor r13d, r13d
mov dword [rbp - 0x78], r13d
test rsi, rsi
je 0x14001c431
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + InitCommonControls]
mov ebx, eax
test eax, eax
jne 0x14001e1bf
lea rcx, [rbp]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x14001c445
mov r15, qword [rbp]
jmp 0x14001c44e
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r15d, eax
imul r13, rdi, 0xf4240
mov rdx, r13
shr rdx, 7
mov r8d, dword [0x14008a5d0]
mov ecx, r15d
call fcn.140022c18
cmp eax, 0xf1541213
jne 0x14001c486
test rsi, rsi
je 0x14001c486
mov rax, qword [rsi]
lea rdx, [0x14006ff00]
mov rcx, rsi
call qword [rax]
lea rcx, [rbp + 0x88]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x14001c4a0
mov rbx, qword [rbp + 0x88]
jmp 0x14001c4a8
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ebx, eax
sub rbx, r15
jne 0x14001c4b3
lea r12d, [rbx + 1]
jmp 0x14001c4cc
mov r12, rbx
movabs rax, 0x2000000000000000
cmp rbx, rax
mov eax, 1
cmova r12, rax
lea rcx, [rbp - 0x30]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
mov r15d, 0x3e8
test eax, eax
cmovne r15, qword [rbp - 0x30]
mov r8, r12
mov rdx, r15
mov rcx, r13
call fcn.1400216f4
mov rcx, rax
mov qword [rbp - 0x20], rax
mov rax, r15
imul rax, rdi
xor edx, edx
div r12
mov r13, rax
test rsi, rsi
je 0x14001c535
mov rcx, rsi
test rbx, rbx
jne 0x14001c523
mov r8, qword [rsi]
lea rdx, [0x140071484]
call qword [r8]
jmp 0x14001c531
mov r8d, 5
mov rdx, r13
call fcn.1400218a4
mov rcx, qword [rbp - 0x20]
test r14, r14
je 0x14001c55a
mov rax, qword [r14]
mov r9d, 0x10000
mov r8, rcx
mov edx, 1
mov rcx, r14
call qword [rax]
mov ebx, eax
test eax, eax
jne 0x14001e1bf
mov r9d, dword [rbp - 0x78]
mov r11d, 1
cmp r9d, r11d
jl 0x14001c62f
cmp rdi, 0x800
setae r8b
shl r15, 4
cmp r12, r15
jb 0x14001c5b2
mov rax, qword [rsi]
lea rdx, str.__Cmplx_
mov rcx, rsi
call qword [rax]
mov r15d, dword [rbp - 0x70]
movzx r15d, r15b
test r14, r14
mov r11d, 1
cmove r15d, r11d
mov dword [rbp - 0x70], r15d
mov r8b, r11b
mov r9d, dword [rbp - 0x78]
jmp 0x14001c5b6
mov r15d, dword [rbp - 0x70]
test r15b, r15b
je 0x14001c624
imul rax, r13, 0xf4240
movabs rcx, 0x400000000
mov qword [rbp - 8], rcx
mov ecx, 0x3d0900
cmp rax, rcx
jae 0x14001c5de
mov eax, ecx
jmp 0x14001c5ed
movabs rcx, 0x4a817c800
cmp rax, rcx
jae 0x14001c624
mov ecx, dword [rbp - 0x18]
xor r13d, r13d
test ecx, ecx
je 0x14001c61b
imul rcx, rax
movabs rax, 0x624dd2f1a9fbe77
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 9
mov qword [rbp - 8], rcx
jmp 0x14001c627
mov rcx, rax
shr rcx, 2
jmp 0x14001c615
xor r13d, r13d
test r8b, r8b
jne 0x14001c63b
add rdi, rdi
add r9d, r11d
mov dword [rbp - 0x78], r9d
jmp 0x14001c419
test r14, r14
je 0x14001c656
mov rax, qword [r14]
mov edx, r11d
mov rcx, r14
call qword [rax + VariantCopy]
mov ebx, eax
test eax, eax
jne 0x14001e1bf
mov r12d, dword [rbp - 0x4c]
mov edi, dword [rbp - 0x58]
cmp edi, 2
jb 0x14001c803
test rsi, rsi
jne 0x14001c676
test r14, r14
je 0x14001c87e
jmp 0x14001c682
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov edi, dword [rbp - 0x58]
mov eax, r12d
shr eax, 1
cmp edi, eax
cmovae edi, eax
mov ebx, 1
cmp edi, ebx
cmovb edi, ebx
test rsi, rsi
je 0x14001c6c7
mov ecx, edi
lea rdx, [rbp + 0x2e0]
call fcn.140001c14
mov rax, qword [rsi]
lea rdx, [rbp + 0x2e0]
mov rcx, rsi
call qword [rax]
mov rax, qword [rsi]
lea rdx, str.T_CPU_Freq__MHz_:
mov rcx, rsi
call qword [rax]
mov r15d, 0x400
mov rcx, qword [rbp - 0x40]
test rcx, rcx
je 0x14001c6ea
imul rax, r15, 0xf4240
cmp rcx, rax
jae 0x14001c6ea
shr r15, 1
cmp r15, rbx
ja 0x14001c6d6
test rsi, rsi
je 0x14001c705
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + InitCommonControls]
mov ebx, eax
test eax, eax
jne 0x14001e1bf
lea ebx, [rax + 1]
imul rax, r15, 0xf4240
mov qword [rbp + 0x98], rax
mov dword [rbp + 0xa0], edi
mov byte [rbp + 0xa4], bl
mov qword [rbp + 0xa8], rbx
lea r8, [rbp + 0x100]
xor edx, edx
lea rcx, [rbp + 0x98]
call fcn.14001f948
mov ebx, eax
test eax, eax
jne 0x14001e1bf
test r14, r14
je 0x14001c76c
mov rax, qword [r14]
mov r9, qword [rbp + 0xb8]
mov r8, qword [rbp + 0xb0]
mov edx, edi
mov rcx, r14
call qword [rax]
mov ebx, eax
test eax, eax
jne 0x14001e1bf
test rsi, rsi
je 0x14001c7d0
imul rdx, qword [rbp + 0xb8], 0x64
add rdx, 0x8000
shr rdx, 0x10
mov r8d, 3
mov rcx, rsi
call fcn.1400218a4
mov rax, qword [rsi]
lea rdx, [0x1400714ac]
mov rcx, rsi
call qword [rax]
movabs rax, 0x431bde82d7b634db
mul qword [rbp + 0xb0]
shr rdx, 0x12
xor r8d, r8d
mov rcx, rsi
call fcn.1400218a4
mov rax, qword [rsi]
lea rdx, [0x1400714b0]
mov rcx, rsi
call qword [rax]
cmp r15, 0x800
jae 0x14001c7e6
add r15, r15
mov ebx, 1
jmp 0x14001c6ea
test r14, r14
je 0x14001c800
mov rax, qword [r14]
mov edx, edi
mov rcx, r14
call qword [rax + VariantCopy]
mov ebx, eax
test eax, eax
jne 0x14001e1bf
mov edi, dword [rbp - 0x58]
test rsi, rsi
je 0x14001c87e
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov dword [rsp + 0x28], r12d
lea rax, str.CPU_hardware_threads:
mov qword [rsp + 0x20], rax
mov r9, qword [rbp + 0x120]
mov r8b, byte [rbp - 0x53]
lea rdx, str.size:
mov rcx, rsi
call fcn.14002192c
lea rdx, [rbp + 0x128]
lea rcx, [rbp + 0xd8]
call fcn.140020808
nop
mov r8, qword [rsi]
mov rdx, qword [rax]
mov rcx, rsi
call qword [r8]
nop
mov rcx, qword [rbp + 0xd8]
call fcn.14005af1c
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov edi, dword [rbp - 0x58]
lea eax, [rdi - 1]
cmp eax, 0xfff
ja 0x14001e1ba
mov ecx, dword [rbp - 0x48]
mov r14d, 1
mov r15d, r14d
shl r15, cl
mov qword [rbp + 0xc8], r15
lea edi, [r14 + 0x12]
lea ebx, [rdi + 2]
cmp byte [rbp - 0x7f], r13b
jne 0x14001c8ec
mov r15, r13
mov qword [rbp + 0xc8], r13
mov edx, r14d
lea rcx, [rbp + 0x58]
call fcn.140010390
test eax, eax
js 0x14001c9dd
mov ecx, eax
mov rax, qword [rbp + 0x58]
mov rdx, qword [rax + rcx*8]
cmp word [rdx + 8], di
jne 0x14001c9ce
mov r15d, dword [rdx + 0x10]
mov qword [rbp + 0xc8], r15
mov dil, r14b
mov byte [rbp - 0x7e], dil
lea rcx, [rbp + 0x58]
call fcn.140010400
mov dword [rbp - 0x10], eax
lea rdx, [rbp + 0x68]
lea rcx, [rbp + 0x288]
call fcn.140002604
nop
cmp dword [rbp + 0x70], r13d
jne 0x14001c926
lea rdx, str.LZMA
lea rcx, [rbp + 0x68]
call fcn.140002aa8
mov rbx, qword [rbp + 0x3c0]
test rbx, rbx
je 0x14001c9ff
mov qword [rbp + 0xe4], 4
mov dword [rbp + 0xdc], 0x4b0
mov dword [rbp + 0xe0], 0xbe
mov byte [rbp + 0xd8], r14b
lea rcx, [rbp + 0x58]
call fcn.140010444
cmp byte [rbp - 0x80], 0
je 0x14001c9e5
mov rcx, qword [rbp + 0x18]
lea rax, [rbp + 0xd8]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x48], rsi
mov dword [rsp + 0x40], 0x20
mov rax, qword [rbp + 0x10]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0x58]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x20], rax
mov r9d, dword [rbp - 0x58]
mov r8b, r14b
mov rdx, qword [rbp - 8]
mov rcx, qword [rbp + 0x3b0]
call fcn.140020b80
mov ebx, eax
jmp 0x14001e1ae
cmp word [rdx + 8], bx
jne 0x14001c9dd
mov r15, qword [rdx + 0x10]
jmp 0x14001c8e5
mov dil, r13b
jmp 0x14001c8ef
lea rcx, [rax + 0x10000]
cmp rcx, rax
jae 0x14001c96f
mov ebx, 0x80070057
jmp 0x14001e1ae
lea rdx, [0x1400714e0]
mov rcx, qword [rbp + 0x68]
call fcn.140004344
test al, al
je 0x14001ca23
lea rdx, str.crc32
lea rcx, [rbp + 0x68]
call fcn.140002aa8
lea r8, [rbp + 0x280]
lea rdx, [rbp + 0x68]
mov rbx, qword [rbp + 0x3b0]
mov rcx, rbx
call fcn.14000e69c
movzx r12d, al
mov byte [rbp - 0x7f], r12b
or r8, 0xffffffffffffffff
mov eax, r8d
mov byte [rbp - 0x74], r13b
test r12b, r12b
jne 0x14001ca8f
lea rax, [rbp - 0x74]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x280]
mov r8b, r14b
lea rdx, [rbp + 0x288]
mov rcx, rbx
call fcn.14000e748
cmp byte [rbp - 0x74], r13b
mov r8, 0xffffffffffffffff
cmove eax, r8d
lea rcx, [0x1400713d8]
mov qword [rbp + 0x170], rcx
mov word [rbp + 0x178], 1
mov byte [rbp + 0x17a], r13b
mov dword [rbp + 0x17c], r13d
mov dword [rbp + 0x180], r14d
mov dword [rbp + 0x184], r14d
mov qword [rbp + 0x188], r13
mov byte [rbp + 0x1a0], r13b
mov dword [rbp + 0x1b0], r13d
mov ecx, 2
lea rdx, [rbp + 0x238]
mov qword [rdx], r13
lea rdx, [rdx + 0x38]
sub rcx, r14
jne 0x14001cae3
mov qword [rbp + 0x1b8], r13
mov qword [rbp + 0x1c0], r13
mov qword [rbp + 0x1c8], r13
mov qword [rbp + 0x1d0], r13
mov qword [rbp + 0x1d8], r13
mov qword [rbp + 0x1e0], r13
mov qword [rbp + 0x1e8], r13
mov qword [rbp + 0x1f0], r13
mov qword [rbp + 0x1f8], r13
mov qword [rbp + 0x200], r13
mov qword [rbp + 0x198], rsi
test r12b, r12b
jne 0x14001d7ad
cmp eax, r8d
jne 0x14001d7ad
mov bl, r13b
mov byte [rbp - 0x7f], bl
lea rdx, str.hash
mov rcx, qword [rbp + 0x68]
call fcn.140004344
test al, al
je 0x14001cb86
mov bl, r14b
mov byte [rbp - 0x7f], bl
lea rdx, [0x14006f8a0]
lea rcx, [rbp + 0x68]
call fcn.140002aa8
mov r8d, 1
jmp 0x14001cba1
mov dl, 0x2a
mov rcx, qword [rbp + 0x68]
call fcn.14000332c
movzx r14d, r13b
test eax, eax
mov r8d, 1
cmovns r14d, r8d
mov dword [rbp - 0x78], r14d
mov eax, r13d
mov dword [rbp - 0x50], eax
lea r13, str.Benchmark_threads:
mov ecx, 0x18
mov r12d, dword [rbp - 0x58]
mov dword [rbp - 0x70], r12d
xor edx, edx
cmp byte [rbp - 0x54], dl
jne 0x14001cbd0
test eax, eax
jne 0x14001d7a6
jmp 0x14001cc22
mov r12d, r8d
mov dword [rbp - 0x70], r8d
test eax, eax
je 0x14001cc22
mov ecx, dword [rbp - 0x4c]
cmp ecx, 2
jb 0x14001d7a6
mov r12d, ecx
mov dword [rbp - 0x70], ecx
cmp eax, r8d
jne 0x14001cbfc
cmp ecx, 4
jb 0x14001cc09
shr r12d, 1
jmp 0x14001cc05
cmp ecx, 4
jb 0x14001d7a6
mov dword [rbp - 0x70], r12d
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov ecx, 0x18
xor edx, edx
test dil, dil
jne 0x14001cd54
test bl, bl
jne 0x14001cd63
movzx edi, r14b
mov eax, 1
xor edi, eax
add edi, ecx
mov dword [rbp - 0x38], edi
mov ebx, edi
cmp byte [rbp - 0x53], dl
je 0x14001cc9a
mov r15d, dword [rbp - 0x10]
lea esi, [rax + 0x11]
mov edi, 0xffffffff
mov r13d, eax
mov ecx, ebx
mov r8, r13
shl r8, cl
mov r9b, r14b
mov edx, r15d
mov ecx, r12d
call fcn.1400206c4
add rax, 0x800000
cmp rax, qword [rbp + 0x120]
jbe 0x14001cc84
add ebx, edi
cmp ebx, esi
ja 0x14001cc59
mov rsi, qword [rbp + 0x3b8]
mov edi, dword [rbp - 0x38]
lea r13, str.Benchmark_threads:
mov eax, 1
mov ecx, ebx
mov r15, rax
shl r15, cl
mov qword [rbp + 0xc8], r15
test r14b, r14b
je 0x14001ccda
cmp ebx, edi
je 0x14001ccda
mov rax, qword [rsi]
lea rdx, str.Dictionary_reduced_to:
mov rcx, rsi
call qword [rax]
mov edx, ebx
mov r8d, 1
mov rcx, rsi
call fcn.1400218a4
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov r9b, r14b
mov r8, r15
mov edx, dword [rbp - 0x10]
mov ecx, r12d
call fcn.1400206c4
mov r9, rax
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r13
mov ebx, 1
mov r8b, bl
lea rdx, str.usage:
mov rcx, rsi
call fcn.14002192c
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
xor r15d, r15d
mov qword [rbp - 0x20], r15
test r14b, r14b
je 0x14001cd7d
mov dword [rbp + 0x17c], InitCommonControls
mov dil, r15b
mov byte [rbp - 0x7d], r15b
mov byte [rbp + 0x179], r15b
mov byte [rbp - 0x7c], bl
mov dword [rbp - 0x38], 0x2a
jmp 0x14001cde1
mov qword [rbp + 0xc8], r15
test bl, bl
je 0x14001ccda
lea r9, [r15 + 0x8000]
mov eax, r12d
imul r9, rax
add r9, 0x200000
jmp 0x14001ccee
mov dword [rbp + 0x17c], 4
mov dil, bl
mov byte [rbp - 0x7d], bl
mov byte [rbp + 0x179], bl
mov byte [rbp - 0x7c], r15b
mov ebx, 0x1e
mov dword [rbp - 0x38], ebx
lea edx, [rbx + 2]
lea r8d, [rbx - 0x1a]
mov rcx, rsi
call fcn.140021808
mov r8d, ebx
lea rdx, [0x140071540]
mov rcx, rsi
call fcn.140021c1c
mov rax, qword [rsi]
lea rdx, str.__
mov rcx, rsi
call qword [rax]
mov r8d, ebx
lea rdx, [0x140071550]
mov rcx, rsi
call fcn.140021c1c
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
lea rax, [0x140071560]
lea rdx, str.Dict
test r14b, r14b
cmovne rdx, rax
mov r8d, dword [rbp + 0x17c]
mov rcx, rsi
call fcn.140021850
mov ebx, r15d
mov r15b, byte [rbp - 0x7c]
mov r12d, 6
xor r13d, r13d
mov r8d, 0xa
lea rdx, [0x140071570]
mov rcx, rsi
call fcn.140021c1c
mov r8d, r12d
lea rdx, str.Usage
mov rcx, rsi
call fcn.140021c1c
mov r8d, 7
lea rdx, [0x140071578]
mov rcx, rsi
call fcn.140021c1c
mov r8d, 7
lea rdx, [0x14007157c]
mov rcx, rsi
call fcn.140021c1c
test r15b, r15b
je 0x14001ce98
mov r8d, r12d
lea rdx, [0x140071584]
mov rcx, rsi
call fcn.140021c1c
mov r8d, r12d
lea rdx, str.Effec
mov rcx, rsi
call fcn.140021c1c
test dil, dil
je 0x14001cec2
test ebx, ebx
jne 0x14001ceb7
mov rax, qword [rsi]
lea rdx, str.__
mov rcx, rsi
call qword [rax]
inc ebx
jmp 0x14001ce1e
inc ebx
cmp ebx, 2
jl 0x14001ce1e
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov r8d, dword [rbp + 0x17c]
mov edx, 0x20
mov rcx, rsi
call fcn.140021808
mov ebx, r13d
mov r14b, r15b
mov r15d, r12d
mov r13d, 1
mov r8d, 0xa
lea rdx, str.KiB_s
mov rcx, rsi
call fcn.140021c1c
mov r8d, r15d
lea rdx, [0x1400714ac]
mov rcx, rsi
call fcn.140021c1c
mov r8d, 7
lea rdx, str.MIPS
mov rcx, rsi
call fcn.140021c1c
mov r8d, 7
lea rdx, str.MIPS
mov rcx, rsi
call fcn.140021c1c
test r14b, r14b
je 0x14001cf68
mov r8d, r15d
lea rdx, [0x1400714ac]
mov rcx, rsi
call fcn.140021c1c
mov r8d, r15d
lea rdx, [0x1400714ac]
mov rcx, rsi
call fcn.140021c1c
test dil, dil
je 0x14001cf93
test ebx, ebx
jne 0x14001cf87
mov rax, qword [rsi]
lea rdx, str.__
mov rcx, rsi
call qword [rax]
inc ebx
jmp 0x14001ceee
add ebx, r13d
cmp ebx, 2
jl 0x14001ceee
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov rbx, qword [rbp - 0x40]
xor eax, eax
test rbx, rbx
mov r13, qword [rbp - 0x20]
cmovne r13, rbx
cmp byte [rbp - 0x78], al
mov r15, qword [rbp + 0xc8]
mov r12d, dword [rbp - 0x70]
je 0x14001d24f
mov r14d, eax
cmp dword [rbp + 0x3d0], eax
jbe 0x14001d5e1
jmp 0x14001cfdd
xor eax, eax
test r14d, r14d
je 0x14001cfed
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
xor eax, eax
mov edi, eax
mov r8d, InitCommonControls
lea rdx, [0x140071598]
mov rcx, rsi
call fcn.140021850
mov rax, qword [rbp - 8]
mov qword [rbp + 0x98], rax
mov dword [rbp + 0xa0], r12d
cmp edi, 2
je 0x14001d02c
xor r13d, r13d
test rbx, rbx
jne 0x14001d02c
mov byte [rbp + 0xa4], r13b
jmp 0x14001d037
mov eax, 1
mov byte [rbp + 0xa4], al
mov qword [rbp + 0xa8], rbx
lea r8, [rbp + 0x100]
mov rdx, rsi
lea rcx, [rbp + 0x98]
call fcn.14001f948
mov ebx, eax
test eax, eax
jne 0x14001e1ae
mov r13, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0x198]
mov rax, qword [rcx]
call qword [rax + VariantCopy]
mov rbx, qword [rbp - 0x40]
test rbx, rbx
cmovne r13, rbx
inc edi
cmp edi, 3
jb 0x14001cfef
mov rcx, qword [rbp + 0x198]
mov rax, qword [rcx]
call qword [rax + VariantCopy]
mov r9d, 1
mov byte [rbp + 0x17a], r9b
mov qword [rbp + 0x188], r13
xor r8d, r8d
cmp byte [rbp - 0x7f], r8b
jne 0x14001d246
cmp byte [rbp - 0x80], r8b
je 0x14001d0d0
mov rax, qword [rbp + 0x18]
cmp byte [rbp - 0x7e], r8b
je 0x14001d0dc
cmp rax, r15
jbe 0x14001d0dc
mov rax, r15
jmp 0x14001d0dc
mov rax, r15
cmp byte [rbp - 0x7e], r8b
mov cl, r8b
je 0x14001d0df
mov cl, r9b
lea rdx, [rbp + 0x170]
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x40], rsi
mov rdx, qword [rbp + 0x10]
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], cl
lea rax, [rbp + 0x100]
mov qword [rsp + 0x20], rax
mov r9d, r12d
mov rdi, qword [rbp - 8]
mov r8, rdi
lea rdx, [rbp + 0x58]
mov rcx, qword [rbp + 0x3b0]
call fcn.14002251c
mov ebx, eax
xor r8d, r8d
test eax, eax
jne 0x14001e1ae
lea r9d, [rax + 1]
mov eax, 0x20000
mov dl, byte [rbp - 0x7e]
test dl, dl
cmovne rax, r15
cmp byte [rbp - 0x80], r8b
je 0x14001d15c
mov rax, qword [rbp + 0x18]
test dl, dl
je 0x14001d15c
cmp rax, r15
cmova rax, r15
mov qword [rsp + 0x58], r13
mov byte [rsp + 0x50], r9b
lea rcx, [rbp + 0x1b8]
mov qword [rsp + 0x48], rcx
lea rcx, [rbp + 0x100]
mov qword [rsp + 0x40], rcx
lea rcx, [rbp + 0x170]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rsi
mov rcx, qword [rbp + 0x10]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
mov r9d, r12d
mov r8, rdi
lea rdx, [rbp + 0x58]
mov rcx, qword [rbp + 0x3b0]
call fcn.1400227d8
mov ebx, eax
test eax, eax
jne 0x14001e1ae
mov rcx, qword [rbp + 0x198]
mov rax, qword [rcx]
call qword [rax + VariantCopy]
lea r8d, [rbx + 0xc]
lea rdx, [0x140071598]
mov rcx, rsi
call fcn.140021850
mov qword [rbp + 0x98], rdi
mov dword [rbp + 0xa0], r12d
mov rcx, qword [rbp - 0x40]
test rcx, rcx
setne byte [rbp + 0xa4]
mov qword [rbp + 0xa8], rcx
lea r8, [rbp + 0x100]
mov rdx, rsi
lea rcx, [rbp + 0x98]
call fcn.14001f948
mov ebx, eax
test eax, eax
jne 0x14001e1ae
mov rcx, qword [rbp + 0x198]
mov rax, qword [rcx]
call qword [rax + VariantCopy]
inc r14d
cmp r14d, dword [rbp + 0x3d0]
mov rbx, qword [rbp - 0x40]
jb 0x14001cfdb
jmp 0x14001d5dd
mov rdi, qword [rbp - 8]
jmp 0x14001d139
lea rdx, str.LZMA
mov rcx, qword [rbp + 0x68]
call fcn.140004344
xor ebx, ebx
test al, al
jne 0x14001d37c
mov r14d, ebx
lea rdi, [0x140070e20]
mov rdx, qword [rdi + 0x18]
lea rcx, [rbp - 0x68]
call fcn.140002640
nop
lea rcx, [rbp + 0x88]
call fcn.140002684
nop
mov dl, 0x3a
mov rcx, qword [rbp - 0x68]
call fcn.14000332c
mov ebx, eax
test ebx, ebx
js 0x14001d2c7
lea edx, [rbx + 1]
add rdx, qword [rbp - 0x68]
lea rcx, [rbp + 0x88]
call fcn.140002aa8
cmp ebx, dword [rbp - 0x60]
jae 0x14001d2c7
mov dword [rbp - 0x60], ebx
mov ecx, ebx
mov rax, qword [rbp - 0x68]
xor ebx, ebx
mov byte [rcx + rax], bl
jmp 0x14001d2c9
xor ebx, ebx
mov rdx, qword [rbp + 0x68]
mov rcx, qword [rbp - 0x68]
call fcn.140004344
test al, al
je 0x14001d315
cmp dword [rbp + 0x90], ebx
je 0x14001d343
lea rdx, [0x14007159c]
mov rcx, qword [rbp + 0x88]
call fcn.1400615e0
test eax, eax
jne 0x14001d301
cmp dword [rbp + 0x80], ebx
je 0x14001d343
mov rdx, qword [rbp + 0x88]
lea rcx, [rbp + 0x78]
call fcn.140003838
test al, al
jne 0x14001d343
mov rcx, qword [rbp + 0x88]
call fcn.14005af1c
nop
mov rcx, qword [rbp - 0x68]
call fcn.14005af1c
mov r8d, 1
add r14d, r8d
add rdi, 0x20
cmp r14d, 0x15
jae 0x14001d382
jmp 0x14001d273
mov eax, dword [rdi + 8]
mov dword [rbp + 0x1a4], eax
mov eax, dword [rdi + 0xc]
mov dword [rbp + 0x1a8], eax
mov eax, dword [rdi + 0x10]
mov dword [rbp + 0x1ac], eax
mov rcx, qword [rbp + 0x88]
call fcn.14005af1c
nop
mov rcx, qword [rbp - 0x68]
call fcn.14005af1c
mov r8d, 1
jmp 0x14001d3a7
mov r8d, 1
mov dword [rbp + 0x1a4], 0x4b0
mov dword [rbp + 0x1ac], 4
mov dword [rbp + 0x1a8], 0xbe
mov byte [rbp + 0x1a0], r8b
mov edx, dword [rbp - 0x48]
mov r9d, 0x12
cmp edx, r9d
jae 0x14001d3bb
mov edx, r9d
mov dword [rbp - 0x48], edx
mov r14d, ebx
cmp dword [rbp + 0x3d0], ebx
jbe 0x14001d5dd
mov ecx, edx
mov rax, r8
shl rax, cl
mov edi, edx
cmp r15, rax
cmovb edi, r9d
cmp byte [rbp + 0x3d8], bl
mov eax, 0x20
cmove edi, eax
mov ecx, edi
mov rax, r8
shl rax, cl
cmp rax, r15
jbe 0x14001d416
mov r9d, 0xffffffff
test edi, edi
je 0x14001d410
add edi, r9d
mov ecx, edi
mov rax, r8
shl rax, cl
cmp rax, r15
ja 0x14001d3fc
mov r9d, 0x12
mov ecx, edi
mov rbx, r8
shl rbx, cl
cmp rbx, r15
ja 0x14001d5cb
mov edx, edi
mov rcx, rsi
call fcn.140021d20
mov qword [rbp + 0x190], rbx
lea rdx, [rbp + 0x58]
lea rcx, [rbp + 0x138]
call fcn.14001b348
nop
lea rdx, [rbp + 0x68]
lea rcx, [rbp + 0x148]
call fcn.140002604
nop
lea rdx, [rbp + 0x78]
lea rcx, [rbp + 0x158]
call fcn.140002860
nop
lea rdx, str.LZMA
mov rcx, qword [rbp + 0x148]
call fcn.140004344
xor ecx, ecx
test al, al
je 0x14001d4e3
mov dword [rbp + 0x98], 0x13
mov dword [rbp + 0xa0], edi
lea rdx, [0x14006ff04]
lea rcx, [rbp + 0xd8]
call fcn.140002934
nop
lea r8, [rbp + 0x98]
mov rdx, rax
lea rcx, [rbp + 0x138]
call fcn.1400105b8
mov ebx, eax
mov rcx, qword [rbp + 0xd8]
call fcn.14005af1c
nop
lea rcx, [rbp + 0x98]
call fcn.14000b354
test ebx, ebx
jne 0x14001d77b
xor ecx, ecx
cmp byte [rbp - 0x80], cl
je 0x14001d4ee
mov rax, qword [rbp + 0x18]
jmp 0x14001d503
mov rax, qword [rbp + 0x190]
cmp rax, 0x40000
jb 0x14001d503
add rax, 0x10000
lea rcx, [rbp + 0x1a0]
mov qword [rsp + 0x58], rcx
lea rcx, [rbp + 0x170]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rsi
mov dword [rsp + 0x40], 0x20
mov rcx, qword [rbp + 0x10]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x138]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x20], rax
mov r9d, r12d
mov r8d, 1
mov rdx, qword [rbp - 8]
mov rcx, qword [rbp + 0x3b0]
call fcn.140020b80
mov ebx, eax
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
test ebx, ebx
jne 0x14001d77b
xor ebx, ebx
mov rcx, qword [rbp + 0x158]
call fcn.14005af1c
mov rcx, qword [rbp + 0x148]
call fcn.14005af1c
lea rcx, [rbp + 0x138]
call fcn.14001b614
lea r8d, [rbx + 1]
cmp byte [rbp + 0x3d8], bl
je 0x14001d6a3
add edi, r8d
mov ecx, edi
mov ebx, r8d
shl rbx, cl
cmp rbx, r15
jbe 0x14001d427
mov edx, dword [rbp - 0x48]
lea r9d, [r8 + 0x11]
xor ebx, ebx
add r14d, r8d
cmp r14d, dword [rbp + 0x3d0]
jb 0x14001d3ca
mov dil, byte [rbp - 0x7d]
mov r8d, dword [rbp + 0x17c]
mov ebx, dword [rbp - 0x38]
add r8d, ebx
mov dl, 0x2d
mov rcx, rsi
call fcn.140021808
test dil, dil
je 0x14001d619
mov rax, qword [rsi]
lea rdx, str.__
mov rcx, rsi
call qword [rax]
mov r8d, ebx
mov dl, 0x2d
mov rcx, rsi
call fcn.140021808
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
test dil, dil
je 0x14001d6b1
mov r8d, dword [rbp + 0x17c]
lea rdx, str.Avr:
mov rcx, rsi
call fcn.140021850
mov r14d, dword [rbp - 0x78]
mov bl, r14b
xor bl, 1
lea rax, [rbp + 0x1b8]
mov qword [rsp + 0x20], rax
mov r9b, bl
mov r8, r13
mov dil, byte [rbp - 0x7c]
mov dl, dil
mov rcx, rsi
call fcn.140021c64
mov rax, qword [rsi]
lea rdx, str.__
mov rcx, rsi
call qword [rax]
lea rax, [rbp + 0x1e0]
mov qword [rsp + 0x20], rax
mov r9b, bl
mov r8, r13
mov dl, dil
mov rcx, rsi
call fcn.140021c64
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
jmp 0x14001d6b9
mov edx, dword [rbp - 0x48]
mov r9d, 0x12
jmp 0x14001d5cd
mov r14d, dword [rbp - 0x78]
mov dil, byte [rbp - 0x7c]
mov r8d, dword [rbp + 0x17c]
lea rdx, str.Tot:
mov rcx, rsi
call fcn.140021850
movups xmm1, xmmword [rbp + 0x1b8]
movups xmmword [rbp + 0x20], xmm1
movups xmm2, xmmword [rbp + 0x1c8]
movups xmmword [rbp + 0x30], xmm2
movsd xmm0, qword [rbp + 0x1d8]
movsd qword [rbp + 0x40], xmm0
psrldq xmm1, 8
movq rcx, xmm1
add rcx, qword [rbp + 0x1e8]
mov qword [rbp + 0x28], rcx
movq rax, xmm2
add rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x1f8]
add qword [rbp + 0x38], rax
mov rax, qword [rbp + 0x200]
add qword [rbp + 0x40], rax
mov rax, qword [rbp + 0x1e0]
add qword [rbp + 0x20], rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, r13
mov dl, dil
mov rcx, rsi
call fcn.140021c64
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov eax, dword [rbp - 0x50]
mov r8d, 1
add eax, r8d
mov dword [rbp - 0x50], eax
cmp eax, 3
jae 0x14001d7a4
mov dil, byte [rbp - 0x7e]
mov bl, byte [rbp - 0x7f]
jmp 0x14001cbab
mov rcx, qword [rbp + 0x158]
call fcn.14005af1c
mov rcx, qword [rbp + 0x148]
call fcn.14005af1c
lea rcx, [rbp + 0x138]
call fcn.14001b614
jmp 0x14001e1ae
xor edx, edx
mov ebx, edx
jmp 0x14001e1ae
test rsi, rsi
jne 0x14001d7ba
mov ebx, r14d
jmp 0x14001e1ae
mov eax, 0x8000000
test dil, dil
cmove r15, rax
mov qword [rbp + 0xc8], r15
cmp byte [rbp - 0x80], r13b
mov r13, qword [rbp + 0x18]
je 0x14001d7f6
test dil, dil
jne 0x14001d7e8
mov r15, r13
mov qword [rbp + 0xc8], r13
jmp 0x14001d7f6
cmp r15, r13
cmova r15, r13
mov qword [rbp + 0xc8], r15
mov edx, r14d
lea rcx, [rbp + 0x58]
call fcn.140010390
xor ebx, ebx
jmp 0x14001d81d
mov edx, eax
lea rcx, [rbp + 0x58]
call fcn.14001f364
mov edx, r14d
lea rcx, [rbp + 0x58]
call fcn.140010390
test eax, eax
jns 0x14001d806
mov dword [rbp - 0x50], 0x1000
mov qword [rbp + 0x88], rbx
or dword [rbp - 0x38], 0xffffffff
test r12b, r12b
je 0x14001d8fa
mov r14d, ebx
lea rdi, [0x1400710c4]
mov rdx, qword [rdi + 0xc]
lea rcx, [rbp - 0x68]
call fcn.140002640
nop
lea rcx, [rbp]
call fcn.140002684
nop
mov dl, 0x3a
mov rcx, qword [rbp - 0x68]
call fcn.14000332c
mov ebx, eax
test ebx, ebx
js 0x14001d890
lea edx, [rbx + 1]
add rdx, qword [rbp - 0x68]
lea rcx, [rbp]
call fcn.140002aa8
cmp ebx, dword [rbp - 0x60]
jae 0x14001d890
mov dword [rbp - 0x60], ebx
mov rax, qword [rbp - 0x68]
xor edx, edx
mov byte [rbx + rax], dl
mov rdx, qword [rbp + 0x68]
mov rcx, qword [rbp - 0x68]
call fcn.140004344
test al, al
je 0x14001d8c2
mov rdx, qword [rbp]
mov rcx, qword [rbp + 0x78]
call fcn.140004394
mov ecx, dword [rdi]
mov dword [rbp - 0x50], ecx
lea rcx, [rdi + 4]
mov qword [rbp + 0x88], rcx
test al, al
jne 0x14001d8eb
mov rcx, qword [rbp]
call fcn.14005af1c
nop
mov rcx, qword [rbp - 0x68]
call fcn.14005af1c
inc r14d
add rdi, 0x18
cmp r14d, 9
jae 0x14001d9a7
jmp 0x14001d846
mov rcx, qword [rbp]
call fcn.14005af1c
nop
jmp 0x14001d99e
mov edi, ebx
lea r14, str.LZMA:x1
mov rdx, qword [r14]
lea rcx, [rbp - 0x68]
call fcn.140002640
nop
lea rcx, [rbp]
call fcn.140002684
nop
mov dl, 0x3a
mov rcx, qword [rbp - 0x68]
call fcn.14000332c
mov ebx, eax
test ebx, ebx
js 0x14001d94c
lea edx, [rbx + 1]
add rdx, qword [rbp - 0x68]
lea rcx, [rbp]
call fcn.140002aa8
cmp ebx, dword [rbp - 0x60]
jae 0x14001d94c
mov dword [rbp - 0x60], ebx
mov rax, qword [rbp - 0x68]
xor edx, edx
mov byte [rbx + rax], dl
mov rdx, qword [rbp + 0x68]
mov rcx, qword [rbp - 0x68]
call fcn.140004344
test al, al
je 0x14001d971
mov rdx, qword [rbp]
mov rcx, qword [rbp + 0x78]
call fcn.140004394
mov dword [rbp - 0x38], edi
test al, al
jne 0x14001d994
mov rcx, qword [rbp]
call fcn.14005af1c
nop
mov rcx, qword [rbp - 0x68]
call fcn.14005af1c
inc edi
add r14, 0x20
cmp edi, 0x15
jae 0x14001d9a7
jmp 0x14001d903
mov rcx, qword [rbp]
call fcn.14005af1c
nop
mov rcx, qword [rbp - 0x68]
call fcn.14005af1c
mov r9d, 0x100000
mov rdx, r15
mov eax, r12d
mov r14d, 1
xor eax, r14d
lea eax, [rax*2 + 1]
mov r8d, dword [rbp - 0x58]
xor ecx, ecx
cmp byte [rbp - 0x80], cl
je 0x14001d9f0
lea r9, [r13 + 0x100000]
cmp r15, r13
cmova rdx, r13
xor r15d, r15d
test r12b, r12b
je 0x14001d9f3
mov eax, r15d
cmp r8d, r14d
cmovne eax, r14d
jmp 0x14001d9f3
xor r15d, r15d
mov ecx, eax
imul rcx, r8
imul rcx, rdx
add r9, rcx
mov dword [rsp + 0x28], r8d
lea rax, str.Benchmark_threads:
mov qword [rsp + 0x20], rax
mov r8b, r14b
lea rdx, str.usage:
mov rcx, rsi
call fcn.14002192c
mov qword [rbp - 0x68], r15
mov eax, r15d
mov dword [rbp - 0x60], eax
mov dword [rbp - 0x5c], r15d
mov ebx, dword [rbp + 0x50]
cmp ebx, dword [rbp - 0x58]
ja 0x14001da81
mov edx, ebx
lea rcx, [rbp - 0x68]
call fcn.140001d44
lea edi, [rbx + rbx]
mov eax, dword [rbp - 0x58]
mov edx, eax
shr edx, 1
cmp edx, ebx
jbe 0x14001da62
cmp edx, edi
jae 0x14001da62
lea rcx, [rbp - 0x68]
call fcn.140001d44
mov eax, dword [rbp - 0x58]
cmp eax, ebx
jbe 0x14001da78
cmp eax, edi
jae 0x14001da78
mov edx, eax
lea rcx, [rbp - 0x68]
call fcn.140001d44
mov eax, dword [rbp - 0x58]
mov ebx, edi
cmp edi, eax
jbe 0x14001da39
mov eax, dword [rbp - 0x60]
mov r13d, r12d
xor r13d, r14d
add r13d, r14d
mov dword [rbp - 0x4c], r13d
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x30], r15
mov edi, eax
imul edi, r13d
mov ebx, edi
mov eax, 8
mul rbx
mov r12, 0xffffffffffffffff
cmovo rax, r12
mov rcx, rax
call fcn.14005af24
mov r14, rax
mov qword [rbp - 0x40], rax
lea eax, [r12 + 9]
mul rbx
cmovo rax, r12
mov rcx, rax
call fcn.14005af24
mov r12, rax
mov qword [rbp - 0x30], rax
mov r8d, r15d
test edi, edi
je 0x14001db71
cmp edi, 2
jb 0x14001db46
lea ecx, [rdi - 1]
lea rax, [rax + rcx*8]
lea rcx, [r14 + rcx*8]
cmp r12, rcx
ja 0x14001db00
cmp rax, r14
jae 0x14001db46
mov eax, edi
and eax, 0xfffffffe
add r8d, 2
mov r15d, r8d
cmp r8d, eax
jb 0x14001db05
lea ebx, [rax + 1]
and rbx, 0xfffffffffffffffe
shl rbx, 3
mov r8, rbx
and r8, 0xfffffffffffffff8
xor edx, edx
mov rcx, r14
call fcn.14005d6c0
and rbx, 0xfffffffffffffff8
mov r8, rbx
xor edx, edx
mov rcx, r12
call fcn.14005d6c0
mov r8d, r15d
cmp r15d, edi
jae 0x14001db71
mov eax, r8d
lea rcx, [r12 + rax*8]
mov rax, r14
sub rax, r12
sub edi, r8d
mov edx, edi
xor r14d, r14d
lea edi, [r14 + 1]
mov qword [rax + rcx], r14
mov qword [rcx], r14
lea rcx, [rcx + 8]
sub rdx, rdi
jne 0x14001db5f
jmp 0x14001db79
mov edi, 1
xor r14d, r14d
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov ebx, r14d
mov r15d, dword [rbp - 0x60]
mov r12, qword [rbp - 0x68]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov rax, qword [rsi]
lea rcx, [0x1400714f4]
lea rdx, [0x1400714fc]
cmp ebx, edi
cmove rdx, rcx
lea rcx, str.THRD
test ebx, ebx
cmove rdx, rcx
mov rcx, rsi
call qword [rax]
mov edi, r14d
test r15d, r15d
je 0x14001dc7e
test edi, edi
je 0x14001dbde
mov rax, qword [rsi]
lea rdx, [0x140071418]
mov rcx, rsi
call qword [rax]
test ebx, ebx
jne 0x14001dc09
imul r8d, r13d, 0xf
sub r8d, 0xf
lea edx, [rbx + 0x20]
mov rcx, rsi
call fcn.140021808
mov eax, edi
mov edx, dword [r12 + rax*4]
lea r8d, [rbx + 0xe]
mov rcx, rsi
call fcn.1400218a4
jmp 0x14001dc73
test r13d, r13d
je 0x14001dc73
lea r14, [0x1400714ac]
mov ecx, 1
cmp ebx, ecx
lea rax, str.Usage
cmove r14, rax
lea rax, [0x14007150c]
lea r15, str.MB_s
cmove r15, rax
mov eax, r13d
mov qword [rbp], rax
mov r8d, 6
mov rdx, r14
mov rcx, rsi
call fcn.140021c1c
mov r8d, 9
mov rdx, r15
mov rcx, rsi
call fcn.140021c1c
sub r13, 1
jne 0x14001dc40
mov r13d, dword [rbp - 0x4c]
mov r15d, dword [rbp - 0x60]
xor r14d, r14d
inc edi
cmp edi, r15d
jb 0x14001dbcb
mov edi, 1
add ebx, edi
cmp ebx, 3
jb 0x14001db8d
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov rdx, r14
mov qword [rbp - 0x20], rdx
lea ecx, [rdi + 9]
cmp byte [rbp - 0x7d], r14b
cmovne ecx, dword [rbp - 0x48]
mov r12, qword [rbp - 0x30]
mov r8, qword [rbp + 0x18]
mov r9b, byte [rbp - 0x80]
mov dword [rbp - 0x78], ecx
mov rax, rdi
shl rax, cl
mov rdi, r8
mov qword [rbp + 0xf0], r8
cmp r8, rax
ja 0x14001dcd2
test r9b, r9b
jne 0x14001dcdc
mov rdi, rax
mov qword [rbp + 0xf0], rax
mov ebx, r14d
mov dword [rbp - 0x70], ebx
cmp dword [rbp + 0x3d0], r14d
ja 0x14001dd0f
mov edi, 1
mov rax, qword [rbp + 0xc8]
cmp qword [rbp + 0xf0], rax
jae 0x14001e0f3
add ecx, edi
jmp 0x14001dcb5
mov rdi, qword [rbp + 0xf0]
mov edx, ecx
mov rcx, rsi
call fcn.140021d20
mov dword [rbp - 0x10], r14d
test r15d, r15d
jne 0x14001dd61
lea edi, [r15 + 1]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov rdx, qword [rbp - 0x20]
add rdx, rdi
mov qword [rbp - 0x20], rdx
add ebx, edi
mov dword [rbp - 0x70], ebx
cmp ebx, dword [rbp + 0x3d0]
mov ecx, dword [rbp - 0x78]
mov r14d, 0
jb 0x14001dd08
mov r8, qword [rbp + 0x18]
mov r9b, byte [rbp - 0x80]
jmp 0x14001dcf0
mov rdi, qword [rbp + 0xf0]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + InitCommonControls]
mov ebx, eax
xor eax, eax
test ebx, ebx
jne 0x14001e0ea
mov r15d, r14d
xor ebx, ebx
cmp byte [rbp - 0x7f], bl
je 0x14001de5c
mov qword [rbp - 0x10], rbx
mov qword [rbp], rbx
cmp dword [rbp - 0x78], 0x11
jne 0x14001dd9e
cmp byte [rbp - 0x80], bl
jne 0x14001dd9e
mov rax, qword [rbp + 0x88]
mov qword [rsp + 0x80], rbx
mov byte [rsp + 0x78], bl
mov qword [rsp + 0x70], rbx
mov byte [rsp + 0x68], bl
lea rcx, [rbp + 0x100]
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x58], rsi
lea rcx, [rbp + 0x58]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x40], 1
mov eax, dword [rbp - 0x50]
mov dword [rsp + 0x38], eax
lea rax, [rbp]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x10]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x10]
mov qword [rsp + 0x20], rax
mov r9, rdi
mov rax, qword [rbp - 0x68]
mov r8d, dword [rax + r15*4]
mov rdx, qword [rbp - 8]
mov rcx, qword [rbp + 0x3b0]
call fcn.14001e2e8
mov ebx, eax
test eax, eax
jne 0x14001e0ea
test r14d, r14d
je 0x14001de35
mov rax, qword [rsi]
lea rdx, [0x140071418]
mov rcx, rsi
call qword [rax]
mov rbx, qword [rbp - 0x10]
mov r8, rbx
mov rdi, qword [rbp]
mov rdx, rdi
mov rcx, rsi
call fcn.14001e218
mov rax, qword [rbp - 0x40]
add qword [rax + r15*8], rbx
add qword [r12 + r15*8], rdi
jmp 0x14001e0ae
lea rdx, str.AES128
mov rcx, qword [rbp + 0x68]
call fcn.14000388c
test al, al
je 0x14001de7a
mov ecx, InitCommonControls
lea edi, [rcx + 0x10]
jmp 0x14001de99
lea rdx, str.AES192
mov rcx, qword [rbp + 0x68]
call fcn.14000388c
mov edi, 0x20
mov ecx, edi
test al, al
lea eax, [rdi - 8]
cmovne ecx, eax
mov dword [rbp + 0x1b0], ecx
lea rdx, [rbp + 0x58]
lea rcx, [rbp + 0x20]
call fcn.14001b348
nop
lea rdx, [rbp + 0x68]
lea rcx, [rbp + 0x30]
call fcn.140002604
nop
lea rdx, [rbp + 0x78]
lea rcx, [rbp + 0x40]
call fcn.140002860
nop
movsxd rcx, dword [rbp - 0x38]
test ecx, ecx
js 0x14001df00
shl rcx, 5
lea rdx, [0x140070e20]
mov eax, dword [rcx + rdx + 8]
mov dword [rbp + 0x1a4], eax
mov eax, dword [rcx + rdx + 0x10]
mov dword [rbp + 0x1ac], eax
mov eax, dword [rcx + rdx + 0xc]
mov dword [rbp + 0x1a8], eax
mov edi, dword [rcx + rdx + 4]
jmp 0x14001df32
cmp byte [rbp - 0x74], bl
je 0x14001df18
mov eax, 4
mov dword [rbp + 0x1a4], eax
mov dword [rbp + 0x1ac], eax
jmp 0x14001df2c
mov dword [rbp + 0x1a4], 0x400
mov dword [rbp + 0x1ac], 0x40
mov dword [rbp + 0x1a8], ebx
mov byte [rbp + 0x178], bl
lea rdx, str.LZMA
mov rcx, qword [rbp + 0x30]
call fcn.140004344
test al, al
je 0x14001dfa9
mov dword [rbp + 0x98], 0x13
mov eax, dword [rbp - 0x78]
mov dword [rbp + 0xa0], eax
lea rdx, [0x14006ff04]
lea rcx, [rbp + 0xd8]
call fcn.140002934
nop
lea r8, [rbp + 0x98]
mov rdx, rax
lea rcx, [rbp + 0x20]
call fcn.1400105b8
mov ebx, eax
mov rcx, qword [rbp + 0xd8]
call fcn.14005af1c
nop
lea rcx, [rbp + 0x98]
call fcn.14000b354
test ebx, ebx
jne 0x14001e0cf
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x58], rax
lea rax, [rbp + 0x170]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], rsi
mov dword [rsp + 0x40], edi
mov rax, qword [rbp + 0x10]
mov qword [rsp + 0x38], rax
mov rax, qword [rbp + 0xf0]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x20], rax
mov rax, qword [rbp - 0x68]
mov r9d, dword [rax + r15*4]
xor r8d, r8d
mov rdx, qword [rbp - 8]
mov rcx, qword [rbp + 0x3b0]
call fcn.140020b80
mov ebx, eax
test eax, eax
jne 0x14001e0cf
test r14d, r14d
je 0x14001e02d
mov rax, qword [rsi]
lea rdx, [0x140071418]
mov rcx, rsi
call qword [rax]
lea r15d, [r14 + r14]
lea rdi, [rbp + 0x238]
mov r14d, 2
mov r13, qword [rbp - 0x40]
lea rcx, [rdi - 0x30]
call fcn.140020ae8
mov r9, rax
mov rcx, qword [rdi - 0x10]
imul rcx, qword [rdi]
mov r8, qword [rdi - 0x30]
mov rdx, qword [rdi - 0x28]
call fcn.1400216f4
add qword [r12 + r15*8], r9
add qword [r13 + r15*8], rax
mov r8, rax
mov rdx, r9
mov rcx, rsi
call fcn.14001e218
mov eax, 1
add r15d, eax
lea rdi, [rdi + 0x38]
sub r14, rax
jne 0x14001e042
mov rcx, qword [rbp + 0x40]
call fcn.14005af1c
mov rcx, qword [rbp + 0x30]
call fcn.14005af1c
lea rcx, [rbp + 0x20]
call fcn.14001b614
mov r14d, dword [rbp - 0x10]
mov r13d, dword [rbp - 0x4c]
mov edi, 1
add r14d, edi
mov dword [rbp - 0x10], r14d
mov r15d, dword [rbp - 0x60]
cmp r14d, r15d
jb 0x14001dd5a
mov ebx, dword [rbp - 0x70]
jmp 0x14001dd26
mov rcx, qword [rbp + 0x40]
call fcn.14005af1c
mov rcx, qword [rbp + 0x30]
call fcn.14005af1c
lea rcx, [rbp + 0x20]
call fcn.14001b614
mov r15, qword [rbp - 0x40]
jmp 0x14001e192
test rdx, rdx
je 0x14001e18b
mov rax, qword [rsi]
lea rdx, str.Avg:
mov rcx, rsi
call qword [rax]
mov ebx, r14d
mov dword [rbp - 0x50], ebx
test r15d, r15d
mov r15, qword [rbp - 0x40]
je 0x14001e180
test ebx, ebx
je 0x14001e12d
mov rax, qword [rsi]
lea rdx, [0x140071418]
mov rcx, rsi
call qword [rax]
test r13d, r13d
je 0x14001e176
mov edi, ebx
imul edi, r13d
mov r14d, r13d
mov r13, qword [rbp - 0x20]
mov ebx, 1
xor edx, edx
mov rax, qword [r15 + rdi*8]
div r13
mov r8, rax
xor edx, edx
mov rax, qword [r12 + rdi*8]
div r13
mov rdx, rax
mov rcx, rsi
call fcn.14001e218
add edi, ebx
sub r14, rbx
jne 0x14001e144
mov ebx, dword [rbp - 0x50]
mov r13d, dword [rbp - 0x4c]
lea edi, [r14 + 1]
add ebx, edi
mov dword [rbp - 0x50], ebx
cmp ebx, dword [rbp - 0x60]
jb 0x14001e11a
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
jmp 0x14001e18f
mov r15, qword [rbp - 0x40]
mov ebx, r14d
mov rcx, r12
call fcn.14005af1c
nop
mov rcx, r15
call fcn.14005af1c
nop
mov rcx, qword [rbp - 0x68]
call fcn.14005af1c
nop
mov rcx, qword [rbp + 0x288]
jmp 0x14001c38b
mov ebx, 0x80070057
mov rcx, qword [rbp + 0x10]
call fcn.14005a400
nop
mov rcx, qword [rbp + 0x78]
call fcn.14005af1c
mov rcx, qword [rbp + 0x68]
call fcn.14005af1c
lea rcx, [rbp + 0x58]
call fcn.14001b614
mov eax, ebx
jmp 0x14001e201
mov rdx, rdi
lea rcx, [0x1400758c0]
mov rax, qword [0x1400758c8]
call rax
nop
mov eax, 0x80004005
add rsp, 0x478
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret