Function at 0x42df48
Capabilities:
Check for time delay via gettickcount

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x408
mov qword [rsp + 0x2b8], 0xfffffffffffffffe
mov r12, r8
mov r14, rdx
mov rsi, rcx
call fcn.0042989c
xor edi, edi
cmp al, dil
jne 0x42df90
mov eax, 0x80004005
jmp 0x4301d3
movabs rax, 0x100000000
mov qword [rsp + 0x170], rax
mov eax, 1
mov qword [rsp + 0x240], rax
mov qword [rsp + 0x248], rax
lea rcx, [rsp + 0x240]
call fcn.0040bfe8
cmp eax, edi
je 0x42dfe6
mov rcx, qword [rsp + 0x240]
cmp rcx, rdi
je 0x42dfe6
call fcn.0040bfc8
mov r15d, eax
mov dword [rsp + 0x88], eax
jmp 0x42dff5
call fcn.0040c010
mov r15d, eax
mov dword [rsp + 0x88], eax
lea rcx, [rsp + 0x170]
call fcn.0040c064
mov byte [rsp + 0x6a], al
mov dword [rsp + 0x80], r15d
mov dword [rsp + 0xf0], 4
mov rbx, rdi
mov qword [rsp + 0xc0], rdi
mov byte [rsp + 0x69], dil
mov qword [rsp + 0x130], rdi
mov dword [rsp + 0x138], edi
mov dword [rsp + 0x13c], edi
lea rcx, [rsp + 0x140]
call fcn.00402f74
nop
lea rcx, [rsp + 0x150]
call fcn.0040365c
nop
mov rbp, rdi
mov qword [rsp + 0x110], rdi
mov qword [rsp + 0x118], rdi
mov r13d, edi
cmp dword [r12 + 8], edi
jbe 0x42e7b1
mov rax, qword [r12]
mov rbx, qword [rdi + rax]
mov rdx, rbx
lea rcx, [rsp + 0xb0]
call fcn.00403768
nop
mov rcx, qword [rsp + 0xb0]
call fcn.00402980
lea rdx, str.file
mov rcx, qword [rsp + 0xb0]
call fcn.00402a90
xor ecx, ecx
cmp al, cl
je 0x42e21c
cmp dword [rbx + 0x18], ecx
je 0x42e568
mov qword [rsp + 0x220], 0xffffffffffffffff
mov rdx, qword [rbx + 0x10]
lea rcx, [rsp + 0x220]
call fcn.00409ba0
test al, al
je 0x42e591
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0x220]
call fcn.004093c8
xor ecx, ecx
cmp al, cl
je 0x42e5c8
mov eax, 0x80000000
mov rbx, qword [rsp + 0x128]
cmp rbx, rax
jae 0x42e66d
cmp rbx, rcx
je 0x42e66d
cmp rbp, rcx
je 0x42e13b
cmp rbx, qword [rsp + 0x118]
je 0x42e191
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
xor eax, eax
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x110], rax
mov rdx, rbx
lea rcx, [0x004deda8]
call qword [0x004deda8]
mov rbp, rax
mov qword [rsp + 0x110], rax
test rax, rax
je 0x42e5ff
mov qword [rsp + 0x118], rbx
mov rbx, qword [rsp + 0x128]
lea r9, [rsp + 0x178]
mov r8d, ebx
mov rdx, rbp
lea rcx, [rsp + 0x220]
call fcn.00409508
mov r11d, dword [rsp + 0x178]
cmp r11, qword [rsp + 0x128]
jne 0x42e636
test rsi, rsi
je 0x42e1f4
mov rax, qword [rsi]
lea rdx, str.file_size_
mov rcx, rsi
call qword [rax]
xor r8d, r8d
mov rdx, qword [rsp + 0x128]
mov rcx, rsi
call fcn.00428818
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
nop
lea rcx, [rsp + 0x220]
call fcn.0040939c
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
mov rbx, qword [rsp + 0xc0]
jmp 0x42e54f
mov word [rsp + 0xf8], cx
mov word [rsp + 0xfa], cx
mov qword [rsp + 0x100], rcx
cmp dword [rbx + 0x18], ecx
je 0x42e29c
lea rdx, [rsp + 0x90]
mov rcx, qword [rbx + 0x10]
call fcn.004044fc
mov rcx, qword [rsp + 0x90]
xor edx, edx
cmp word [rcx], dx
jne 0x42e28b
cmp dword [rbx + 0x18], edx
je 0x42e28b
mov ecx, 0xffffffff
cmp rax, rcx
ja 0x42e279
mov edx, eax
lea rcx, [rsp + 0xf8]
call fcn.0040baf8
jmp 0x42e29c
mov rdx, rax
lea rcx, [rsp + 0xf8]
call fcn.0040bb24
jmp 0x42e29c
lea rdx, [rbx + 0x10]
lea rcx, [rsp + 0xf8]
call fcn.0040b9e4
lea rdx, str.time
mov rcx, qword [rsp + 0xb0]
call fcn.00402a90
xor ebx, ebx
cmp al, bl
je 0x42e31b
lea rcx, [rsp + 0xa0]
call fcn.0040365c
nop
lea r8, [rsp + 0xf0]
lea rdx, [rsp + 0xf8]
mov rcx, rax
call fcn.0040fa44
mov ebx, eax
mov rcx, qword [rsp + 0xa0]
call sub.msvcrt.dll_free
test ebx, ebx
jne 0x42e6a4
lea rcx, [rsp + 0xf8]
call fcn.0040b810
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
mov rbx, qword [rsp + 0xc0]
jmp 0x42e54f
lea rdx, str.freq
mov rcx, qword [rsp + 0xb0]
call fcn.00402a90
cmp al, bl
je 0x42e3ef
mov dword [rsp + 0xec], ebx
lea rcx, [rsp + 0x160]
call fcn.0040365c
nop
lea r8, [rsp + 0xec]
lea rdx, [rsp + 0xf8]
mov rcx, rax
call fcn.0040fa44
mov ebx, eax
mov rcx, qword [rsp + 0x160]
call sub.msvcrt.dll_free
xor ecx, ecx
cmp ebx, ecx
jne 0x42e6d6
mov eax, dword [rsp + 0xec]
cmp eax, ecx
je 0x42e708
mov rbx, rax
imul rbx, rbx, 0xf4240
mov qword [rsp + 0xc0], rbx
cmp rsi, rcx
je 0x42e3cf
mov rax, qword [rsi]
lea rdx, [0x004d4bd8]
mov rcx, rsi
call qword [rax]
mov edx, dword [rsp + 0xec]
xor r8d, r8d
mov rcx, rsi
call fcn.00428818
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
nop
lea rcx, [rsp + 0xf8]
call fcn.0040b810
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
jmp 0x42e54f
lea rdx, [0x004d16d4]
lea rcx, [rsp + 0xb0]
call fcn.00402a50
cmp al, bl
je 0x42e505
mov rdx, qword [rsp + 0xb0]
add rdx, 4
lea rcx, [rsp + 0x188]
call fcn.004036c8
nop
lea rdx, [0x004d0ae0]
mov rcx, qword [rsp + 0x188]
call fcn.00402a90
cmp al, bl
jne 0x42e4cd
cmp dword [rsp + 0x190], ebx
jne 0x42e46d
cmp word [rsp + 0xf8], 8
jne 0x42e46d
lea rdx, [0x004d0ae0]
mov rcx, qword [rsp + 0x100]
call fcn.00402a90
cmp al, bl
jne 0x42e4cd
lea r9, [rsp + 0x80]
mov r8d, r15d
lea rdx, [rsp + 0xf8]
lea rcx, [rsp + 0x188]
call fcn.0040fa94
mov ebx, eax
test eax, eax
jne 0x42e73f
mov rcx, qword [rsp + 0x188]
call sub.msvcrt.dll_free
nop
lea rcx, [rsp + 0xf8]
call fcn.0040b810
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
mov rbx, qword [rsp + 0xc0]
jmp 0x42e54f
mov byte [rsp + 0x69], 1
mov rcx, qword [rsp + 0x188]
call sub.msvcrt.dll_free
nop
lea rcx, [rsp + 0xf8]
call fcn.0040b810
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
mov rbx, qword [rsp + 0xc0]
jmp 0x42e54f
lea r8, [rsp + 0xf8]
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x130]
call fcn.004109f0
mov ebx, eax
test eax, eax
jne 0x42e77f
lea rcx, [rsp + 0xf8]
call fcn.0040b810
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
mov rbx, qword [rsp + 0xc0]
inc r13d
add rdi, 8
cmp r13d, dword [r12 + 8]
jb 0x42e07c
xor edi, edi
jmp 0x42e7b1
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, 0x80070057
jmp 0x43016f
lea rcx, [rsp + 0x220]
call fcn.0040939c
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, 0x80070057
jmp 0x43016f
lea rcx, [rsp + 0x220]
call fcn.0040939c
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, 0x80004005
jmp 0x43016f
lea rcx, [rsp + 0x220]
call fcn.0040939c
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, 0x8007000e
jmp 0x43016f
lea rcx, [rsp + 0x220]
call fcn.0040939c
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, 0x80004005
jmp 0x43016f
lea rcx, [rsp + 0x220]
call fcn.0040939c
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, 0x80070057
jmp 0x43016f
lea rcx, [rsp + 0xf8]
call fcn.0040b810
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
jmp 0x43016f
lea rcx, [rsp + 0xf8]
call fcn.0040b810
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
jmp 0x43016f
lea rcx, [rsp + 0xf8]
call fcn.0040b810
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, 0x80070057
jmp 0x43016f
mov rcx, qword [rsp + 0x188]
call sub.msvcrt.dll_free
nop
lea rcx, [rsp + 0xf8]
call fcn.0040b810
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
jmp 0x43016f
lea rcx, [rsp + 0xf8]
call fcn.0040b810
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
jmp 0x43016f
cmp rsi, rdi
je 0x42ea39
lea rcx, [rsp + 0x90]
call fcn.00402f74
nop
mov dword [rsp + 0x2e0], 0x11c
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
cmp rax, rdi
je 0x42e8b1
lea rdx, str.RtlGetVersion
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp rax, rdi
je 0x42e8b1
lea rcx, [rsp + 0x2e0]
call rax
lea rdx, str.Windows
lea rcx, [rsp + 0x90]
call fcn.00403164
mov edx, dword [rsp + 0x2f0]
cmp edx, 2
je 0x42e839
lea rcx, [rsp + 0x90]
call fcn.004031f0
lea rdx, [0x004d47c4]
lea rcx, [rsp + 0x90]
call fcn.00403164
mov edx, dword [rsp + 0x2e4]
lea rcx, [rsp + 0x90]
call fcn.004031f0
lea rdx, [0x004d47c0]
lea rcx, [rsp + 0x90]
call fcn.00403164
mov edx, dword [rsp + 0x2e8]
lea rcx, [rsp + 0x90]
call fcn.004031f0
lea rdx, [0x004d47c4]
lea rcx, [rsp + 0x90]
call fcn.00403164
mov edx, dword [rsp + 0x2ec]
lea rcx, [rsp + 0x90]
call fcn.004031f0
mov rax, qword [rsi]
mov rdx, qword [rsp + 0x90]
mov rcx, rsi
call qword [rax]
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
nop
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
lea rcx, [rsp + 0x90]
call fcn.00402f74
nop
lea rcx, [rsp + 0x70]
call fcn.00402f74
nop
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x90]
call fcn.0042946c
cmp dword [rsp + 0x98], edi
jne 0x42e913
cmp dword [rsp + 0x78], edi
je 0x42e979
mov rax, qword [rsi]
mov rdx, qword [rsp + 0x90]
mov rcx, rsi
call qword [rax]
mov r11d, dword [rsp + 0x78]
cmp dword [rsp + 0x98], r11d
jne 0x42e94d
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_strcmp
cmp eax, edi
je 0x42e96f
mov r11d, dword [rsp + 0x78]
cmp r11d, edi
je 0x42e96f
mov rax, qword [rsi]
lea rdx, [0x004d4bcc]
mov rcx, rsi
call qword [rax]
mov r11, qword [rsi]
mov rdx, qword [rsp + 0x70]
mov rcx, rsi
call qword [r11]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
nop
mov rcx, qword [rsp + 0x70]
call sub.msvcrt.dll_free
nop
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
lea rcx, [rsp + 0xa0]
call fcn.00402f74
nop
lea rcx, [rsp + 0xa0]
call fcn.00429540
cmp dword [rsp + 0xa8], edi
je 0x42e9d0
mov rax, qword [rsi]
mov rdx, qword [rsp + 0xa0]
mov rcx, rsi
call qword [rax]
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
nop
mov rcx, qword [rsp + 0xa0]
call sub.msvcrt.dll_free
lea rcx, [rsp + 0xa0]
call fcn.00402f74
nop
lea rcx, [rsp + 0xa0]
call fcn.004294a8
cmp dword [rsp + 0xa8], edi
je 0x42ea1c
mov rax, qword [rsi]
mov rdx, qword [rsp + 0xa0]
mov rcx, rsi
call qword [rax]
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
nop
mov rcx, qword [rsp + 0xa0]
call sub.msvcrt.dll_free
mov r11, qword [rsi]
lea rdx, str.CPU_Freq:
mov rcx, rsi
call qword [r11]
movabs rax, 0x400000000
mov r15, rax
mov qword [rsp + 0x120], rax
cmp rsi, rdi
je 0x42ec48
mov edi, 0x40
xor r15d, r15d
cmp rbx, r15
je 0x42ea86
lea ebp, [rdi - 0x3f]
mov rax, rdi
imul rax, rax, 0xf4240
cmp rbx, rax
jae 0x42ea7e
shr rdi, 1
cmp rdi, rbp
ja 0x42ea67
mov rbp, qword [rsp + 0x110]
mov r12d, r15d
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x10]
mov ebx, eax
cmp eax, r15d
jne 0x42ebae
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ebx, eax
mov rdx, rdi
imul rdx, rdx, 0xf4240
shr rdx, 7
mov r8d, dword [0x00509664]
mov ecx, eax
call fcn.004285a0
cmp eax, 0xf1541213
jne 0x42ead7
mov rax, qword [rsi]
lea rdx, [0x004d170a]
mov rcx, rsi
call qword [rax]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r11d, eax
sub r11, rbx
mov r13, r11
mov eax, 1
cmove r13, rax
mov rax, rdi
imul rax, rax, 0x3e8
xor edx, edx
div r13
mov rbx, rax
cmp r11, r15
jne 0x42eb18
mov r8, qword [rsi]
lea rdx, [0x004d4bb8]
mov rcx, rsi
call qword [r8]
jmp 0x42eb29
mov r8d, 5
mov rdx, rax
mov rcx, rsi
call fcn.00428818
cmp r12d, 3
jl 0x42eba6
imul rbx, rbx, 0xf4240
movabs rax, 0x400000000
mov r15, rax
mov qword [rsp + 0x120], rax
mov eax, 0x3d0900
cmp rbx, rax
cmovb rbx, rax
movabs rax, 0x4a817c800
cmp rbx, rax
jae 0x42eb91
mov eax, dword [rsp + 0xf0]
test eax, eax
je 0x42eb82
mov r15, rax
imul r15, rbx
mov qword [rsp + 0x120], r15
jmp 0x42eb91
mov r15, rbx
shr r15, 2
mov qword [rsp + 0x120], r15
cmp r12d, 8
jge 0x42ebc4
cmp r13, 0x3e8
jae 0x42ebc4
add rdi, rdi
xor r15d, r15d
inc r12d
jmp 0x42ea89
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
jmp 0x43016f
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
mov r11d, dword [rsp + 0x88]
mov dword [rsp + 0x28], r11d
lea rax, str.CPU_hardware_threads:
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x170]
mov r8b, byte [rsp + 0x6a]
lea rdx, str.size:
mov rcx, rsi
call fcn.00428d3c
lea rdx, [rsp + 0x240]
lea rcx, [rsp + 0xa0]
call fcn.00428b30
nop
mov r8, qword [rsi]
mov rdx, qword [rax]
mov rcx, rsi
call qword [r8]
nop
mov rcx, qword [rsp + 0xa0]
call sub.msvcrt.dll_free
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
xor edi, edi
mov eax, dword [rsp + 0x80]
dec eax
cmp eax, 0xfff
ja 0x4301b0
mov dword [rsp + 0x64], edi
mov r13d, 1
mov edx, r13d
lea rcx, [rsp + 0x130]
call fcn.0040ff54
xor r12d, r12d
cmp eax, r12d
jl 0x42eca4
mov ecx, eax
mov rax, qword [rsp + 0x130]
mov rdx, qword [rax + rcx*8]
cmp word [rdx + 8], 0x13
jne 0x42eca4
mov edi, dword [rdx + 0x10]
mov dword [rsp + 0x64], edi
mov bl, r13b
mov byte [rsp + 0x61], r13b
jmp 0x42ecac
mov bl, r12b
mov byte [rsp + 0x61], r12b
cmp dword [rsp + 0x148], r12d
jne 0x42ecca
lea rdx, str.LZMA
lea rcx, [rsp + 0x140]
call fcn.00403024
cmp r14, r12
je 0x42ed6c
mov dword [rsp + 0xa4], 0x4b0
mov dword [rsp + 0xac], 4
mov dword [rsp + 0xa8], 0xbe
mov byte [rsp + 0xa0], r13b
lea rcx, [rsp + 0x130]
call fcn.00429a28
lea r8d, [rax + 0x10000]
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], 0x1e
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], r8
lea r9, [rsp + 0x130]
mov r8d, dword [rsp + 0x80]
mov dl, r13b
mov rcx, r15
call fcn.0042c9b8
mov ebx, eax
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
jmp 0x43016f
lea rdx, [rsp + 0x140]
lea rcx, [rsp + 0xd8]
call fcn.00402ff0
nop
lea rdx, [0x004d4b8c]
mov rcx, qword [rsp + 0xd8]
call fcn.00402ab4
xor r14d, r14d
cmp al, r14b
je 0x42edb2
lea rdx, str.crc32
lea rcx, [rsp + 0xd8]
call fcn.00403024
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x140]
call fcn.00403088
lea rdx, [rsp + 0x2d0]
lea rcx, [rsp + 0xd8]
call fcn.0040c344
cmp al, r14b
je 0x42f32b
cmp rsi, r14
jne 0x42ee11
mov rcx, qword [rsp + 0xd8]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, r13d
jmp 0x43016f
mov eax, 0x1000000
cmp bl, r14b
cmove edi, eax
mov dword [rsp + 0x64], edi
mov dword [rsp + 0x88], 0x2710
mov qword [rsp + 0x90], r14
mov r12d, r14d
lea rdi, [0x004d41c4]
mov rdx, qword [rdi + 0xc]
lea rcx, [rsp + 0xc0]
call fcn.00402fac
nop
lea rcx, [rsp + 0x70]
call fcn.00402f74
nop
mov dl, 0x3a
mov rcx, qword [rsp + 0xc0]
call fcn.00402930
mov ebx, eax
cmp eax, r14d
jl 0x42eea1
lea edx, [rbx + 1]
add rdx, qword [rsp + 0xc0]
lea rcx, [rsp + 0x70]
call fcn.00403024
cmp ebx, dword [rsp + 0xc8]
jae 0x42eea1
mov dword [rsp + 0xc8], ebx
mov rax, qword [rsp + 0xc0]
mov byte [rbx + rax], r14b
mov rdx, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xc0]
call fcn.00402ab4
cmp al, r14b
je 0x42ef42
cmp dword [rsp + 0x78], r14d
je 0x42ef16
lea rdx, str.crc32
mov rcx, qword [rsp + 0xc0]
call fcn.00402ab4
cmp al, r14b
je 0x42eeff
lea rdx, [0x004d4b80]
mov rcx, qword [rsp + 0x70]
call sub.msvcrt.dll_strcmp
cmp eax, r14d
jne 0x42eeff
cmp dword [rsp + 0x158], r14d
je 0x42ef16
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x150]
call fcn.00402a50
cmp al, r14b
je 0x42ef42
mov eax, dword [rdi]
mov dword [rsp + 0x88], eax
lea rax, [rdi + 4]
mov qword [rsp + 0x90], rax
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x150]
call fcn.00402af8
cmp al, r14b
jne 0x42ef6d
mov rcx, qword [rsp + 0x70]
call sub.msvcrt.dll_free
nop
mov rcx, qword [rsp + 0xc0]
call sub.msvcrt.dll_free
add r12d, r13d
add rdi, 0x18
cmp r12d, 7
jb 0x42ee3d
jmp 0x42ef85
mov rcx, qword [rsp + 0x70]
call sub.msvcrt.dll_free
nop
mov rcx, qword [rsp + 0xc0]
call sub.msvcrt.dll_free
cmp r12d, 7
jne 0x42efb4
mov rcx, qword [rsp + 0xd8]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, 0x80004001
jmp 0x43016f
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov r11, qword [rsi]
lea rdx, str.Size
mov rcx, rsi
call qword [r11]
mov r12d, r14d
mov edi, 0xffffffff
mov r8d, dword [rsp + 0x80]
cmp r12d, 2
jae 0x42efe8
lea ebx, [rdi + 2]
jmp 0x42efff
mov edx, edi
and edx, r13d
add edx, 2
mov ecx, edi
shr ecx, 1
shl edx, cl
mov ebx, r8d
cmp edx, r8d
cmovbe ebx, edx
mov edx, ebx
mov r8d, 6
mov rcx, rsi
call fcn.00428818
add r12d, r13d
add edi, r13d
mov r8d, dword [rsp + 0x80]
cmp ebx, r8d
jb 0x42efdd
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
mov r15d, r12d
mov ecx, r12d
shl rcx, 3
call fcn.00402388
mov rbx, rax
mov qword [rsp + 0x238], rax
cmp r12d, r14d
jbe 0x42f065
mov r8, r15
shl r8, 3
xor edx, edx
mov rcx, rax
call sub.msvcrt.dll_memset
xor edi, edi
mov dword [rsp + 0xd0], edi
cmp dword [rsp + 0x468], edi
jbe 0x42f2fc
lea edx, [rdi + 1]
mov r13d, 0xa
mov ecx, r13d
mov eax, edx
shl eax, cl
mov dword [rsp + 0xe8], eax
cmp eax, dword [rsp + 0x64]
ja 0x42f215
lea rdx, [rsp + 0x70]
call fcn.00401b88
mov rax, rdi
cmp byte [rsp + 0x70], dil
je 0x42f0ba
inc rax
cmp byte [rsp + rax + 0x70], dil
jne 0x42f0b0
mov byte [rsp + rax + 0x70], 0x3a
mov byte [rsp + rax + 0x71], 0x20
mov byte [rsp + rax + 0x72], dil
mov rax, qword [rsi]
lea rdx, [rsp + 0x70]
mov rcx, rsi
call qword [rax]
cmp r12d, edi
jbe 0x42f1f7
mov edi, 0xffffffff
mov qword [rsp + 0x180], rbx
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x10]
mov dword [rsp + 0x84], eax
xor r8d, r8d
cmp eax, r8d
jne 0x42f234
lea eax, [rdi + 1]
mov dword [rsp + 0x84], eax
cmp eax, 2
jae 0x42f11c
lea edx, [rdi + 2]
jmp 0x42f137
mov eax, edi
and eax, 1
add eax, 2
shr edi, 1
mov cl, dil
shl eax, cl
mov edx, dword [rsp + 0x80]
cmp eax, edx
cmovbe edx, eax
mov qword [rsp + 0xc0], r8
mov rax, r8
cmp r13d, 0x11
cmove rax, qword [rsp + 0x90]
mov qword [rsp + 0x58], r8
mov byte [rsp + 0x50], r8b
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x40], r8
lea rcx, [rsp + 0x130]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rax
mov eax, 1
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x88]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0xc0]
mov r8d, dword [rsp + 0xe8]
mov rcx, qword [rsp + 0x120]
call fcn.0042b798
mov edi, eax
test eax, eax
jne 0x42f268
mov rdi, qword [rsp + 0xc0]
mov rdx, rdi
shr rdx, 0x14
lea r8d, [rax + 6]
mov rcx, rsi
call fcn.00428818
mov rax, qword [rsp + 0x180]
add qword [rax], rdi
mov edi, dword [rsp + 0x84]
add rax, 8
mov qword [rsp + 0x180], rax
lea eax, [rdi + 1]
cmp eax, r12d
jb 0x42f0ec
xor edi, edi
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov edx, 1
add r14, rdx
add r13d, edx
cmp r13d, 0x20
jb 0x42f084
mov eax, dword [rsp + 0xd0]
add eax, edx
mov dword [rsp + 0xd0], eax
cmp eax, dword [rsp + 0x468]
jb 0x42f07e
jmp 0x42f297
mov rcx, rbx
call sub.msvcrt.dll_free
nop
mov rcx, qword [rsp + 0xd8]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, dword [rsp + 0x84]
jmp 0x43016f
mov rcx, rbx
call sub.msvcrt.dll_free
nop
mov rcx, qword [rsp + 0xd8]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, edi
jmp 0x43016f
cmp r14, rdi
je 0x42f2fc
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov r11, qword [rsi]
lea rdx, str.Avg:
mov rcx, rsi
call qword [r11]
cmp r12d, edi
jbe 0x42f2f2
mov rdi, rbx
mov ebp, 1
xor edx, edx
mov rax, qword [rdi]
div r14
shr rax, 0x14
mov r8d, 6
mov rdx, rax
mov rcx, rsi
call fcn.00428818
add rdi, 8
sub r15, rbp
jne 0x42f2c2
mov rbp, qword [rsp + 0x110]
xor edi, edi
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
nop
mov rcx, rbx
call sub.msvcrt.dll_free
nop
mov rcx, qword [rsp + 0xd8]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, edi
jmp 0x43016f
lea rdx, [0x004d0ae0]
mov rcx, qword [rsp + 0x140]
call fcn.00402ab4
mov r12b, al
mov byte [rsp + 0x60], al
mov byte [rsp + 0x68], r14b
lea rdx, str.hash
mov rcx, qword [rsp + 0x140]
call fcn.00402ab4
cmp al, r14b
je 0x42f371
mov byte [rsp + 0x68], r13b
mov r12b, r13b
mov byte [rsp + 0x60], r13b
mov eax, r14d
mov dword [rsp + 0xe8], r14d
mov edx, 1
mov r13d, dword [rsp + 0x80]
mov dword [rsp + 0xd0], r13d
cmp byte [rsp + 0x69], r14b
jne 0x42f3a3
cmp eax, r14d
jne 0x430180
jmp 0x42f3eb
mov r13d, edx
mov dword [rsp + 0xd0], edx
cmp eax, r14d
je 0x42f3eb
mov ecx, dword [rsp + 0x88]
cmp ecx, 2
jb 0x430180
mov r13d, ecx
mov dword [rsp + 0xd0], ecx
cmp eax, edx
jne 0x42f3e2
cmp ecx, 4
jb 0x42f3eb
shr r13d, 1
mov dword [rsp + 0xd0], r13d
jmp 0x42f3eb
cmp ecx, 4
jb 0x430180
lea rcx, [0x004d48b0]
mov qword [rsp + 0x1a0], rcx
mov byte [rsp + 0x1a8], r14b
mov byte [rsp + 0x204], r14b
mov dword [rsp + 0x208], r14d
mov byte [rsp + 0x20c], r14b
mov qword [rsp + 0x210], r14
mov dword [rsp + 0x218], edx
mov dword [rsp + 0x21c], edx
mov qword [rsp + 0x1b8], r14
mov qword [rsp + 0x1c0], r14
mov qword [rsp + 0x1c8], r14
mov qword [rsp + 0x1d0], r14
mov qword [rsp + 0x1d8], r14
mov qword [rsp + 0x1e0], r14
mov qword [rsp + 0x1e8], r14
mov qword [rsp + 0x1f0], r14
mov qword [rsp + 0x1f8], rsi
cmp eax, r14d
jbe 0x42f490
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
cmp bl, r14b
jne 0x42f537
mov al, r12b
neg al
sbb r11d, r11d
add r11d, 0x19
mov ebx, r11d
cmp byte [rsp + 0x6a], r14b
je 0x42f4f7
cmp r11d, 0x12
jbe 0x42f4f7
mov esi, 1
mov ebp, 0xffffffff
mov ecx, ebx
mov edx, esi
shl edx, cl
mov r8b, r12b
mov ecx, r13d
call fcn.00428430
add rax, 0x800000
cmp rax, qword [rsp + 0x170]
jbe 0x42f4e7
add ebx, ebp
cmp ebx, 0x12
ja 0x42f4bf
mov rsi, qword [rsp + 0x450]
mov rbp, qword [rsp + 0x110]
mov ecx, ebx
mov edi, 1
shl edi, cl
mov dword [rsp + 0x64], edi
cmp r12b, r14b
je 0x42f537
cmp ebx, r11d
je 0x42f537
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.00428818
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
mov r8b, r12b
mov edx, edi
mov ecx, r13d
call fcn.00428430
mov r9, rax
mov dword [rsp + 0x28], r13d
lea rax, str.Benchmark_threads:
mov qword [rsp + 0x20], rax
mov r8b, 1
lea rdx, str.usage:
mov rcx, rsi
call fcn.00428d3c
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
cmp r12b, r14b
je 0x42f59f
mov r8d, 0xc
mov dword [rsp + 0x208], r8d
mov r12b, r14b
mov byte [rsp + 0x6b], r14b
lea eax, [r8 - 0xb]
jmp 0x42f5b8
mov r8d, 4
mov dword [rsp + 0x208], r8d
lea eax, [r8 - 3]
mov r12b, al
mov byte [rsp + 0x6b], al
mov byte [rsp + 0x204], r12b
movzx r14d, r14b
xor ecx, ecx
cmp byte [rsp + 0x60], cl
cmovne r14d, eax
mov dword [rsp + 0x84], r14d
lea ebx, [rcx + 0x1e]
lea eax, [rcx + 0x2a]
cmp r14b, cl
cmovne ebx, eax
mov dword [rsp + 0x238], ebx
cmp r12b, cl
je 0x42f62c
mov dl, 0x20
mov rcx, rsi
call fcn.00428884
mov r8d, ebx
lea rdx, str.Compressing
mov rcx, rsi
call fcn.00429004
mov r11, qword [rsi]
lea rdx, [0x004d45e0]
mov rcx, rsi
call qword [r11]
mov r8d, ebx
lea rdx, str.Decompressing
mov rcx, rsi
call fcn.00429004
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
lea rax, str.Method
lea rdx, str.Dict
xor edi, edi
cmp byte [rsp + 0x60], dil
cmovne rdx, rax
mov r8d, dword [rsp + 0x208]
mov rcx, rsi
call fcn.00428fc0
mov ebx, edi
lea ebp, [rdi + 1]
mov r8d, 0xa
lea rdx, str.Speed
mov rcx, rsi
call fcn.00429004
mov r8d, 6
lea rdx, str.Usage
mov rcx, rsi
call fcn.00429004
mov r8d, 7
lea rdx, [0x004d4ae8]
mov rcx, rsi
call fcn.00429004
mov r8d, 7
lea rdx, str.Rating
mov rcx, rsi
call fcn.00429004
cmp r14b, dil
je 0x42f6e6
mov r8d, 6
lea rdx, [0x004d4adc]
mov rcx, rsi
call fcn.00429004
mov r8d, 6
lea rdx, str.Effec
mov rcx, rsi
call fcn.00429004
cmp r12b, dil
je 0x42f709
cmp ebx, edi
jne 0x42f6fe
mov rax, qword [rsi]
lea rdx, [0x004d45e0]
mov rcx, rsi
call qword [rax]
add ebx, ebp
cmp ebx, 2
jl 0x42f663
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov r8d, dword [rsp + 0x208]
mov dl, 0x20
mov rcx, rsi
call fcn.00428884
xor r13d, r13d
mov ebx, r13d
mov rbp, qword [rsp + 0x110]
lea edi, [r13 + 1]
mov r8d, 0xa
lea rdx, str.KiB_s
mov rcx, rsi
call fcn.00429004
mov r8d, 6
lea rdx, [0x004d4ac8]
mov rcx, rsi
call fcn.00429004
mov r8d, 7
lea rdx, str.MIPS
mov rcx, rsi
call fcn.00429004
mov r8d, 7
lea rdx, str.MIPS
mov rcx, rsi
call fcn.00429004
cmp r14b, r13b
je 0x42f7b9
mov r8d, 6
lea rdx, [0x004d4ac8]
mov rcx, rsi
call fcn.00429004
mov r8d, 6
lea rdx, [0x004d4ac8]
mov rcx, rsi
call fcn.00429004
cmp r12b, r13b
je 0x42f7dd
cmp ebx, r13d
jne 0x42f7d2
mov rax, qword [rsi]
lea rdx, [0x004d45e0]
mov rcx, rsi
call qword [rax]
add ebx, edi
cmp ebx, 2
jl 0x42f736
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
xor eax, eax
mov r14, rax
mov rbx, qword [rsp + 0xc0]
cmp rbx, rax
cmovne r14, rbx
mov qword [rsp + 0x90], r14
cmp byte [rsp + 0x60], al
mov r13d, dword [rsp + 0xd0]
mov edi, dword [rsp + 0x64]
je 0x42fa9e
mov r12d, eax
cmp dword [rsp + 0x468], eax
jbe 0x42febc
xor edi, edi
cmp r12d, edi
je 0x42f842
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
mov r8d, 0xc
lea rdx, [0x004d4ac4]
mov rcx, rsi
call fcn.00428fc0
cmp edi, 2
je 0x42f869
xor r14d, r14d
cmp rbx, r14
jne 0x42f86c
mov r9b, r14b
jmp 0x42f86f
xor r14d, r14d
mov r9b, 1
lea rax, [rsp + 0x180]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
mov r8, rsi
mov edx, r13d
mov rcx, r15
call fcn.0042b4ac
mov ebx, eax
cmp eax, r14d
jne 0x43004b
mov rcx, qword [rsp + 0x1f8]
mov rax, qword [rcx]
call qword [rax + VariantCopy]
mov r14, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xc0]
xor edx, edx
cmp rbx, rdx
cmovne r14, rbx
mov qword [rsp + 0x90], r14
cmp edi, 2
jne 0x42f92d
cmp rbx, rdx
setne cl
mov rax, r14
movabs r15, 0x400000000
mov r8d, 0x3d0900
cmp r14, r8
jae 0x42f8ff
cmp cl, dl
cmove rax, r8
movabs r8, 0x4a817c800
cmp rax, r8
jb 0x42f912
cmp cl, dl
je 0x42f92d
mov ecx, dword [rsp + 0xf0]
cmp ecx, edx
je 0x42f926
mov r15, rcx
imul r15, rax
jmp 0x42f92d
mov r15, rax
shr r15, 2
inc edi
cmp edi, 3
jb 0x42f842
mov rcx, qword [rsp + 0x1f8]
mov rax, qword [rcx]
call qword [rax + VariantCopy]
mov eax, 1
mov byte [rsp + 0x20c], al
mov qword [rsp + 0x210], r14
xor edi, edi
cmp byte [rsp + 0x68], dil
jne 0x42f9bc
cmp rbp, rdi
je 0x42f972
mov r9, qword [rsp + 0x118]
jmp 0x42f977
mov r9d, dword [rsp + 0x64]
cmp byte [rsp + 0x61], dil
jne 0x42f988
cmp rbp, rdi
jne 0x42f988
mov r8b, dil
jmp 0x42f98b
mov r8b, al
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rbp
mov edx, r13d
mov rcx, r15
call fcn.0042dcc0
mov ebx, eax
cmp eax, edi
jne 0x43006f
mov eax, 1
mov qword [rsp + 0x38], r14
mov byte [rsp + 0x30], al
lea rax, [rsp + 0x1b8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x20], rax
mov r9, rsi
mov r8d, 0x20000
mov edx, r13d
mov rcx, r15
call fcn.0042c378
mov ebx, eax
cmp eax, edi
jne 0x430093
mov rcx, qword [rsp + 0x1f8]
mov rax, qword [rcx]
call qword [rax + VariantCopy]
mov r8d, 0xc
lea rdx, [0x004d4ac4]
mov rcx, rsi
call fcn.00428fc0
mov qword [rsp + 0xd0], r14
mov rax, qword [rsp + 0xc0]
cmp rax, rdi
setne r9b
lea rcx, [rsp + 0x120]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0xd0]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
mov r8, rsi
mov edx, r13d
mov rcx, r15
call fcn.0042b4ac
mov ebx, eax
cmp eax, edi
jne 0x4300b7
mov rcx, qword [rsp + 0x1f8]
mov rax, qword [rcx]
call qword [rax + VariantCopy]
inc r12d
cmp r12d, dword [rsp + 0x468]
mov rbx, qword [rsp + 0xc0]
jb 0x42f834
mov edi, dword [rsp + 0x64]
jmp 0x42febc
mov r13b, 1
lea rdx, str.LZMA
mov rcx, qword [rsp + 0xd8]
call fcn.00402ab4
xor ebx, ebx
cmp al, bl
jne 0x42fc08
mov r12d, ebx
lea rdi, [0x004d3fa0]
mov rdx, qword [rdi + 0x18]
lea rcx, [rsp + 0x70]
call fcn.00402fac
nop
lea rcx, [rsp + 0x160]
call fcn.00402f74
nop
mov dl, 0x3a
mov rcx, qword [rsp + 0x70]
call fcn.00402930
mov ebx, eax
xor eax, eax
cmp ebx, eax
jl 0x42fb28
lea edx, [rbx + 1]
add rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x160]
call fcn.00403024
cmp ebx, dword [rsp + 0x78]
jae 0x42fb2c
mov dword [rsp + 0x78], ebx
mov rcx, rbx
mov rax, qword [rsp + 0x70]
xor ebx, ebx
mov byte [rcx + rax], bl
jmp 0x42fb2e
xor ebx, ebx
jmp 0x42fb2e
xor ebx, ebx
mov rdx, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0x70]
call fcn.00402ab4
cmp al, bl
je 0x42fb87
cmp dword [rsp + 0x168], ebx
je 0x42fbb8
lea rdx, [0x004d4ac0]
mov rcx, qword [rsp + 0x160]
call sub.msvcrt.dll_strcmp
cmp eax, ebx
jne 0x42fb6e
cmp dword [rsp + 0x158], ebx
je 0x42fbb8
mov rdx, qword [rsp + 0x160]
lea rcx, [rsp + 0x150]
call fcn.00402a50
cmp al, bl
jne 0x42fbb8
mov rcx, qword [rsp + 0x160]
call sub.msvcrt.dll_free
nop
mov rcx, qword [rsp + 0x70]
call sub.msvcrt.dll_free
mov r9d, 1
add r12d, r9d
add rdi, 0x20
cmp r12d, 0x11
jb 0x42fac9
jmp 0x42fbf7
mov eax, dword [rdi + 8]
mov dword [rsp + 0x1ac], eax
mov eax, dword [rdi + 0xc]
mov dword [rsp + 0x1b0], eax
mov eax, dword [rdi + 0x10]
mov dword [rsp + 0x1b4], eax
mov r13b, bl
mov rcx, qword [rsp + 0x160]
call sub.msvcrt.dll_free
nop
mov rcx, qword [rsp + 0x70]
call sub.msvcrt.dll_free
mov r9d, 1
cmp r12d, 0x11
je 0x4300db
cmp r13b, bl
je 0x42fc37
jmp 0x42fc0e
mov r9d, 1
mov dword [rsp + 0x1ac], 0x4b0
mov dword [rsp + 0x1b4], 4
mov dword [rsp + 0x1b0], 0xbe
mov byte [rsp + 0x1a8], r9b
mov r13d, ebx
cmp dword [rsp + 0x468], ebx
jbe 0x42feb8
mov edx, dword [rsp + 0x64]
cmp edx, 0x400000
sbb r12d, r12d
and r12d, 0xfffffffc
xor r8d, r8d
lea ebx, [r12 + 0x16]
mov eax, 0x1f
cmp byte [rsp + 0x470], r8b
cmove ebx, eax
mov ecx, ebx
mov eax, r9d
shl eax, cl
cmp eax, edx
jbe 0x42fc9a
mov ebp, 0xffffffff
cmp ebx, r8d
jbe 0x42fc92
add ebx, ebp
mov ecx, ebx
mov eax, r9d
shl eax, cl
cmp eax, edx
ja 0x42fc80
mov rbp, qword [rsp + 0x110]
mov ecx, ebx
mov edi, r9d
shl edi, cl
cmp edi, edx
ja 0x42fea1
lea rdx, [rsp + 0xa0]
mov ecx, ebx
call fcn.00401b88
xor eax, eax
mov r11, rax
cmp byte [rsp + 0xa0], al
je 0x42fcd6
lea ecx, [rax + 1]
add r11, rcx
cmp byte [rsp + r11 + 0xa0], al
jne 0x42fcc9
mov byte [rsp + r11 + 0xa0], 0x3a
mov byte [rsp + r11 + 0xa1], al
mov r8d, 4
lea rdx, [rsp + 0xa0]
mov rcx, rsi
call fcn.00428fc0
mov dword [rsp + 0x200], edi
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0x268]
call fcn.00412aac
nop
lea rdx, [rsp + 0x140]
lea rcx, [rsp + 0x278]
call fcn.00402ff0
nop
lea rdx, [rsp + 0x150]
lea rcx, [rsp + 0x288]
call fcn.00403768
nop
lea rdx, str.LZMA
mov rcx, qword [rsp + 0x278]
call fcn.00402ab4
xor ecx, ecx
cmp al, cl
je 0x42fdce
mov word [rsp + 0x250], 0x13
mov word [rsp + 0x252], cx
mov dword [rsp + 0x258], ebx
lea rdx, [0x004d1708]
lea rcx, [rsp + 0x2c0]
call fcn.00403710
nop
lea r8, [rsp + 0x250]
mov rdx, rax
lea rcx, [rsp + 0x268]
call fcn.004109f0
mov edi, eax
mov rcx, qword [rsp + 0x2c0]
call sub.msvcrt.dll_free
xor eax, eax
cmp edi, eax
jne 0x430101
lea rcx, [rsp + 0x250]
call fcn.0040b810
xor ecx, ecx
cmp rbp, rcx
je 0x42fddd
mov rax, qword [rsp + 0x118]
jmp 0x42fdf2
mov eax, dword [rsp + 0x200]
cmp rax, 0x40000
jb 0x42fdf2
add rax, 0x10000
lea rcx, [rsp + 0x1a8]
mov qword [rsp + 0x48], rcx
lea rcx, [rsp + 0x1a0]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], 0x1e
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x268]
mov r8d, dword [rsp + 0xd0]
mov dl, 1
mov rcx, r15
call fcn.0042c9b8
mov edi, eax
mov rdx, qword [rsi]
mov rcx, rsi
call qword [rdx + VariantCopy]
xor eax, eax
cmp edi, eax
jne 0x430140
cmp byte [rsp + 0x470], al
je 0x42fe89
lea rcx, [rsp + 0x268]
call fcn.00412ba4
mov r9d, 1
add ebx, r9d
mov ecx, ebx
mov edi, r9d
shl edi, cl
mov edx, dword [rsp + 0x64]
cmp edi, edx
jbe 0x42fca9
xor r8d, r8d
jmp 0x42fea1
lea rcx, [rsp + 0x268]
call fcn.00412ba4
mov edx, dword [rsp + 0x64]
xor r8d, r8d
lea r9d, [r8 + 1]
add r13d, r9d
cmp r13d, dword [rsp + 0x468]
jb 0x42fc5b
mov edi, dword [rsp + 0x64]
jmp 0x42febc
mov edi, dword [rsp + 0x64]
mov eax, dword [rsp + 0x208]
mov r12d, dword [rsp + 0x238]
lea r8d, [r12 + rax]
mov dl, 0x2d
mov rcx, rsi
call fcn.00428884
mov bl, byte [rsp + 0x6b]
xor r13d, r13d
cmp bl, r13b
je 0x42ff01
mov rax, qword [rsi]
lea rdx, [0x004d45e0]
mov rcx, rsi
call qword [rax]
mov r8d, r12d
mov dl, 0x2d
mov rcx, rsi
call fcn.00428884
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopy]
cmp bl, r13b
je 0x42ff73
mov r8d, dword [rsp + 0x208]
lea rdx, str.Avr:
mov rcx, rsi
call fcn.00428fc0
lea r9, [rsp + 0x1b8]
mov r8, r14
mov ebx, dword [rsp + 0x84]
mov dl, bl
mov rcx, rsi
call fcn.00428ac0
mov r11, qword [rsi]
lea rdx, [0x004d45e0]
mov rcx, rsi
call qword [r11]
lea r9, [rsp + 0x1d8]
mov r8, r14
mov dl, bl
mov rcx, rsi
call fcn.00428ac0
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
jmp 0x42ff7a
mov ebx, dword [rsp + 0x84]
mov r8d, dword [rsp + 0x208]
lea rdx, str.Tot:
mov rcx, rsi
call fcn.00428fc0
mov r11, qword [rsp + 0x1c0]
mov rcx, qword [rsp + 0x1e0]
add rcx, r11
mov qword [rsp + 0x2a0], rcx
mov rcx, qword [rsp + 0x1c8]
mov rax, qword [rsp + 0x1e8]
add rcx, rax
mov qword [rsp + 0x2a8], rcx
mov rcx, qword [rsp + 0x1d0]
mov rax, qword [rsp + 0x1f0]
add rcx, rax
mov qword [rsp + 0x2b0], rcx
mov rcx, qword [rsp + 0x1b8]
mov rax, qword [rsp + 0x1d8]
add rcx, rax
mov qword [rsp + 0x298], rcx
lea r9, [rsp + 0x298]
mov r8, r14
mov dl, bl
mov rcx, rsi
call fcn.00428ac0
mov r11, qword [rsi]
mov rcx, rsi
call qword [r11 + VariantCopy]
mov eax, dword [rsp + 0xe8]
mov edx, 1
add eax, edx
mov dword [rsp + 0xe8], eax
cmp eax, 3
mov r12b, byte [rsp + 0x60]
mov bl, byte [rsp + 0x61]
mov r14, r13
jb 0x42f381
jmp 0x430180
mov rcx, qword [rsp + 0xd8]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
jmp 0x43016f
mov rcx, qword [rsp + 0xd8]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
jmp 0x43016f
mov rcx, qword [rsp + 0xd8]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
jmp 0x43016f
mov rcx, qword [rsp + 0xd8]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
jmp 0x43016f
mov rcx, qword [rsp + 0xd8]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, 0x80004001
jmp 0x43016f
lea rcx, [rsp + 0x250]
call fcn.0040b810
nop
lea rcx, [rsp + 0x268]
call fcn.00412ba4
nop
mov rcx, qword [rsp + 0xd8]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, edi
jmp 0x43016f
lea rcx, [rsp + 0x268]
call fcn.00412ba4
nop
mov rcx, qword [rsp + 0xd8]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
mov ebx, edi
lea rcx, [rsp + 0x130]
call fcn.00412ba4
mov eax, ebx
jmp 0x4301d3
mov rcx, qword [rsp + 0xd8]
call sub.msvcrt.dll_free
nop
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
lea rcx, [rsp + 0x130]
call fcn.00412ba4
xor eax, eax
jmp 0x4301d3
mov rdx, rbp
lea rcx, [0x004deda8]
call qword [0x004dedb0]
nop
lea rcx, [rsp + 0x130]
call fcn.00412ba4
mov eax, 0x80070057
add rsp, 0x408
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret