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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x4e8
mov qword [rsp + 0x450], 0xfffffffffffffffe
mov r14, r9
mov r15, r8
mov r12, rdx
xor edi, edi
mov qword [rsp + 0x198], rdi
mov qword [rsp + 0x1a0], rdi
xor edx, edx
lea rsi, [0x00469b60]
mov rcx, rsi
call qword [0x00469b68]
mov qword [rsp + 0x1a0], rdi
mov qword [rsp + 0x198], rdi
mov edx, 0x500
mov rcx, rsi
call qword [0x00469b60]
mov rbx, rax
cmp rax, rdi
jne 0x4246d7
mov rdx, rax
mov rcx, rsi
call qword [0x00469b68]
jmp 0x4247f6
mov rax, rdi
mov r10d, 1
mov r11d, 0x100
mov byte [rax + rbx], al
add rax, r10
cmp rax, r11
jb 0x4246e6
mov r8d, 0xffffffff
mov r9, rdi
lea rbp, [0x00481dc0]
mov cl, byte [r9 + rbx]
xor cl, r8b
movzx edx, cl
mov eax, r8d
shr eax, 8
mov r8d, dword [rbp + rdx*4]
xor r8d, eax
add r9, r10
cmp r9, r11
jb 0x424701
not r8d
cmp r8d, 0x29058c73
je 0x42473e
mov rdx, rbx
mov rcx, rsi
call qword [0x00469b68]
jmp 0x4247f6
lea rcx, [rbx + 0x100]
mov edx, 0x400
call fcn.0041e858
mov r13, rdi
mov rbp, rbx
jmp 0x424759
xor edi, edi
mov esi, edi
mov edi, 0xffffffff
xor eax, eax
mov r9, rax
mov edx, esi
cmp rdx, rax
jbe 0x4247a5
lea r15d, [rax + 1]
lea r14, [0x00481dc0]
mov cl, byte [r9 + rbp]
xor cl, dil
movzx r8d, cl
mov eax, edi
shr eax, 8
mov edi, dword [r14 + r8*4]
xor edi, eax
add r9, r15
cmp r9, rdx
jb 0x424777
mov r14, qword [rsp + 0x548]
mov r15, qword [rsp + 0x540]
mov rcx, rbp
call fcn.0045dd30
not edi
cmp edi, eax
jne 0x4247d2
mov edi, 1
add esi, edi
lea eax, [rdi + 0x1f]
cmp esi, eax
jb 0x42475b
add r13, rdi
add rbp, rdi
cmp r13, 0x4e0
jb 0x424757
jmp 0x4247e4
mov rdx, rbx
lea rcx, [0x00469b60]
call qword [0x00469b68]
jmp 0x4247f6
mov rdx, rbx
lea rcx, [0x00469b60]
call qword [0x00469b68]
jmp 0x424800
mov eax, 0x80004005
jmp 0x427d4e
movabs rax, 0x100000000
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x2c8], rdi
mov qword [rsp + 0x2d0], rdi
lea rcx, [rsp + 0x2c8]
call fcn.0040c7b4
xor ebx, ebx
cmp eax, ebx
je 0x42485e
mov rcx, qword [rsp + 0x2c8]
call fcn.0040c794
cmp eax, ebx
je 0x42485e
mov rcx, qword [rsp + 0x2c8]
call fcn.0040c794
mov ebx, eax
mov dword [rsp + 0xd8], eax
jmp 0x42486c
call fcn.0040c7dc
mov ebx, eax
mov dword [rsp + 0xd8], eax
lea rcx, [rsp + 0x228]
call fcn.0040c830
mov byte [rsp + 0xbd], al
mov dword [rsp + 0x9c], ebx
xor ebx, ebx
mov cl, bl
mov dword [rsp + 0x98], ecx
mov dword [rsp + 0x118], 0xfa0
mov dword [rsp + 0xe8], 0x16
mov byte [rsp + 0x93], bl
mov qword [rsp + 0xe0], rbx
mov byte [rsp + 0xbc], bl
movabs rax, 0x400000000
mov qword [rsp + 0x120], rax
mov dword [rsp + 0x1a8], edi
mov dword [rsp + 0x230], ebx
mov dword [rsp + 0x234], ebx
mov dword [rsp + 0x238], edi
mov qword [rsp + 0x158], rbx
mov dword [rsp + 0x160], ebx
mov dword [rsp + 0x164], ebx
lea rcx, [rsp + 0x168]
call fcn.00402db8
nop
lea rcx, [rsp + 0x178]
call fcn.0040354c
nop
mov r13, rbx
mov qword [rsp + 0x1b0], rbx
mov qword [rsp + 0xf0], rbx
mov qword [rsp + 0x1b8], rbx
mov byte [rsp + 0x91], bl
mov byte [rsp + 0x90], bl
cmp r12, rbx
je 0x424a13
xor ebp, ebp
cmp dword [r14 + 8], ebp
jbe 0x424a01
mov rdi, rbp
lea r15d, [rbx + 1]
mov rax, qword [r14]
mov rsi, qword [rdi + rax]
mov rax, qword [r12]
lea rdx, [0x004638a0]
mov rcx, r12
call qword [rax]
mov rdx, rsi
lea rcx, [rsp + 0x198]
call fcn.00412c88
nop
mov r8, qword [r12]
mov rdx, qword [rax]
mov rcx, r12
call qword [r8]
nop
mov rcx, qword [rsp + 0x198]
call fcn.00402388
cmp dword [rsi + 0x18], ebp
je 0x4249e8
mov rax, qword [r12]
lea rdx, [0x0046389c]
mov rcx, r12
call qword [rax]
lea rdx, [rsi + 0x10]
lea rcx, [rsp + 0xa8]
call fcn.00412c88
nop
mov r8, qword [r12]
mov rdx, qword [rax]
mov rcx, r12
call qword [r8]
nop
mov rcx, qword [rsp + 0xa8]
call fcn.00402388
add ebx, r15d
add rdi, 8
cmp ebx, dword [r14 + 8]
jb 0x424963
mov r15, qword [rsp + 0x540]
xor ebx, ebx
cmp dword [r14 + 8], ebx
je 0x424a13
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
mov ebp, ebx
mov rsi, 0xffffffffffffffff
mov qword [rsp + 0x2e8], rsi
cmp dword [r14 + 8], ebx
jbe 0x42556b
mov rdi, rbx
mov rax, qword [r14]
mov rbx, qword [rdi + rax]
mov rdx, rbx
lea rcx, [rsp + 0xc8]
call fcn.004036a8
nop
mov rcx, qword [rsp + 0xc8]
call fcn.004028a8
lea rdx, str.file
mov rcx, qword [rsp + 0xc8]
call fcn.00402a08
xor ecx, ecx
cmp al, cl
je 0x424bb4
cmp dword [rbx + 0x18], ecx
je 0x425245
mov qword [rsp + 0x260], rsi
mov byte [rsp + 0x268], cl
mov rdx, qword [rbx + 0x10]
lea rcx, [rsp + 0x260]
call fcn.00409fc4
xor edx, edx
cmp al, dl
je 0x425266
lea rdx, [rsp + 0x2c0]
lea rcx, [rsp + 0x260]
call fcn.00409638
xor ecx, ecx
cmp al, cl
je 0x425297
cmp r12, rcx
je 0x424afb
mov rax, qword [r12]
lea rdx, str.file_size_
mov rcx, r12
call qword [rax]
xor r8d, r8d
mov rdx, qword [rsp + 0x2c0]
mov rcx, r12
call fcn.0041e1dc
mov r11, qword [r12]
mov rcx, r12
call qword [r11 + VariantCopy]
xor ecx, ecx
mov rbx, qword [rsp + 0x2c0]
cmp r13, rcx
je 0x424b12
cmp rbx, qword [rsp + 0xf0]
je 0x424b49
mov rcx, r13
call fcn.0045d8a0
mov rcx, rbx
call fcn.0045d880
mov r13, rax
mov qword [rsp + 0x1b0], rax
xor ecx, ecx
cmp rax, rcx
mov rax, rcx
cmovne rax, rbx
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0x1b8], rax
cmp rbx, rcx
je 0x424b57
cmp r13, rcx
je 0x4252c8
mov byte [rsp + 0x91], 1
lea r9, [rsp + 0x418]
mov r8, rbx
mov rdx, r13
lea rcx, [rsp + 0x260]
call fcn.00409808
xor edx, edx
cmp al, dl
je 0x4252f6
cmp qword [rsp + 0x418], rbx
jne 0x425327
lea rcx, [rsp + 0x260]
call fcn.0040960c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
xor ebx, ebx
jmp 0x425230
mov word [rsp + 0x100], cx
mov word [rsp + 0x102], cx
mov qword [rsp + 0x108], rcx
cmp dword [rbx + 0x18], ecx
je 0x424c34
lea rdx, [rsp + 0x140]
mov rcx, qword [rbx + 0x10]
call fcn.004046f0
mov rcx, qword [rsp + 0x140]
xor edx, edx
cmp word [rcx], dx
jne 0x424c23
cmp dword [rbx + 0x18], edx
je 0x424c23
mov ecx, 0xffffffff
cmp rax, rcx
ja 0x424c11
mov edx, eax
lea rcx, [rsp + 0x100]
call fcn.0040c16c
jmp 0x424c34
mov rdx, rax
lea rcx, [rsp + 0x100]
call fcn.0040c19c
jmp 0x424c34
lea rdx, [rbx + 0x10]
lea rcx, [rsp + 0x100]
call fcn.0040c084
lea rdx, str.time
mov rcx, qword [rsp + 0xc8]
call fcn.00402a08
xor ebx, ebx
cmp al, bl
je 0x424ccc
lea rcx, [rsp + 0xa8]
call fcn.0040354c
nop
lea r8, [rsp + 0x118]
lea rdx, [rsp + 0x100]
mov rcx, rax
call fcn.0040f9ac
mov esi, eax
mov rcx, qword [rsp + 0xa8]
call fcn.00402388
cmp esi, ebx
jne 0x425356
mov cl, 1
mov dword [rsp + 0x98], ecx
mov eax, dword [rsp + 0x118]
imul eax, eax, 0x3e8
mov dword [rsp + 0x118], eax
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
lea rsi, [rbx - 1]
jmp 0x425230
lea rdx, str.timems
mov rcx, qword [rsp + 0xc8]
call fcn.00402a08
cmp al, bl
je 0x424d51
lea rcx, [rsp + 0x130]
call fcn.0040354c
nop
lea r8, [rsp + 0x118]
lea rdx, [rsp + 0x100]
mov rcx, rax
call fcn.0040f9ac
mov esi, eax
mov rcx, qword [rsp + 0x130]
call fcn.00402388
cmp esi, ebx
jne 0x425380
mov cl, 1
mov dword [rsp + 0x98], ecx
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
mov rsi, 0xffffffffffffffff
jmp 0x425230
lea rdx, [0x00463874]
mov rcx, qword [rsp + 0xc8]
call fcn.00402a08
cmp al, bl
je 0x424df1
lea rcx, [rsp + 0x278]
call fcn.0040354c
nop
lea r8, [rsp + 0x220]
lea rdx, [rsp + 0x100]
mov rcx, rax
call fcn.0040f9ac
mov esi, eax
mov rcx, qword [rsp + 0x278]
call fcn.00402388
cmp esi, ebx
jne 0x4253aa
mov ecx, dword [rsp + 0x220]
cmp ecx, 0x40
jae 0x4253d4
mov eax, 1
shl rax, cl
mov qword [rsp + 0x120], rax
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
mov rsi, 0xffffffffffffffff
jmp 0x425230
lea rdx, [0x00463870]
mov rcx, qword [rsp + 0xc8]
call fcn.00402a08
cmp al, bl
je 0x424e16
mov byte [rsp + 0x90], 1
jmp 0x4251b7
lea rdx, [0x0046386c]
mov rcx, qword [rsp + 0xc8]
call fcn.00402a08
cmp al, bl
jne 0x4251b7
lea rdx, [0x00463868]
mov rcx, qword [rsp + 0xc8]
call fcn.00402a08
cmp al, bl
je 0x424eae
lea rcx, [rsp + 0x208]
call fcn.0040354c
nop
lea r8, [rsp + 0x1a8]
lea rdx, [rsp + 0x100]
mov rcx, rax
call fcn.0040f9ac
mov esi, eax
mov rcx, qword [rsp + 0x208]
call fcn.00402388
cmp esi, ebx
jne 0x425403
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
mov rsi, 0xffffffffffffffff
jmp 0x425230
lea rdx, [0x00463864]
mov rcx, qword [rsp + 0xc8]
call fcn.00402a08
cmp al, bl
je 0x424f67
lea rcx, [rsp + 0x250]
call fcn.0040354c
nop
lea r8, [rsp + 0x1ac]
lea rdx, [rsp + 0x100]
mov rcx, rax
call fcn.0040f9ac
mov esi, eax
mov rcx, qword [rsp + 0x250]
call fcn.00402388
cmp esi, ebx
jne 0x42542d
mov eax, dword [rsp + 0x1ac]
cmp eax, ebx
jbe 0x424f40
mov ecx, dword [rsp + 0xd8]
cmp eax, ecx
jae 0x424f40
mov r8d, 2
mov edx, ecx
lea rcx, [rsp + 0x230]
call fcn.0041da68
mov ecx, dword [rsp + 0x1ac]
mov dword [rsp + 0x230], ecx
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
mov rsi, 0xffffffffffffffff
jmp 0x425230
lea rdx, str.freq
mov rcx, qword [rsp + 0xc8]
call fcn.00402a08
cmp al, bl
je 0x42503f
mov dword [rsp + 0x190], ebx
lea rcx, [rsp + 0x2d8]
call fcn.0040354c
nop
lea r8, [rsp + 0x190]
lea rdx, [rsp + 0x100]
mov rcx, rax
call fcn.0040f9ac
mov esi, eax
mov rcx, qword [rsp + 0x2d8]
call fcn.00402388
cmp esi, ebx
jne 0x425457
mov eax, dword [rsp + 0x190]
cmp eax, ebx
je 0x425481
imul rax, rax, 0xf4240
mov qword [rsp + 0xe0], rax
cmp r12, rbx
je 0x425018
mov rax, qword [r12]
lea rdx, [0x00463854]
mov rcx, r12
call qword [rax]
mov edx, dword [rsp + 0x190]
xor r8d, r8d
mov rcx, r12
call fcn.0041e1dc
mov r11, qword [r12]
mov rcx, r12
call qword [r11 + VariantCopy]
nop
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
mov rsi, 0xffffffffffffffff
jmp 0x425230
lea rdx, [0x004614f4]
lea rcx, [rsp + 0xc8]
call fcn.004029b0
cmp al, bl
je 0x42516c
mov rdx, qword [rsp + 0xc8]
add rdx, 4
lea rcx, [rsp + 0x198]
call fcn.004035b8
nop
lea rdx, [0x00460880]
mov rcx, qword [rsp + 0x198]
call fcn.00402a08
cmp al, bl
jne 0x425136
cmp dword [rsp + 0x1a0], ebx
jne 0x4250bd
cmp word [rsp + 0x100], 8
jne 0x4250bd
lea rdx, [0x00460880]
mov rcx, qword [rsp + 0x108]
call fcn.00402a08
cmp al, bl
jne 0x425136
mov byte [rsp + 0x92], bl
mov eax, dword [rsp + 0xd8]
mov dword [rsp + 0x9c], eax
lea r9, [rsp + 0x92]
lea r8, [rsp + 0x9c]
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0x198]
call fcn.0040f9fc
mov esi, eax
cmp eax, ebx
jne 0x4254b0
mov rcx, qword [rsp + 0x198]
call fcn.00402388
nop
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
mov rsi, 0xffffffffffffffff
jmp 0x425230
mov byte [rsp + 0xbc], 1
mov rcx, qword [rsp + 0x198]
call fcn.00402388
nop
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
jmp 0x425230
lea r8, [rsp + 0x100]
lea rdx, [rsp + 0xc8]
lea rcx, [rsp + 0x158]
call fcn.00410cbc
mov esi, eax
cmp eax, ebx
jne 0x4254e8
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
mov rsi, 0xffffffffffffffff
jmp 0x425230
lea rcx, [rsp + 0x2b0]
call fcn.0040354c
nop
lea r8, [rsp + 0xe8]
lea rdx, [rsp + 0x100]
mov rcx, rax
call fcn.0040f9ac
mov esi, eax
mov rcx, qword [rsp + 0x2b0]
call fcn.00402388
cmp esi, ebx
jne 0x425512
mov eax, 0x20
cmp dword [rsp + 0xe8], eax
ja 0x42553c
mov byte [rsp + 0x93], 1
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
mov rsi, 0xffffffffffffffff
inc ebp
add rdi, 8
cmp ebp, dword [r14 + 8]
jb 0x424a31
jmp 0x42556b
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
mov esi, 0x80070057
jmp 0x426e19
call fcn.004095e0
mov esi, eax
lea rcx, [rsp + 0x260]
call fcn.0040960c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
call fcn.004095e0
mov esi, eax
lea rcx, [rsp + 0x260]
call fcn.0040960c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x260]
call fcn.0040960c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
xor ecx, ecx
call fcn.0045d8a0
nop
mov esi, 0x8007000e
jmp 0x426e19
call fcn.004095e0
mov esi, eax
lea rcx, [rsp + 0x260]
call fcn.0040960c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x260]
call fcn.0040960c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
mov esi, 0x80004005
jmp 0x426e19
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
mov esi, 0x80070057
jmp 0x426e19
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
mov esi, 0x80070057
jmp 0x426e19
mov rcx, qword [rsp + 0x198]
call fcn.00402388
nop
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x100]
call fcn.0040be6c
nop
mov rcx, qword [rsp + 0xc8]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
mov esi, 0x80070057
jmp 0x426e19
mov rdi, qword [rsp + 0x560]
cmp r12, rbx
je 0x4255d1
lea rcx, [rsp + 0xa8]
call fcn.00402db8
nop
lea rcx, [rsp + 0xa8]
call fcn.0040d5e8
mov r11, qword [r12]
mov rdx, qword [rsp + 0xa8]
mov rcx, r12
call qword [r11]
mov r11, qword [r12]
mov rcx, r12
call qword [r11 + VariantCopy]
nop
mov rcx, qword [rsp + 0xa8]
call fcn.00402388
mov r11, qword [r12]
lea rdx, str.1T_CPU_Freq__MHz_:
mov rcx, r12
call qword [r11]
jmp 0x4255da
cmp rdi, rbx
je 0x425908
mov ebp, 0x40
mov rcx, qword [rsp + 0xe0]
cmp rcx, rbx
je 0x425608
lea ebx, [rbp - 0x3f]
mov rax, rbp
imul rax, rax, 0xf4240
cmp rcx, rax
jae 0x425606
shr rbp, 1
cmp rbp, rbx
ja 0x4255ef
xor ebx, ebx
mov dword [rsp + 0xa0], ebx
cmp r12, rbx
je 0x425628
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x10]
mov esi, eax
cmp eax, ebx
jne 0x4258b5
lea rcx, [rsp + 0x140]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
cmp eax, ebx
je 0x425644
mov r14, qword [rsp + 0x140]
jmp 0x42564d
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r14d, eax
mov rbx, rbp
imul rbx, rbx, 0xf4240
mov rdx, rbx
shr rdx, 7
mov r8d, dword [0x004816c4]
mov ecx, r14d
call fcn.0041df78
cmp eax, 0xf1541213
jne 0x42568b
xor eax, eax
cmp r12, rax
je 0x42568b
mov rax, qword [r12]
lea rdx, [0x0046152a]
mov rcx, r12
call qword [rax]
lea rcx, [rsp + 0x278]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
xor edx, edx
cmp eax, edx
je 0x4256a9
mov rsi, qword [rsp + 0x278]
jmp 0x4256b1
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
sub rsi, r14
mov r15, rsi
mov ecx, 1
cmove r15, rcx
movabs rax, 0x2000000000000000
cmp r15, rax
cmova r15, rcx
lea rcx, [rsp + 0x250]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
mov r14d, 0x3e8
xor r9d, r9d
cmp eax, r9d
cmovne r14, qword [rsp + 0x250]
mov rax, r15
cmp r15, r9
lea r10d, [r9 + 1]
cmove rax, r10
cvtsi2sd xmm0, r14
cvtsi2sd xmm1, rbx
mulsd xmm0, xmm1
cvtsi2sd xmm2, rax
divsd xmm0, xmm2
call fcn.0041d8a0
mov rcx, rax
mov qword [rsp + 0x208], rax
mov rax, r14
imul rax, rbp
xor edx, edx
div r15
mov rbx, rax
cmp r12, r9
je 0x425784
cmp rsi, r9
jne 0x425764
mov r8, qword [r12]
lea rdx, [0x0046383c]
mov rcx, r12
call qword [r8]
mov rcx, qword [rsp + 0x208]
xor r9d, r9d
lea r10d, [r9 + 1]
jmp 0x425784
mov r8d, 5
mov rdx, rax
mov rcx, r12
call fcn.0041e1dc
mov rcx, qword [rsp + 0x208]
xor r9d, r9d
lea r10d, [r9 + 1]
cmp rdi, r9
je 0x4257ab
mov rax, qword [rdi]
mov r9d, 0x10000
mov r8, rcx
mov edx, r10d
mov rcx, rdi
call qword [rax]
mov esi, eax
xor r9d, r9d
cmp eax, r9d
jne 0x4258c3
mov r8d, dword [rsp + 0xa0]
mov r10d, 1
cmp r8d, r10d
jl 0x4258a3
cmp rbp, 0x800
setae cl
shl r14, 4
cmp r15, r14
jb 0x425812
mov rax, qword [r12]
lea rdx, str.__Cmplx_
mov rcx, r12
call qword [rax]
mov esi, dword [rsp + 0x98]
movzx esi, sil
xor r9d, r9d
cmp rdi, r9
lea r10d, [r9 + 1]
cmove esi, r10d
mov dword [rsp + 0x98], esi
mov cl, r10b
mov r8d, dword [rsp + 0xa0]
jmp 0x425819
mov esi, dword [rsp + 0x98]
cmp sil, r9b
je 0x425898
imul rbx, rbx, 0xf4240
movabs rax, 0x400000000
mov qword [rsp + 0x120], rax
mov eax, 0x3d0900
cmp rbx, rax
cmovb rbx, rax
movabs rax, 0x4a817c800
cmp rbx, rax
jae 0x425898
mov eax, dword [rsp + 0x118]
cmp eax, r9d
je 0x425889
mov r9, rax
imul r9, rbx
movabs rax, 0x624dd2f1a9fbe77
mul r9
sub r9, rdx
shr r9, 1
add r9, rdx
shr r9, 9
mov qword [rsp + 0x120], r9
jmp 0x425898
mov rax, rbx
shr rax, 2
mov qword [rsp + 0x120], rax
xor ebx, ebx
cmp cl, bl
jne 0x4258d1
add rbp, rbp
jmp 0x4258a5
xor ebx, ebx
add r8d, r10d
mov dword [rsp + 0xa0], r8d
jmp 0x42560f
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
cmp rdi, rbx
je 0x4258f6
mov rax, qword [rdi]
mov edx, r10d
mov rcx, rdi
call qword [rax + VariantCopy]
mov esi, eax
cmp eax, ebx
je 0x425900
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
mov r15, qword [rsp + 0x540]
jmp 0x425908
mov r15, qword [rsp + 0x540]
mov ebx, dword [rsp + 0x9c]
cmp ebx, 2
jb 0x425b29
xor r14d, r14d
cmp r12, r14
jne 0x42592b
cmp rdi, r14
je 0x425bc3
jmp 0x42593c
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
mov ebx, dword [rsp + 0x9c]
mov eax, dword [rsp + 0xd8]
shr eax, 1
cmp ebx, eax
cmovae ebx, eax
mov esi, 1
cmp ebx, esi
cmovb ebx, esi
cmp r12, r14
je 0x42598b
mov ecx, ebx
lea rdx, [rsp + 0x460]
call fcn.00401b9c
mov r11, qword [r12]
lea rdx, [rsp + 0x460]
mov rcx, r12
call qword [r11]
mov r11, qword [r12]
lea rdx, str.T_CPU_Freq__MHz_:
mov rcx, r12
call qword [r11]
mov ebp, 0x400
mov rcx, qword [rsp + 0xe0]
cmp rcx, r14
je 0x4259b4
mov rax, rbp
imul rax, rax, 0xf4240
cmp rcx, rax
jae 0x4259b4
shr rbp, 1
cmp rbp, rsi
ja 0x42599d
cmp r12, r14
je 0x4259d3
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x10]
mov esi, eax
cmp eax, r14d
jne 0x425ad1
mov esi, 1
mov rax, rbp
imul rax, rax, 0xf4240
mov qword [rsp + 0x1c0], rax
mov dword [rsp + 0x1c8], ebx
mov byte [rsp + 0x1cc], sil
mov qword [rsp + 0x1d0], rsi
lea r8, [rsp + 0x230]
xor edx, edx
lea rcx, [rsp + 0x1c0]
call fcn.00422138
mov esi, eax
cmp eax, r14d
jne 0x425adf
mov r14, qword [rsp + 0x1e0]
xor eax, eax
cmp rdi, rax
je 0x425a4e
mov rax, qword [rdi]
mov r9, r14
mov r8, qword [rsp + 0x1d8]
mov edx, ebx
mov rcx, rdi
call qword [rax]
mov esi, eax
xor eax, eax
cmp esi, eax
jne 0x425aed
cmp r12, rax
je 0x425ab3
imul r14, r14, 0x64
lea rdx, [r14 + 0x8000]
shr rdx, 0x10
mov r8d, 3
mov rcx, r12
call fcn.0041e1dc
mov r11, qword [r12]
lea rdx, [0x00463814]
mov rcx, r12
call qword [r11]
movabs rax, 0x431bde82d7b634db
mul qword [rsp + 0x1d8]
shr rdx, 0x12
xor r8d, r8d
mov rcx, r12
call fcn.0041e1dc
mov r11, qword [r12]
lea rdx, [0x00463810]
mov rcx, r12
call qword [r11]
cmp rbp, 0x800
setae al
xor r14d, r14d
cmp al, r14b
jne 0x425afb
add rbp, rbp
lea esi, [r14 + 1]
jmp 0x4259b4
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
cmp rdi, r14
je 0x425b20
mov rax, qword [rdi]
mov edx, ebx
mov rcx, rdi
call qword [rax + VariantCopy]
mov esi, eax
cmp eax, r14d
je 0x425b20
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
mov ebx, dword [rsp + 0x9c]
jmp 0x425b2c
xor r14d, r14d
cmp r12, r14
je 0x425bc3
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
mov r11, qword [r12]
mov rcx, r12
call qword [r11 + VariantCopy]
mov eax, dword [rsp + 0xd8]
mov dword [rsp + 0x28], eax
lea rax, str.CPU_hardware_threads:
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x228]
mov r8b, byte [rsp + 0xbd]
lea rdx, str.size:
mov rcx, r12
call fcn.0041e588
lea rdx, [rsp + 0x2c8]
lea rcx, [rsp + 0xa8]
call fcn.0041e424
nop
mov r8, qword [r12]
mov rdx, qword [rax]
mov rcx, r12
call qword [r8]
nop
mov rcx, qword [rsp + 0xa8]
call fcn.00402388
mov r11, qword [r12]
mov rcx, r12
call qword [r11 + VariantCopy]
mov ebx, dword [rsp + 0x9c]
lea eax, [rbx - 1]
cmp eax, 0xfff
ja 0x427d33
mov ecx, dword [rsp + 0xe8]
mov edi, 1
mov rbp, rdi
shl rbp, cl
mov qword [rsp + 0x128], rbp
cmp byte [rsp + 0x90], r14b
jne 0x425c58
mov rbp, r14
mov qword [rsp + 0x128], r14
mov edx, edi
lea rcx, [rsp + 0x158]
call fcn.004100d8
cmp eax, r14d
jl 0x425c4b
mov ecx, eax
mov rax, qword [rsp + 0x158]
mov rdx, qword [rax + rcx*8]
cmp word [rdx + 8], 0x13
jne 0x425c36
mov ebp, dword [rdx + 0x10]
mov qword [rsp + 0x128], rbp
jmp 0x425c58
cmp word [rdx + 8], 0x15
jne 0x425c4b
mov rbp, qword [rdx + 0x10]
mov qword [rsp + 0x128], rbp
jmp 0x425c58
mov bl, r14b
mov byte [rsp + 0x92], r14b
jmp 0x425c63
mov bl, dil
mov byte [rsp + 0x92], dil
lea rcx, [rsp + 0x158]
call fcn.00410108
mov esi, eax
mov dword [rsp + 0xa0], eax
lea rdx, [rsp + 0x168]
lea rcx, [rsp + 0x148]
call fcn.00402e34
nop
cmp dword [rsp + 0x170], r14d
jne 0x425cad
lea rdx, str.LZMA
lea rcx, [rsp + 0x168]
call fcn.00402e68
cmp r15, r14
je 0x425db7
mov dword [rsp + 0x200], r14d
mov dword [rsp + 0x1f4], 0x4b0
mov dword [rsp + 0x1fc], 4
mov dword [rsp + 0x1f8], 0xbe
mov byte [rsp + 0x1f0], dil
lea rcx, [rsp + 0x158]
call fcn.0041014c
cmp byte [rsp + 0x91], r14b
je 0x425d08
mov rcx, qword [rsp + 0xf0]
jmp 0x425d35
lea rcx, [rax + 0x10000]
cmp rcx, rax
jae 0x425d35
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
mov esi, 0x80070057
jmp 0x426e19
lea rax, [rsp + 0x1f0]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x48], r12
mov eax, 0x20
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x158]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x230]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0x9c]
mov r8b, dil
mov rdx, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x530]
call fcn.00422f00
mov esi, eax
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rdx, [0x004637e0]
mov rcx, qword [rsp + 0x168]
call fcn.00402a2c
cmp al, r14b
je 0x425de4
lea rdx, str.crc32
lea rcx, [rsp + 0x168]
call fcn.00402e68
lea r8, [rsp + 0x410]
lea rdx, [rsp + 0x168]
mov rdi, qword [rsp + 0x530]
mov rcx, rdi
call fcn.0040dc5c
mov r14b, al
mov byte [rsp + 0x90], al
mov r15, 0xffffffffffffffff
mov eax, r15d
xor ecx, ecx
mov byte [rsp + 0x94], cl
cmp r14b, cl
jne 0x425e6b
lea rax, [rsp + 0x94]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x188]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x410]
mov r8b, 1
lea rdx, [rsp + 0x148]
mov rcx, rdi
call fcn.0040db4c
xor edi, edi
cmp byte [rsp + 0x94], dil
cmove eax, r15d
jmp 0x425e6d
xor edi, edi
lea rcx, [0x00463510]
mov qword [rsp + 0x300], rcx
mov r8d, 1
mov byte [rsp + 0x308], r8b
mov byte [rsp + 0x309], dil
mov byte [rsp + 0x30a], dil
mov dword [rsp + 0x30c], edi
mov dword [rsp + 0x310], r8d
mov dword [rsp + 0x314], r8d
mov qword [rsp + 0x318], rdi
mov byte [rsp + 0x330], dil
mov dword [rsp + 0x340], edi
mov edx, r8d
lea rcx, [rsp + 0x3c8]
mov qword [rcx], rdi
add rcx, 0x38
sub edx, r8d
jns 0x425ed3
mov qword [rsp + 0x348], rdi
mov qword [rsp + 0x350], rdi
mov qword [rsp + 0x358], rdi
mov qword [rsp + 0x360], rdi
mov qword [rsp + 0x368], rdi
mov qword [rsp + 0x370], rdi
mov qword [rsp + 0x378], rdi
mov qword [rsp + 0x380], rdi
mov qword [rsp + 0x388], rdi
mov qword [rsp + 0x390], rdi
mov qword [rsp + 0x328], r12
cmp r14b, dil
jne 0x426e58
cmp eax, r15d
jne 0x426e58
mov byte [rsp + 0x90], dil
lea rdx, str.hash
mov rcx, qword [rsp + 0x168]
call fcn.00402a2c
mov ecx, 0x2a
xor edx, edx
cmp al, dl
je 0x425fa4
mov dil, 1
mov byte [rsp + 0x90], dil
lea rdx, [0x00460880]
lea rcx, [rsp + 0x168]
call fcn.00402e68
mov r8d, 1
mov r15b, r8b
mov dword [rsp + 0x98], r15d
xor edx, edx
jmp 0x425fcb
mov dl, cl
mov rcx, qword [rsp + 0x168]
call fcn.00402840
xor edx, edx
movzx r15d, dl
cmp eax, edx
lea r8d, [rdx + 1]
cmovge r15d, r8d
mov dword [rsp + 0x98], r15d
mov eax, edx
mov dword [rsp + 0xf8], edx
mov r9d, 0x12
mov r14d, dword [rsp + 0x9c]
mov dword [rsp + 0xb8], r14d
cmp byte [rsp + 0xbc], dl
jne 0x425ffd
cmp eax, edx
jne 0x426e2d
jmp 0x426065
mov r14d, r8d
mov dword [rsp + 0xb8], r8d
cmp eax, edx
je 0x426046
mov ecx, dword [rsp + 0xd8]
cmp ecx, 2
jb 0x426e2d
mov r14d, ecx
mov dword [rsp + 0xb8], ecx
cmp eax, r8d
jne 0x42603d
cmp ecx, 4
jb 0x42604a
shr r14d, 1
mov dword [rsp + 0xb8], r14d
jmp 0x42604a
cmp ecx, 4
jb 0x426e2d
cmp eax, edx
jbe 0x426065
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
mov r11, qword [r12]
mov rcx, r12
call qword [r11 + VariantCopy]
xor edx, edx
lea r9d, [rdx + 0x12]
cmp bl, dl
jne 0x42612d
cmp dil, dl
jne 0x426132
mov al, r15b
neg al
sbb edi, edi
add edi, 0x19
mov ebx, edi
cmp byte [rsp + 0xbd], dl
je 0x4260d3
cmp edi, r9d
jbe 0x4260d3
mov r13d, 1
mov r12d, 0xffffffff
mov ecx, ebx
mov r8, r13
shl r8, cl
mov r9b, r15b
mov edx, esi
mov ecx, r14d
call fcn.0041dcac
add rax, 0x800000
cmp rax, qword [rsp + 0x228]
jbe 0x4260c9
add ebx, r12d
cmp ebx, 0x12
ja 0x42609c
mov r12, qword [rsp + 0x538]
xor edx, edx
mov esi, ebx
mov ecx, ebx
mov ebp, 1
shl rbp, cl
mov qword [rsp + 0x128], rbp
cmp r15b, dl
je 0x426152
cmp ebx, edi
je 0x426149
mov rax, qword [r12]
lea rdx, str.Dictionary_reduced_to:
mov rcx, r12
call qword [rax]
mov r8d, 1
mov rdx, rsi
mov rcx, r12
call fcn.0041e1dc
mov r11, qword [r12]
mov rcx, r12
call qword [r11 + VariantCopy]
mov dil, byte [rsp + 0x90]
mov esi, dword [rsp + 0xa0]
xor edx, edx
cmp dil, dl
je 0x426159
lea r9, [rbp + 0x8000]
mov eax, r14d
imul r9, rax
add r9, 0x200000
jmp 0x42616c
mov esi, dword [rsp + 0xa0]
jmp 0x426159
mov esi, dword [rsp + 0xa0]
mov r9b, r15b
mov r8, rbp
mov edx, esi
mov ecx, r14d
call fcn.0041dcac
mov r9, rax
mov dword [rsp + 0x28], r14d
lea rax, str.Benchmark_threads:
mov qword [rsp + 0x20], rax
mov ebx, 1
mov r8b, bl
lea rdx, str.usage:
mov rcx, r12
call fcn.0041e588
mov r11, qword [r12]
mov rcx, r12
call qword [r11 + VariantCopy]
mov r11, qword [r12]
mov rcx, r12
call qword [r11 + VariantCopy]
xor eax, eax
cmp r15b, al
je 0x4261c9
lea r8d, [rbx + 0xb]
mov dword [rsp + 0x30c], r8d
mov dil, al
mov byte [rsp + 0x93], al
jmp 0x4261e1
mov r8d, 4
mov dword [rsp + 0x30c], r8d
mov dil, bl
mov byte [rsp + 0x93], bl
mov byte [rsp + 0x309], dil
movzx esi, al
cmp r15b, al
cmovne esi, ebx
mov dword [rsp + 0xc0], esi
mov ebx, 0x1e
cmp sil, al
lea ecx, [rbx + 0xc]
cmovne ebx, ecx
mov dword [rsp + 0x188], ebx
cmp dil, al
je 0x426252
mov dl, 0x20
mov rcx, r12
call fcn.0041e250
mov r8d, ebx
lea rdx, str.Compressing
mov rcx, r12
call fcn.0041e6c4
mov r11, qword [r12]
lea rdx, [0x004631f0]
mov rcx, r12
call qword [r11]
mov r8d, ebx
lea rdx, str.Decompressing
mov rcx, r12
call fcn.0041e6c4
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
lea rax, str.Method
lea rdx, str.Dict
xor r14d, r14d
cmp r15b, r14b
cmovne rdx, rax
mov r8d, dword [rsp + 0x30c]
mov rcx, r12
call fcn.0041e680
mov ebx, r14d
lea ebp, [r14 + 1]
lea r15d, [r14 + 0xa]
mov r8d, r15d
lea rdx, str.Speed
mov rcx, r12
call fcn.0041e6c4
mov r8d, 6
lea rdx, str.Usage
mov rcx, r12
call fcn.0041e6c4
mov r8d, 7
lea rdx, [0x00463770]
mov rcx, r12
call fcn.0041e6c4
mov r8d, 7
lea rdx, str.Rating
mov rcx, r12
call fcn.0041e6c4
cmp sil, r14b
je 0x42630f
mov r8d, 6
lea rdx, [0x00463764]
mov rcx, r12
call fcn.0041e6c4
mov r8d, 6
lea rdx, str.Effec
mov rcx, r12
call fcn.0041e6c4
cmp dil, r14b
je 0x426334
cmp ebx, r14d
jne 0x426329
mov rax, qword [r12]
lea rdx, [0x004631f0]
mov rcx, r12
call qword [rax]
add ebx, ebp
cmp ebx, 2
jl 0x42628f
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
mov r8d, dword [rsp + 0x30c]
mov dl, 0x20
mov rcx, r12
call fcn.0041e250
xor r13d, r13d
mov ebx, r13d
mov rbp, qword [rsp + 0x128]
lea r14d, [r13 + 1]
mov r8d, r15d
lea rdx, str.KiB_s
mov rcx, r12
call fcn.0041e6c4
mov r8d, 6
lea rdx, [0x00463814]
mov rcx, r12
call fcn.0041e6c4
mov r8d, 7
lea rdx, str.MIPS
mov rcx, r12
call fcn.0041e6c4
mov r8d, 7
lea rdx, str.MIPS
mov rcx, r12
call fcn.0041e6c4
cmp sil, r13b
je 0x4263e2
mov r8d, 6
lea rdx, [0x00463814]
mov rcx, r12
call fcn.0041e6c4
mov r8d, 6
lea rdx, [0x00463814]
mov rcx, r12
call fcn.0041e6c4
cmp dil, r13b
je 0x426408
cmp ebx, r13d
jne 0x4263fc
mov rax, qword [r12]
lea rdx, [0x004631f0]
mov rcx, r12
call qword [rax]
add ebx, r14d
cmp ebx, 2
jl 0x426362
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
mov r11, qword [r12]
mov rcx, r12
call qword [r11 + VariantCopy]
xor ecx, ecx
mov r15, rcx
mov rax, qword [rsp + 0xe0]
cmp rax, rcx
cmovne r15, rax
mov ebx, dword [rsp + 0x98]
cmp bl, cl
mov r13, qword [rsp + 0x1b0]
mov r14d, dword [rsp + 0xb8]
je 0x426758
mov edi, ecx
cmp dword [rsp + 0x550], ecx
jbe 0x426b85
jmp 0x426463
xor ecx, ecx
cmp edi, ecx
je 0x426473
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
xor ecx, ecx
mov ebx, ecx
mov rsi, qword [rsp + 0xe0]
mov r8d, 0xc
lea rdx, [0x00463750]
mov rcx, r12
call fcn.0041e680
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x1c0], rax
mov dword [rsp + 0x1c8], r14d
cmp ebx, 2
je 0x4264c1
xor r15d, r15d
cmp rsi, r15
jne 0x4264c4
mov byte [rsp + 0x1cc], r15b
jmp 0x4264d0
xor r15d, r15d
mov eax, 1
mov byte [rsp + 0x1cc], al
mov qword [rsp + 0x1d0], rsi
lea r8, [rsp + 0x230]
mov rdx, r12
lea rcx, [rsp + 0x1c0]
call fcn.00422138
mov esi, eax
cmp eax, r15d
jne 0x426d55
mov r15, qword [rsp + 0x1d8]
mov rcx, qword [rsp + 0x328]
mov rax, qword [rcx]
call qword [rax + VariantCopy]
mov rsi, qword [rsp + 0xe0]
xor eax, eax
cmp rsi, rax
cmovne r15, rsi
inc ebx
cmp ebx, 3
jb 0x42647d
mov rcx, qword [rsp + 0x328]
mov rax, qword [rcx]
call qword [rax + VariantCopy]
mov r10d, 1
mov byte [rsp + 0x30a], r10b
mov qword [rsp + 0x318], r15
xor r9d, r9d
cmp byte [rsp + 0x90], r9b
jne 0x42660b
mov rax, rbp
mov r8b, byte [rsp + 0x91]
cmp r8b, r9b
je 0x426592
mov rdx, qword [rsp + 0xf0]
mov rax, rdx
mov cl, byte [rsp + 0x92]
cmp cl, r9b
je 0x42659e
cmp rdx, rbp
cmova rax, rbp
jmp 0x426599
mov cl, byte [rsp + 0x92]
cmp cl, r9b
jne 0x4265a8
cmp r8b, r9b
jne 0x4265a8
mov cl, r9b
jmp 0x4265ab
mov cl, r10b
lea rdx, [rsp + 0x300]
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], cl
lea rax, [rsp + 0x230]
mov qword [rsp + 0x20], rax
mov r9d, r14d
mov rbx, qword [rsp + 0x120]
mov r8, rbx
lea rdx, [rsp + 0x158]
mov rcx, qword [rsp + 0x530]
call fcn.00424348
mov esi, eax
xor r9d, r9d
cmp eax, r9d
jne 0x426d71
jmp 0x426615
mov rbx, qword [rsp + 0x120]
jmp 0x42661b
mov r10d, 1
mov eax, 0x20000
mov cl, byte [rsp + 0x92]
cmp cl, r9b
cmovne rax, rbp
cmp byte [rsp + 0x91], r9b
je 0x42664f
mov rdx, qword [rsp + 0xf0]
mov rax, rdx
cmp cl, r9b
je 0x42664f
cmp rdx, rbp
cmova rax, rbp
mov qword [rsp + 0x58], r15
mov byte [rsp + 0x50], r10b
lea rcx, [rsp + 0x348]
mov qword [rsp + 0x48], rcx
lea rcx, [rsp + 0x230]
mov qword [rsp + 0x40], rcx
lea rcx, [rsp + 0x300]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rax
mov r9d, r14d
mov r8, rbx
lea rdx, [rsp + 0x158]
mov rcx, qword [rsp + 0x530]
call fcn.0042281c
mov esi, eax
xor eax, eax
cmp esi, eax
jne 0x426d8d
mov rcx, qword [rsp + 0x328]
mov rax, qword [rcx]
call qword [rax + VariantCopy]
mov r8d, 0xc
lea rdx, [0x00463750]
mov rcx, r12
call fcn.0041e680
mov qword [rsp + 0x1c0], rbx
mov dword [rsp + 0x1c8], r14d
mov rax, qword [rsp + 0xe0]
xor ebx, ebx
cmp rax, rbx
setne byte [rsp + 0x1cc]
mov qword [rsp + 0x1d0], rax
lea r8, [rsp + 0x230]
mov rdx, r12
lea rcx, [rsp + 0x1c0]
call fcn.00422138
mov esi, eax
cmp eax, ebx
jne 0x426da6
mov rcx, qword [rsp + 0x328]
mov rax, qword [rcx]
call qword [rax + VariantCopy]
inc edi
cmp edi, dword [rsp + 0x550]
jb 0x426461
mov ebx, dword [rsp + 0x98]
mov esi, dword [rsp + 0xc0]
jmp 0x426b85
lea rdx, str.LZMA
mov rcx, qword [rsp + 0x168]
call fcn.00402a2c
xor r14d, r14d
cmp al, r14b
jne 0x4268b9
mov esi, r14d
lea rdi, [0x00462e70]
mov rdx, qword [rdi + 0x18]
lea rcx, [rsp + 0xa8]
call fcn.00402df0
nop
lea rcx, [rsp + 0x130]
call fcn.00402db8
nop
mov dl, 0x3a
mov rcx, qword [rsp + 0xa8]
call fcn.00402840
mov ebx, eax
cmp eax, r14d
jl 0x4267ec
lea edx, [rbx + 1]
add rdx, qword [rsp + 0xa8]
lea rcx, [rsp + 0x130]
call fcn.00402e68
cmp ebx, dword [rsp + 0xb0]
jae 0x4267ec
mov dword [rsp + 0xb0], ebx
mov rax, qword [rsp + 0xa8]
mov byte [rbx + rax], r14b
mov rdx, qword [rsp + 0x168]
mov rcx, qword [rsp + 0xa8]
call fcn.00402a2c
cmp al, r14b
je 0x42684d
cmp dword [rsp + 0x138], r14d
je 0x426879
lea rdx, [0x0046374c]
mov rcx, qword [rsp + 0x130]
call sub.msvcrt.dll_strcmp
cmp eax, r14d
jne 0x426833
cmp dword [rsp + 0x180], r14d
je 0x426879
mov rdx, qword [rsp + 0x130]
lea rcx, [rsp + 0x178]
call fcn.004029b0
cmp al, r14b
jne 0x426879
mov rcx, qword [rsp + 0x130]
call fcn.00402388
nop
mov rcx, qword [rsp + 0xa8]
call fcn.00402388
inc esi
add rdi, 0x20
cmp esi, 0x15
jb 0x426782
jmp 0x4268b9
mov eax, dword [rdi + 8]
mov dword [rsp + 0x334], eax
mov eax, dword [rdi + 0xc]
mov dword [rsp + 0x338], eax
mov eax, dword [rdi + 0x10]
mov dword [rsp + 0x33c], eax
mov rcx, qword [rsp + 0x130]
call fcn.00402388
nop
mov rcx, qword [rsp + 0xa8]
call fcn.00402388
mov esi, 1
jmp 0x4268e7
mov dword [rsp + 0x334], 0x4b0
mov dword [rsp + 0x33c], 4
mov dword [rsp + 0x338], 0xbe
mov esi, 1
mov byte [rsp + 0x330], sil
mov edx, dword [rsp + 0xe8]
mov r8d, 0x12
cmp edx, r8d
cmovb edx, r8d
mov dword [rsp + 0xe8], edx
xor edi, edi
cmp dword [rsp + 0x550], edi
jbe 0x426b77
mov ecx, edx
mov rax, rsi
shl rax, cl
mov ebx, edx
cmp rbp, rax
cmovb ebx, r8d
cmp byte [rsp + 0x558], dil
mov eax, 0x20
cmove ebx, eax
mov ecx, ebx
mov rax, rsi
shl rax, cl
cmp rax, rbp
jbe 0x426961
mov r13d, 0xffffffff
cmp ebx, edi
jbe 0x426959
add ebx, r13d
mov ecx, ebx
mov rax, rsi
shl rax, cl
cmp rax, rbp
ja 0x426945
mov r13, qword [rsp + 0x1b0]
mov ecx, ebx
mov rdi, rsi
shl rdi, cl
cmp rdi, rbp
ja 0x426b54
mov edx, ebx
mov rcx, r12
call fcn.0041e7b0
mov qword [rsp + 0x320], rdi
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0x420]
call fcn.00420fe0
nop
lea rdx, [rsp + 0x168]
lea rcx, [rsp + 0x430]
call fcn.00402e34
nop
lea rdx, [rsp + 0x178]
lea rcx, [rsp + 0x440]
call fcn.004036a8
nop
lea rdx, str.LZMA
mov rcx, qword [rsp + 0x430]
call fcn.00402a2c
xor edi, edi
cmp al, dil
je 0x426a4e
mov word [rsp + 0x1f0], 0x13
mov word [rsp + 0x1f2], di
mov dword [rsp + 0x1f8], ebx
lea rdx, [0x00461528]
lea rcx, [rsp + 0x2e8]
call fcn.00403600
nop
lea r8, [rsp + 0x1f0]
mov rdx, rax
lea rcx, [rsp + 0x420]
call fcn.00410cbc
mov esi, eax
mov rcx, qword [rsp + 0x2e8]
call fcn.00402388
cmp esi, edi
jne 0x426dbf
lea rcx, [rsp + 0x1f0]
call fcn.0040be6c
lea esi, [rdi + 1]
cmp byte [rsp + 0x91], dil
je 0x426a62
mov rax, qword [rsp + 0xf0]
jmp 0x426a78
mov rax, qword [rsp + 0x320]
cmp rax, 0x40000
jb 0x426a78
add rax, 0x10000
lea rcx, [rsp + 0x330]
mov qword [rsp + 0x58], rcx
lea rcx, [rsp + 0x300]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], r12
mov dword [rsp + 0x40], 0x20
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x420]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x230]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0xb8]
mov r8b, sil
mov rdx, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x530]
call fcn.00422f00
mov esi, eax
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
cmp esi, edi
jne 0x426df4
cmp byte [rsp + 0x558], dil
je 0x426b35
lea rcx, [rsp + 0x420]
call fcn.00422534
mov esi, 1
add ebx, esi
mov ecx, ebx
mov rdi, rsi
shl rdi, cl
cmp rdi, rbp
jbe 0x426972
mov edx, dword [rsp + 0xe8]
xor edi, edi
lea r8d, [rsi + 0x11]
jmp 0x426b56
lea rcx, [rsp + 0x420]
call fcn.00422534
mov edx, dword [rsp + 0xe8]
mov esi, 1
lea r8d, [rsi + 0x11]
jmp 0x426b56
xor edi, edi
add r14d, esi
cmp r14d, dword [rsp + 0x550]
jb 0x426911
mov ebx, dword [rsp + 0x98]
mov esi, dword [rsp + 0xc0]
jmp 0x426b85
mov ebx, dword [rsp + 0x98]
mov esi, dword [rsp + 0xc0]
mov eax, dword [rsp + 0x30c]
mov r14d, dword [rsp + 0x188]
lea r8d, [r14 + rax]
mov dl, 0x2d
mov rcx, r12
call fcn.0041e250
mov dil, byte [rsp + 0x93]
xor eax, eax
cmp dil, al
je 0x426bce
mov rax, qword [r12]
lea rdx, [0x004631f0]
mov rcx, r12
call qword [rax]
mov r8d, r14d
mov dl, 0x2d
mov rcx, r12
call fcn.0041e250
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
xor r14d, r14d
cmp dil, r14b
je 0x426c55
mov r8d, dword [rsp + 0x30c]
lea rdx, str.Avr:
mov rcx, r12
call fcn.0041e680
cmp bl, r14b
sete bl
lea rax, [rsp + 0x348]
mov qword [rsp + 0x20], rax
mov r9b, bl
mov r8, r15
mov dl, sil
mov rcx, r12
call fcn.0041e384
mov r11, qword [r12]
lea rdx, [0x004631f0]
mov rcx, r12
call qword [r11]
lea r11, [rsp + 0x370]
mov qword [rsp + 0x20], r11
mov r9b, bl
mov r8, r15
mov dl, sil
mov rcx, r12
call fcn.0041e384
mov r11, qword [r12]
mov rcx, r12
call qword [r11 + VariantCopy]
mov r8d, dword [rsp + 0x30c]
lea rdx, str.Tot:
mov rcx, r12
call fcn.0041e680
lea rcx, [rsp + 0x288]
lea rdx, [rsp + 0x348]
mov r8d, 0x28
call sub.msvcrt.dll_memcpy
mov r11, qword [rsp + 0x378]
mov rcx, qword [rsp + 0x350]
add rcx, r11
mov qword [rsp + 0x290], rcx
mov rax, qword [rsp + 0x380]
add qword [rsp + 0x298], rax
mov rax, qword [rsp + 0x388]
add qword [rsp + 0x2a0], rax
mov rax, qword [rsp + 0x390]
add qword [rsp + 0x2a8], rax
mov rax, qword [rsp + 0x370]
add qword [rsp + 0x288], rax
lea rax, [rsp + 0x288]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, r15
mov dl, sil
mov rcx, r12
call fcn.0041e384
mov r11, qword [r12]
mov rcx, r12
call qword [r11 + VariantCopy]
mov eax, dword [rsp + 0xf8]
mov r8d, 1
add eax, r8d
mov dword [rsp + 0xf8], eax
cmp eax, 3
mov r15d, dword [rsp + 0x98]
mov bl, byte [rsp + 0x92]
mov dil, byte [rsp + 0x90]
mov esi, dword [rsp + 0xa0]
mov rdx, r14
lea r9d, [r8 + 0x11]
jb 0x425fda
jmp 0x426e2d
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x1f0]
call fcn.0040be6c
nop
lea rcx, [rsp + 0x420]
call fcn.00422534
nop
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x420]
call fcn.00422534
nop
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
lea rcx, [rsp + 0x158]
call fcn.00422534
mov eax, esi
jmp 0x427d4e
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
lea rcx, [rsp + 0x158]
call fcn.00422534
xor eax, eax
jmp 0x427d4e
cmp r12, rdi
jne 0x426e7b
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
mov esi, 1
jmp 0x426e19
mov eax, 0x8000000
cmp bl, dil
cmove rbp, rax
mov qword [rsp + 0x128], rbp
cmp byte [rsp + 0x91], dil
je 0x426ecc
cmp bl, dil
jne 0x426eb3
mov r15, qword [rsp + 0xf0]
mov rbp, r15
mov qword [rsp + 0x128], r15
jmp 0x426ed4
mov r15, qword [rsp + 0xf0]
cmp rbp, r15
cmova rbp, r15
mov qword [rsp + 0x128], rbp
jmp 0x426ed4
mov r15, qword [rsp + 0xf0]
mov edx, r8d
lea rcx, [rsp + 0x158]
call fcn.004100d8
mov ebx, eax
cmp eax, edi
jl 0x426f76
mov ebp, 0xffffffff
mov r15d, 1
mov esi, ebx
mov r9, qword [rsp + 0x158]
mov rdi, qword [r9 + rsi*8]
xor r13d, r13d
cmp rdi, r13
je 0x426f28
lea rcx, [rdi + 8]
call fcn.0040be6c
mov rcx, rdi
call fcn.00402388
mov r9, qword [rsp + 0x158]
lea ecx, [rbx + 1]
mov r8d, dword [rsp + 0x160]
sub r8d, ecx
shl r8, 3
lea rdx, [r9 + rcx*8]
lea rcx, [r9 + rsi*8]
call sub.msvcrt.dll_memmove
add dword [rsp + 0x160], ebp
mov edx, r15d
lea rcx, [rsp + 0x158]
call fcn.004100d8
mov ebx, eax
xor edi, edi
cmp eax, edi
jge 0x426ef9
mov rbp, qword [rsp + 0x128]
mov r15, qword [rsp + 0xf0]
mov dword [rsp + 0x98], 0x1000
mov qword [rsp + 0x278], rdi
cmp r14b, dil
je 0x4270ab
mov esi, edi
lea rdi, [0x00463114]
mov rdx, qword [rdi + 0xc]
lea rcx, [rsp + 0xa8]
call fcn.00402df0
nop
lea rcx, [rsp + 0x130]
call fcn.00402db8
nop
mov dl, 0x3a
mov rcx, qword [rsp + 0xa8]
call fcn.00402840
mov ebx, eax
xor eax, eax
cmp ebx, eax
jl 0x427007
lea edx, [rbx + 1]
add rdx, qword [rsp + 0xa8]
lea rcx, [rsp + 0x130]
call fcn.00402e68
cmp ebx, dword [rsp + 0xb0]
jae 0x427007
mov dword [rsp + 0xb0], ebx
mov rax, qword [rsp + 0xa8]
xor edx, edx
mov byte [rbx + rax], dl
mov rdx, qword [rsp + 0x168]
mov rcx, qword [rsp + 0xa8]
call fcn.00402a2c
xor ecx, ecx
cmp al, cl
je 0x427052
mov rdx, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x178]
call fcn.00402a70
mov ecx, dword [rdi]
mov dword [rsp + 0x98], ecx
lea rcx, [rdi + 4]
mov qword [rsp + 0x278], rcx
xor ecx, ecx
cmp al, cl
jne 0x427086
mov rcx, qword [rsp + 0x130]
call fcn.00402388
nop
mov rcx, qword [rsp + 0xa8]
call fcn.00402388
mov ebx, 1
add esi, ebx
add rdi, 0x18
cmp esi, 9
jb 0x426f9b
jmp 0x4271ab
mov rcx, qword [rsp + 0x130]
call fcn.00402388
nop
mov rcx, qword [rsp + 0xa8]
call fcn.00402388
mov ebx, 1
jmp 0x4271ab
lea rsi, str.LZMA:x1
mov rdx, qword [rsi]
lea rcx, [rsp + 0xa8]
call fcn.00402df0
nop
lea rcx, [rsp + 0x130]
call fcn.00402db8
nop
mov dl, 0x3a
mov rcx, qword [rsp + 0xa8]
call fcn.00402840
mov ebx, eax
xor eax, eax
cmp ebx, eax
jl 0x42711d
lea edx, [rbx + 1]
add rdx, qword [rsp + 0xa8]
lea rcx, [rsp + 0x130]
call fcn.00402e68
cmp ebx, dword [rsp + 0xb0]
jae 0x42711d
mov dword [rsp + 0xb0], ebx
mov rax, qword [rsp + 0xa8]
xor edx, edx
mov byte [rbx + rax], dl
mov rdx, qword [rsp + 0x168]
mov rcx, qword [rsp + 0xa8]
call fcn.00402a2c
xor ecx, ecx
cmp al, cl
je 0x42715a
mov rdx, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x178]
call fcn.00402a70
mov dword [rsp + 0x2e8], edi
xor ecx, ecx
cmp al, cl
jne 0x42718b
mov rcx, qword [rsp + 0x130]
call fcn.00402388
nop
mov rcx, qword [rsp + 0xa8]
call fcn.00402388
mov ebx, 1
add edi, ebx
add rsi, 0x20
cmp edi, 0x15
jb 0x4270b2
jmp 0x4271ab
mov rcx, qword [rsp + 0x130]
call fcn.00402388
nop
mov rcx, qword [rsp + 0xa8]
call fcn.00402388
mov ebx, 1
mov r9d, 0x100000
mov rdx, rbp
mov al, r14b
neg al
sbb ecx, ecx
and ecx, 0xfffffffe
add ecx, 3
mov r8d, dword [rsp + 0x9c]
xor esi, esi
cmp byte [rsp + 0x91], sil
je 0x4271f0
lea r9, [r15 + 0x100000]
cmp rbp, r15
cmova rdx, r15
cmp r14b, sil
je 0x4271f0
mov ecx, esi
cmp r8d, ebx
cmovne ecx, ebx
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, bl
lea rdx, str.usage:
mov rcx, r12
call fcn.0041e588
mov r15, rsi
mov qword [rsp + 0xa8], rsi
mov r14d, esi
mov dword [rsp + 0xb0], esi
mov dword [rsp + 0xb4], esi
mov edi, dword [rsp + 0x1a8]
cmp edi, dword [rsp + 0x9c]
ja 0x42731a
jmp 0x427255
mov ebx, 1
lea rcx, [rsp + 0xa8]
call fcn.00428ad8
mov r14d, dword [rsp + 0xb0]
mov rax, r14
add r14d, ebx
mov dword [rsp + 0xb0], r14d
mov r15, qword [rsp + 0xa8]
mov dword [r15 + rax*4], edi
lea ebp, [rdi + rdi]
mov ebx, dword [rsp + 0x9c]
mov esi, ebx
shr esi, 1
cmp esi, edi
jbe 0x4272d0
cmp esi, ebp
jae 0x4272d0
lea rcx, [rsp + 0xa8]
call fcn.00428ad8
mov r14d, dword [rsp + 0xb0]
mov rax, r14
inc r14d
mov dword [rsp + 0xb0], r14d
mov r15, qword [rsp + 0xa8]
mov dword [r15 + rax*4], esi
mov ebx, dword [rsp + 0x9c]
cmp ebx, edi
jbe 0x42730e
cmp ebx, ebp
jae 0x42730e
lea rcx, [rsp + 0xa8]
call fcn.00428ad8
mov r14d, dword [rsp + 0xb0]
mov rax, r14
inc r14d
mov dword [rsp + 0xb0], r14d
mov r15, qword [rsp + 0xa8]
mov dword [r15 + rax*4], ebx
mov ebx, dword [rsp + 0x9c]
mov edi, ebp
cmp ebp, ebx
jbe 0x427250
xor esi, esi
mov al, byte [rsp + 0x90]
neg al
sbb eax, eax
add eax, 2
mov dword [rsp + 0xb8], eax
mov qword [rsp + 0x2b0], rsi
mov qword [rsp + 0x218], rsi
mov esi, r14d
imul esi, eax
mov ebp, esi
mov ebx, esi
shl rbx, 3
mov rcx, rbx
call fcn.00402350
mov rdi, rax
mov qword [rsp + 0x2b0], rax
mov rcx, rbx
call fcn.00402350
mov rbx, rax
mov qword [rsp + 0x218], rax
xor edx, edx
cmp esi, edx
jbe 0x42738f
mov rcx, rdi
sub rcx, rax
mov qword [rcx + rax], rdx
mov qword [rax], rdx
add rax, 8
dec rbp
jne 0x42737f
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
xor ebx, ebx
mov esi, ebx
mov dword [rsp + 0xf8], ebx
lea rdi, str.Usage
mov r13d, dword [rsp + 0xb8]
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
mov r11, qword [r12]
lea rax, [0x00463734]
lea rdx, str.Size
cmp esi, 1
cmove rdx, rax
lea rax, str.THRD
cmp esi, ebx
cmove rdx, rax
mov rcx, r12
call qword [r11]
mov ebp, ebx
cmp r14d, ebx
jbe 0x4274e5
mov rax, r15
mov qword [rsp + 0xe0], r15
cmp ebp, ebx
je 0x42741b
mov rax, qword [r12]
lea rdx, [0x00463460]
mov rcx, r12
call qword [rax]
mov rax, qword [rsp + 0xe0]
cmp esi, ebx
jne 0x427454
lea r8d, [r13 - 1]
imul r8d, r8d, 0xf
mov dl, 0x20
mov rcx, r12
call fcn.0041e250
mov r11, qword [rsp + 0xe0]
mov edx, dword [r11]
mov r8d, 0xe
mov rcx, r12
call fcn.0041e1dc
mov rax, qword [rsp + 0xe0]
jmp 0x4274c6
cmp r13d, ebx
jbe 0x4274c6
lea r15, [0x00463814]
mov edx, 1
cmp esi, edx
cmove r15, rdi
lea rcx, [0x00463720]
lea rax, str.MB_s
cmp esi, edx
cmove rax, rcx
mov ebx, r13d
mov r13, rax
mov rsi, rdx
mov r8d, 6
mov rdx, r15
mov rcx, r12
call fcn.0041e6c4
mov r8d, 9
mov rdx, r13
mov rcx, r12
call fcn.0041e6c4
sub rbx, rsi
jne 0x427488
mov esi, dword [rsp + 0xf8]
mov r13d, dword [rsp + 0xb8]
mov rax, qword [rsp + 0xe0]
inc ebp
add rax, 4
mov qword [rsp + 0xe0], rax
cmp ebp, r14d
jb 0x4273ff
mov r15, qword [rsp + 0xa8]
inc esi
mov dword [rsp + 0xf8], esi
cmp esi, 3
jb 0x4273b3
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
xor ebp, ebp
mov rdx, rbp
mov qword [rsp + 0x208], rbp
lea ecx, [rbp + 0xa]
cmp byte [rsp + 0x93], bpl
cmovne ecx, dword [rsp + 0xe8]
mov dword [rsp + 0xa0], ecx
mov rbx, qword [rsp + 0x218]
mov rdi, qword [rsp + 0x2b0]
mov r13, qword [rsp + 0x1b0]
mov r8, qword [rsp + 0xf0]
mov r9b, byte [rsp + 0x91]
lea r10d, [rbp + 1]
mov rax, r10
shl rax, cl
mov qword [rsp + 0x188], r8
cmp r8, rax
ja 0x42756c
cmp r9b, bpl
jne 0x427574
mov qword [rsp + 0x188], rax
mov esi, ebp
mov dword [rsp + 0xd8], ebp
cmp dword [rsp + 0x550], ebp
jbe 0x427ae7
mov edx, ecx
mov rcx, r12
call fcn.0041e7b0
mov dword [rsp + 0xc0], ebp
xor eax, eax
cmp r14d, eax
jbe 0x427a92
mov qword [rsp + 0x250], rdi
mov qword [rsp + 0xe0], r15
mov qword [rsp + 0x2d8], rbx
mov rax, rdi
sub rax, rbx
mov qword [rsp + 0x130], rax
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x10]
mov esi, eax
xor eax, eax
cmp esi, eax
jne 0x427b0c
xor esi, esi
cmp byte [rsp + 0x90], sil
je 0x427715
mov qword [rsp + 0xf8], rsi
mov qword [rsp + 0x140], rsi
cmp dword [rsp + 0xa0], 0x11
jne 0x42761e
cmp byte [rsp + 0x91], sil
jne 0x42761e
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x80], rsi
mov byte [rsp + 0x78], sil
mov qword [rsp + 0x70], rsi
mov byte [rsp + 0x68], sil
lea rcx, [rsp + 0x230]
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x58], r12
lea rcx, [rsp + 0x158]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rax
mov eax, 1
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x38], eax
lea rax, [rsp + 0x140]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0xf8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9, qword [rsp + 0x188]
mov rax, qword [rsp + 0xe0]
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x530]
call fcn.00421288
mov esi, eax
xor eax, eax
cmp esi, eax
jne 0x427b43
cmp ebp, eax
je 0x4276d4
mov rax, qword [r12]
lea rdx, [0x00463460]
mov rcx, r12
call qword [rax]
mov rbp, qword [rsp + 0xf8]
mov r8, rbp
mov rsi, qword [rsp + 0x140]
mov rdx, rsi
mov rcx, r12
call fcn.0041e80c
mov rax, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x130]
add qword [rcx + rax], rbp
add qword [rax], rsi
mov ebp, dword [rsp + 0xc0]
jmp 0x427a5b
lea rdx, str.AES128
mov rcx, qword [rsp + 0x168]
call fcn.004028c8
cmp al, sil
je 0x427735
mov ecx, 0x10
jmp 0x427757
lea rdx, str.AES192
mov rcx, qword [rsp + 0x168]
call fcn.004028c8
mov ecx, 0x20
cmp al, sil
lea eax, [rcx - 8]
cmovne ecx, eax
mov dword [rsp + 0x340], ecx
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0x1c0]
call fcn.00420fe0
nop
lea rdx, [rsp + 0x168]
lea rcx, [rsp + 0x1d0]
call fcn.00402e34
nop
lea rdx, [rsp + 0x178]
lea rcx, [rsp + 0x1e0]
call fcn.004036a8
nop
mov rax, qword [rsp + 0x2e8]
cdqe
cmp rax, rsi
jl 0x4277ec
mov rcx, rax
shl rcx, 5
lea rax, [0x00462e70]
add rcx, rax
mov eax, dword [rcx + 8]
mov dword [rsp + 0x334], eax
mov eax, dword [rcx + 0x10]
mov dword [rsp + 0x33c], eax
mov eax, dword [rcx + 0xc]
mov dword [rsp + 0x338], eax
mov esi, dword [rcx + 4]
mov dword [rsp + 0xf8], esi
xor esi, esi
jmp 0x427836
mov dword [rsp + 0xf8], 0x20
cmp byte [rsp + 0x94], sil
je 0x427819
mov dword [rsp + 0x334], 4
mov dword [rsp + 0x33c], 4
jmp 0x42782f
mov dword [rsp + 0x334], 0x400
mov dword [rsp + 0x33c], 0x40
mov dword [rsp + 0x338], esi
mov byte [rsp + 0x308], sil
lea rdx, str.LZMA
mov rcx, qword [rsp + 0x1d0]
call fcn.00402a2c
cmp al, sil
je 0x4278ca
mov word [rsp + 0x288], 0x13
mov word [rsp + 0x28a], si
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x290], eax
lea rdx, [0x00461528]
lea rcx, [rsp + 0x1f0]
call fcn.00403600
nop
lea r8, [rsp + 0x288]
mov rdx, rax
lea rcx, [rsp + 0x1c0]
call fcn.00410cbc
mov esi, eax
mov rcx, qword [rsp + 0x1f0]
call fcn.00402388
xor eax, eax
cmp esi, eax
jne 0x427b7a
lea rcx, [rsp + 0x288]
call fcn.0040be6c
lea rax, [rsp + 0x330]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x300]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], r12
mov eax, dword [rsp + 0xf8]
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x38], r13
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x1c0]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x230]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0xe0]
mov r9d, dword [rax]
xor r8d, r8d
mov rdx, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x530]
call fcn.00422f00
mov esi, eax
xor eax, eax
cmp esi, eax
jne 0x427bcd
cmp ebp, eax
je 0x427963
mov rax, qword [r12]
lea rdx, [0x00463460]
mov rcx, r12
call qword [rax]
mov r13, qword [rsp + 0x250]
lea r15, [rsp + 0x3b0]
mov rsi, rbx
sub rsi, rdi
mov ebx, 2
xor edi, edi
lea ebp, [rbx - 1]
mov rcx, qword [r15]
mov r8, qword [r15 - 0x18]
cmp rcx, rdi
cmove rcx, rbp
mov rax, r8
cmp r8, rdi
cmove rax, rbp
cvtsi2sd xmm0, qword [r15 - 0x10]
cvtsi2sd xmm1, rax
divsd xmm0, xmm1
cvtsi2sd xmm3, qword [r15 - 8]
cvtsi2sd xmm2, rcx
divsd xmm3, xmm2
mulsd xmm0, xmm3
mulsd xmm0, qword [0x00463378]
call fcn.0041d8a0
mov rdx, rax
cmp r8, rdi
cmove r8, rbp
mov rcx, qword [r15 + 0x18]
imul rcx, qword [r15 + 8]
cvtsi2sd xmm0, rcx
cvtsi2sd xmm1, qword [r15 - 0x10]
mulsd xmm0, xmm1
cvtsi2sd xmm2, r8
divsd xmm0, xmm2
call fcn.0041d8a0
add qword [r13 + rsi], rdx
add qword [r13], rax
mov r8, rax
mov rcx, r12
call fcn.0041e80c
add r13, 8
add r15, 0x38
sub rbx, rbp
jne 0x427983
lea rcx, [rsp + 0x1c0]
call fcn.00422534
mov rbx, qword [rsp + 0x218]
mov rdi, qword [rsp + 0x2b0]
mov r13, qword [rsp + 0x1b0]
mov r15, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x2d8]
mov ebp, dword [rsp + 0xc0]
inc ebp
mov dword [rsp + 0xc0], ebp
add rax, 8
mov qword [rsp + 0x2d8], rax
add qword [rsp + 0xe0], 4
add qword [rsp + 0x250], 0x10
cmp ebp, r14d
jb 0x4275cc
mov esi, dword [rsp + 0xd8]
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
mov rdx, qword [rsp + 0x208]
mov r10d, 1
add rdx, r10
mov qword [rsp + 0x208], rdx
add esi, r10d
mov dword [rsp + 0xd8], esi
cmp esi, dword [rsp + 0x550]
mov ecx, dword [rsp + 0xa0]
lea ebp, [r10 - 1]
jb 0x42758a
mov r8, qword [rsp + 0xf0]
mov r9b, byte [rsp + 0x91]
mov rax, qword [rsp + 0x188]
cmp rax, qword [rsp + 0x128]
jae 0x427c12
add ecx, r10d
mov dword [rsp + 0xa0], ecx
jmp 0x427554
mov rcx, rbx
call fcn.00402388
nop
mov rcx, rdi
call fcn.00402388
nop
mov rcx, r15
call fcn.00402388
nop
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
mov rcx, rbx
call fcn.00402388
nop
mov rcx, rdi
call fcn.00402388
nop
mov rcx, r15
call fcn.00402388
nop
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x288]
call fcn.0040be6c
nop
lea rcx, [rsp + 0x1c0]
call fcn.00422534
nop
mov rcx, rbx
call fcn.00402388
nop
mov rcx, rdi
call fcn.00402388
nop
mov rcx, r15
call fcn.00402388
nop
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
lea rcx, [rsp + 0x1c0]
call fcn.00422534
nop
mov rcx, rbx
call fcn.00402388
nop
mov rcx, rdi
call fcn.00402388
nop
mov rcx, r15
call fcn.00402388
nop
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
jmp 0x426e19
cmp rdx, rbp
je 0x427cfa
mov rax, qword [r12]
lea rdx, str.Avg:
mov rcx, r12
call qword [rax]
mov esi, ebp
mov dword [rsp + 0xf8], ebp
cmp r14d, ebp
jbe 0x427cef
mov dword [rsp + 0xc0], ebp
mov eax, dword [rsp + 0xb8]
xor r13d, r13d
cmp esi, r13d
je 0x427c6a
mov rax, qword [r12]
lea rdx, [0x00463460]
mov rcx, r12
call qword [rax]
mov eax, dword [rsp + 0xb8]
cmp eax, r13d
jbe 0x427cc2
mov r15d, ebp
mov r13d, eax
mov rsi, qword [rsp + 0x208]
mov ebp, 1
mov ecx, r15d
xor edx, edx
mov rax, qword [rdi + rcx*8]
div rsi
mov r8, rax
xor edx, edx
mov rax, qword [rbx + rcx*8]
div rsi
mov rdx, rax
mov rcx, r12
call fcn.0041e80c
add r15d, ebp
sub r13, rbp
jne 0x427c82
mov esi, dword [rsp + 0xf8]
mov ebp, dword [rsp + 0xc0]
mov eax, dword [rsp + 0xb8]
inc esi
mov dword [rsp + 0xf8], esi
add ebp, eax
mov dword [rsp + 0xc0], ebp
cmp esi, r14d
jb 0x427c4e
mov r13, qword [rsp + 0x1b0]
mov r15, qword [rsp + 0xa8]
xor ebp, ebp
mov rax, qword [r12]
mov rcx, r12
call qword [rax + VariantCopy]
nop
mov rcx, rbx
call fcn.00402388
nop
mov rcx, rdi
call fcn.00402388
nop
mov rcx, r15
call fcn.00402388
nop
mov rcx, qword [rsp + 0x148]
call fcn.00402388
nop
mov rcx, r13
call fcn.0045d8a0
nop
mov esi, ebp
jmp 0x426e19
mov rcx, r13
call fcn.0045d8a0
nop
lea rcx, [rsp + 0x158]
call fcn.00422534
mov eax, 0x80070057
add rsp, 0x4e8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret