Function at 0x1800891e0
Capabilities:
Delete file
Download url
Receive data

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x7a8]
sub rsp, 0x880
mov qword [rbp + 0x128], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x180146748]
xor rax, rsp
mov qword [rbp + 0x770], rax
mov r13, rcx
xor r15d, r15d
mov esi, r15d
mov dword [rsp + 0x38], r15d
call fcn.18008b140
cmp eax, dword [0x180146724]
jg 0x18008a00c
mov rcx, qword [0x180155338]
test rcx, rcx
jne 0x1800892ab
lea rcx, [0x180145ed8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [0x180155338], rsi
jne 0x180089297
lea ecx, [r15 + 8]
call fcn.18008c568
mov rbx, rax
mov qword [rsp + 0x78], rax
test rax, rax
je 0x180089288
xor eax, eax
mov qword [rbx], rax
mov rcx, rbx
call fcn.180070600
jmp 0x18008928b
mov rbx, r15
lock or dword [rsp], 0
mov qword [0x180155338], rbx
lea rcx, [0x180145ed8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rcx, qword [0x180155338]
xor r9d, r9d
lea r8, str.update_sign_url
lea rdx, [rbp + 0x130]
call fcn.180071260
mov rbx, rax
cmp qword [rax + 0x18], 8
jb 0x1800892ce
mov rbx, qword [rax]
call fcn.18000a3f0
mov rcx, rax
test rax, rax
je 0x18008a6d8
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x30], rax
mov rdi, 0xffffffffffffffff
test rbx, rbx
je 0x180089321
cmp rbx, 0x10000
jae 0x180089312
movzx edx, bx
lea rcx, [rsp + 0x30]
call fcn.18000af40
jmp 0x180089335
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x180089315
jmp 0x180089324
mov eax, r15d
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.18000b310
nop
mov rdx, qword [rbp + 0x148]
cmp rdx, 8
jb 0x18008937b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180089376
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a6e3
call fcn.18008c16c
mov rbx, qword [rsp + 0x30]
cmp dword [rbx - 0x10], 0
je 0x18008944d
xor edx, edx
mov r8d, 0x410
lea rcx, [rbp + 0x360]
call fcn.1800bbd80
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], r15d
mov r9d, 0x104
lea r8, [rbp + 0x360]
mov rdx, rbx
xor ecx, ecx
call sub.urlmon.dll_URLDownloadToCacheFileW
test eax, eax
js 0x18008944d
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp + 0x250], xmm0
mov byte [rbp + 0x240], 0
lea rdx, [rbp + 0x240]
lea rcx, [rbp + 0x360]
call fcn.180077580
test eax, eax
jne 0x18008946d
mov rdx, qword [rbp + 0x258]
cmp rdx, 0x10
jb 0x180089436
inc rdx
mov rcx, qword [rbp + 0x240]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180089431
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a6e9
call fcn.18008c16c
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp + 0x250], xmm0
mov byte [rbp + 0x240], 0
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x18008a00c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
jmp 0x18008a00c
lea rcx, [rbp + 0x360]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov rbx, qword [str.45476F8083D74AC28A2DA8ED399737B7]
call fcn.18000a3f0
mov rcx, rax
test rax, rax
je 0x18008a6ef
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x50], rax
test rbx, rbx
je 0x1800894cd
cmp rbx, 0x10000
jae 0x1800894be
movzx edx, bx
lea rcx, [rsp + 0x50]
call fcn.18000af40
jmp 0x1800894e1
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x1800894c1
jmp 0x1800894d0
mov eax, r15d
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x50]
call fcn.18000b310
nop
lea rdx, [rbp + 0x240]
cmp qword [rbp + 0x258], 0x10
cmovae rdx, qword [rbp + 0x240]
mov r8d, 0xfde9
lea rcx, [rbp + 0xa8]
call fcn.18008dec0
mov rbx, rax
cmp qword [rax + 0x18], 8
jb 0x180089517
mov rbx, qword [rax]
call fcn.18000a3f0
mov rcx, rax
test rax, rax
je 0x18008a6fa
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x48], rax
test rbx, rbx
je 0x18008956c
cmp rbx, 0x10000
jae 0x180089554
movzx edx, bx
lea rcx, [rsp + 0x48]
call fcn.18000af40
jmp 0x180089580
mov rax, rdi
nop word [rax + rax]
inc rax
cmp word [rbx + rax*2], 0
jne 0x180089560
jmp 0x18008956f
mov eax, r15d
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x48]
call fcn.18000b310
nop
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x60]
call fcn.18008d3f0
nop
mov r8d, 0xfde9
mov rdx, qword [rax]
lea rcx, [rbp + 0x268]
call fcn.18008dd10
nop
mov rdx, qword [rbp - 0x60]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1800895c8
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1800895e7
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rbp + 0xc0]
cmp rdx, 8
jb 0x18008962d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180089628
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a705
call fcn.18008c16c
movdqa xmm0, xmmword [0x1800f68b0]
movdqu xmmword [rbp + 0xb8], xmm0
mov word [rbp + 0xa8], r15w
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x180089663
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
cmp qword [rbp + 0x278], 0
jne 0x180089748
mov rdx, qword [rbp + 0x280]
cmp rdx, 0x10
jb 0x1800896b2
inc rdx
mov rcx, qword [rbp + 0x268]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800896ad
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a70b
call fcn.18008c16c
mov qword [rbp + 0x278], r15
mov qword [rbp + 0x280], 0xf
mov byte [rbp + 0x268], 0
mov rdx, qword [rbp + 0x258]
cmp rdx, 0x10
jb 0x18008970c
inc rdx
mov rcx, qword [rbp + 0x240]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180089707
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a711
call fcn.18008c16c
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp + 0x250], xmm0
mov byte [rbp + 0x240], 0
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x18008a00c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
jmp 0x18008a00c
xor eax, eax
mov qword [rbp + 0x2c8], rax
mov qword [rbp + 0x2d0], rax
mov qword [rbp + 0x2d8], rax
mov qword [rbp + 0x2e0], rax
mov qword [rbp + 0x2e8], rax
lea rcx, [rbp + 0x2c8]
call fcn.18006e670
nop
lea rdx, [rbp + 0x268]
lea rcx, [rbp + 0x2c8]
call fcn.18006f2c0
test al, al
jne 0x180089845
lea rcx, [rbp + 0x2c8]
call fcn.18006bcf0
nop
mov rdx, qword [rbp + 0x280]
cmp rdx, 0x10
jb 0x1800897e3
inc rdx
mov rcx, qword [rbp + 0x268]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800897de
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a717
call fcn.18008c16c
mov qword [rbp + 0x278], r15
mov qword [rbp + 0x280], 0xf
mov byte [rbp + 0x268], 0
mov rdx, qword [rbp + 0x258]
cmp rdx, 0x10
jb 0x18008970c
inc rdx
mov rcx, qword [rbp + 0x240]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180089707
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a6d2
jmp 0x180089707
mov qword [rbp + 0x228], r15
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x230], xmm0
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp + 0x298], xmm0
mov byte [rbp + 0x288], 0
movdqu xmmword [rbp + 0x2b8], xmm0
mov byte [rbp + 0x2a8], 0
movdqu xmmword [rbp + 0x38], xmm0
mov byte [rbp + 0x28], 0
xor r8d, r8d
lea rdx, [0x1800f4ad8]
lea rcx, [rbp + 0x28]
call fcn.18000c180
nop
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp - 0x28], xmm0
mov byte [rbp - 0x38], 0
mov r8d, 5
lea rdx, str.CSVer
lea rcx, [rbp - 0x38]
call fcn.18000c180
nop
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x38]
lea rdx, [rbp + 0xc8]
lea rcx, [rbp + 0x2c8]
call fcn.18006ef30
mov rbx, rax
lea rax, [rbp + 0x288]
cmp rax, rbx
je 0x18008991c
lea rcx, [rbp + 0x288]
call fcn.180008df0
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x288], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x298], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rbp + 0xe0]
cmp rdx, 0x10
jb 0x18008995d
inc rdx
mov rcx, qword [rbp + 0xc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180089958
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a71d
call fcn.18008c16c
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp + 0xd8], xmm0
mov byte [rbp + 0xc8], 0
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x1800899af
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800899aa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a723
call fcn.18008c16c
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp - 0x28], xmm0
mov byte [rbp - 0x38], 0
mov rdx, qword [rbp + 0x40]
cmp rdx, 0x10
jb 0x1800899fb
inc rdx
mov rcx, qword [rbp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800899f6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a729
call fcn.18008c16c
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp + 0x58], xmm0
mov byte [rbp + 0x48], 0
mov r8d, 6
lea rdx, str.CSList
lea rcx, [rbp + 0x48]
call fcn.18000c180
nop
lea rdx, [rbp + 0x48]
lea rcx, [rbp + 0x2c8]
call fcn.18006e900
mov r14d, eax
mov rdx, qword [rbp + 0x60]
cmp rdx, 0x10
jb 0x180089a71
inc rdx
mov rcx, qword [rbp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180089a6c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a72f
call fcn.18008c16c
xor eax, eax
mov qword [rbp + 0x318], rax
mov qword [rbp + 0x320], rax
mov qword [rbp + 0x328], rax
mov qword [rbp + 0x330], rax
mov qword [rbp + 0x338], rax
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp + 0x18], xmm0
mov byte [rbp + 8], al
lea r8d, [rax + 6]
lea rdx, str.CSList
lea rcx, [rbp + 8]
call fcn.18000c180
nop
lea r8, [rbp + 8]
lea rdx, [rbp + 0x318]
lea rcx, [rbp + 0x2c8]
call fcn.18006f1e0
nop
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x180089b0e
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180089b09
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a735
call fcn.18008c16c
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp + 0x18], xmm0
mov byte [rbp + 8], 0
movdqa xmm1, xmm0
movdqu xmmword [rbp + 0x78], xmm0
mov byte [rbp + 0x68], 0
xor r8d, r8d
lea rdx, [0x1800f4ad8]
lea rcx, [rbp + 0x68]
call fcn.18000c180
nop
lea r8, [rbp + 0x68]
lea rdx, [rbp + 0xe8]
lea rcx, [rbp + 0x318]
call fcn.18006f530
mov rbx, rax
lea rax, [rbp + 0x2a8]
cmp rax, rbx
je 0x180089b96
lea rcx, [rbp + 0x2a8]
call fcn.180008df0
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x2a8], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x2b8], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rbp + 0x100]
cmp rdx, 0x10
jb 0x180089bd7
inc rdx
mov rcx, qword [rbp + 0xe8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180089bd2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a73b
call fcn.18008c16c
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp + 0xf8], xmm0
mov byte [rbp + 0xe8], 0
mov rdx, qword [rbp + 0x80]
cmp rdx, 0x10
jb 0x180089c2c
inc rdx
mov rcx, qword [rbp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180089c27
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a741
call fcn.18008c16c
mov esi, r15d
test r14d, r14d
jle 0x180089de2
nop dword [rax + rax]
mov edx, esi
lea rcx, [rbp + 0x318]
call fcn.18006e7a0
mov rcx, rax
lea rdx, [rbp + 0x340]
call fcn.18006cc70
nop
lea rdx, [rbp + 0x340]
cmp qword [rbp + 0x358], 0x10
cmovae rdx, qword [rbp + 0x340]
mov r8d, 0xfde9
lea rcx, [rbp + 0x150]
call fcn.18008dec0
mov rbx, rax
cmp qword [rax + 0x18], 8
jb 0x180089c94
mov rbx, qword [rax]
call fcn.18000a3f0
mov rcx, rax
test rax, rax
je 0x18008a753
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x40], rax
test rbx, rbx
je 0x180089ce0
cmp rbx, 0x10000
jae 0x180089cd1
movzx edx, bx
lea rcx, [rsp + 0x40]
call fcn.18000af40
jmp 0x180089cf4
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x180089cd4
jmp 0x180089ce3
mov eax, r15d
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.18000b310
nop
mov rax, qword [rbp + 0x230]
cmp qword [rbp + 0x238], rax
je 0x180089d1b
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.1800272b0
add qword [rbp + 0x230], 8
jmp 0x180089d30
lea r8, [rsp + 0x40]
mov rdx, rax
lea rcx, [rbp + 0x228]
call fcn.18002e500
nop
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x180089d4f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rbp + 0x168]
cmp rdx, 8
jb 0x180089d96
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x150]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180089d90
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a747
call fcn.18008c16c
nop
mov rdx, qword [rbp + 0x358]
cmp rdx, 0x10
jb 0x180089dd7
inc rdx
mov rcx, qword [rbp + 0x340]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180089dd2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a74d
call fcn.18008c16c
inc esi
cmp esi, r14d
jl 0x180089c40
mov rsi, qword [rbp + 0x228]
mov r12, qword [rbp + 0x230]
cmp rsi, r12
je 0x180089eb1
nop dword [rax]
mov r15, qword [rsi]
lea rbx, [r15 - 0x18]
mov rcx, qword [rbx]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
cmp dword [rbx + 0x10], 0
jl 0x180089e24
cmp rax, qword [rbx]
jne 0x180089e24
lock inc dword [rbx + 0x10]
jmp 0x180089e62
lea r14, [rbx + 8]
mov rax, qword [rax]
mov r8d, 2
mov edx, dword [r14]
call qword [rax]
mov rbx, rax
test rax, rax
je 0x18008a7bf
mov ecx, dword [r14]
mov dword [rax + 8], ecx
mov ecx, dword [r14]
inc ecx
movsxd rdx, ecx
add rdx, rdx
lea rcx, [rax + 0x18]
mov r9, rdx
mov r8, r15
call fcn.18000d2d0
add rbx, 0x18
mov qword [rsp + 0x78], rbx
mov rdx, qword [r13 + 8]
test rdx, rdx
je 0x18008a7b4
mov rcx, rbx
call fcn.1800bf460
test eax, eax
je 0x18008a046
lea rdx, [rbx - 0x18]
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x180089ea1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
add rsi, 8
cmp rsi, r12
jne 0x180089e00
xor r15d, r15d
mov esi, dword [rsp + 0x38]
lea rcx, [rbp + 0x318]
call fcn.18006bcf0
nop
mov rdx, qword [rbp + 0x2c0]
cmp rdx, 0x10
jb 0x180089f03
inc rdx
mov rcx, qword [rbp + 0x2a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180089efe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a75e
call fcn.18008c16c
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp + 0x2b8], xmm0
mov byte [rbp + 0x2a8], 0
mov rdx, qword [rbp + 0x2a0]
cmp rdx, 0x10
jb 0x180089f5b
inc rdx
mov rcx, qword [rbp + 0x288]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180089f56
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a6cc
call fcn.18008c16c
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp + 0x298], xmm0
mov byte [rbp + 0x288], 0
mov rcx, qword [rbp + 0x228]
test rcx, rcx
je 0x180089fc4
lea r8, [rbp + 0x228]
mov rdx, qword [rbp + 0x230]
call fcn.180089100
mov r8, qword [rbp + 0x238]
mov rdx, qword [rbp + 0x228]
sub r8, rdx
sar r8, 3
lea rcx, [rbp + 0x228]
call fcn.18000c350
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x228], xmm0
mov qword [rbp + 0x238], r15
lea rcx, [rbp + 0x2c8]
call fcn.18006bcf0
nop
lea rcx, [rbp + 0x268]
call fcn.180008df0
nop
lea rcx, [rbp + 0x240]
call fcn.180008df0
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x18008a008
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [r8 + 8]
test esi, esi
jne 0x18008a014
mov rcx, r13
call fcn.18008bb70
mov eax, esi
mov rcx, qword [rbp + 0x770]
xor rcx, rsp
call fcn.18008c720
lea r11, [rsp + 0x880]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov esi, 1
xor eax, eax
mov qword [rbp + 0x2f0], rax
mov qword [rbp + 0x2f8], rax
mov qword [rbp + 0x300], rax
mov qword [rbp + 0x308], rax
mov qword [rbp + 0x310], rax
lea rcx, [rbp + 0x2f0]
call fcn.18006e670
nop
lea rdx, [rbp + 0x288]
lea rcx, [rbp + 0x190]
call fcn.18006b7e0
nop
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp - 0x48], xmm0
mov byte [rbp - 0x58], 0
lea r8d, [rsi + 4]
lea rdx, str.CSVer
lea rcx, [rbp - 0x58]
call fcn.18000c180
nop
lea rdx, [rbp - 0x58]
lea rcx, [rbp + 0x2f0]
call fcn.18006e790
mov rcx, rax
lea rdx, [rbp + 0x190]
call fcn.18006bdc0
nop
mov rdx, qword [rbp - 0x40]
cmp rdx, 0x10
jb 0x18008a112
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008a10d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a764
call fcn.18008c16c
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp - 0x48], xmm0
mov byte [rbp - 0x58], 0
lea rcx, [rbp + 0x190]
call fcn.18006bcf0
lea rdx, [rbp + 0x2a8]
lea rcx, [rbp + 0x1b8]
call fcn.18006b7e0
nop
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], 0
mov r8d, 6
lea rdx, str.CSList
lea rcx, [rbp - 0x80]
call fcn.18000c180
nop
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x2f0]
call fcn.18006e790
mov rcx, rax
lea rdx, [rbp + 0x1b8]
call fcn.18006bdc0
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18008a1c6
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008a1c1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a76a
call fcn.18008c16c
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], 0
lea rcx, [rbp + 0x1b8]
call fcn.18006bcf0
xor edx, edx
lea rcx, [rbp + 0x1e0]
call fcn.18006b840
nop
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp - 8], xmm0
mov byte [rbp - 0x18], 0
mov r8d, 0xc
lea rdx, str.CheckFailCnt
lea rcx, [rbp - 0x18]
call fcn.18000c180
nop
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 0x2f0]
call fcn.18006e790
mov rcx, rax
lea rdx, [rbp + 0x1e0]
call fcn.18006bdc0
nop
mov rdx, qword [rbp]
cmp rdx, 0x10
jb 0x18008a275
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008a270
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a770
call fcn.18008c16c
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp - 8], xmm0
mov byte [rbp - 0x18], 0
lea rcx, [rbp + 0x1e0]
call fcn.18006bcf0
xor r15d, r15d
mov qword [rbp + 0x260], r15
mov rbx, qword [str.45476F8083D74AC28A2DA8ED399737B7]
call fcn.18000a3f0
mov rcx, rax
test rax, rax
je 0x18008a776
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x60], rax
test rbx, rbx
je 0x18008a2ef
cmp rbx, 0x10000
jae 0x18008a2e0
movzx edx, bx
lea rcx, [rsp + 0x60]
call fcn.18000af40
jmp 0x18008a303
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x18008a2e3
jmp 0x18008a2f2
mov eax, r15d
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.18000b310
nop
lea rdx, [rbp + 0x2a8]
cmp qword [rbp + 0x2c0], 0x10
cmovae rdx, qword [rbp + 0x2a8]
mov r8d, 0xfde9
lea rcx, [rbp + 0x108]
call fcn.18008dec0
mov rbx, rax
cmp qword [rax + 0x18], 8
jb 0x18008a339
mov rbx, qword [rax]
call fcn.18000a3f0
mov rcx, rax
test rax, rax
je 0x18008a781
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x58], rax
test rbx, rbx
je 0x18008a38c
cmp rbx, 0x10000
jae 0x18008a376
movzx edx, bx
lea rcx, [rsp + 0x58]
call fcn.18000af40
jmp 0x18008a3a0
mov rax, rdi
nop dword [rax]
inc rax
cmp word [rbx + rax*2], 0
jne 0x18008a380
jmp 0x18008a38f
mov eax, r15d
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x58]
call fcn.18000b310
nop
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x58]
lea rcx, [rbp + 0x260]
call fcn.18008d910
nop
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x18008a3d6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rbp + 0x120]
cmp rdx, 8
jb 0x18008a41c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008a417
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a78c
call fcn.18008c16c
movdqa xmm0, xmmword [0x1800f68b0]
movdqu xmmword [rbp + 0x118], xmm0
mov word [rbp + 0x108], r15w
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x18008a452
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
movdqa xmm0, xmmword [0x1800f5220]
movdqu xmmword [rbp + 0x98], xmm0
mov byte [rbp + 0x88], 0
xor r8d, r8d
lea rdx, [0x1800f4ad8]
lea rcx, [rbp + 0x88]
call fcn.18000c180
nop
lea r8, [rbp + 0x88]
lea rdx, [rbp + 0x208]
lea rcx, [rbp + 0x2f0]
call fcn.18006f530
mov rdx, rax
mov rcx, r13
call fcn.18008be90
nop
mov rdx, qword [rbp + 0xa0]
cmp rdx, 0x10
jb 0x18008a4e7
inc rdx
mov rcx, qword [rbp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008a4e2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a792
call fcn.18008c16c
lea rax, [rsp + 0x68]
mov qword [rsp + 0x38], rax
lea rdx, [rbp + 0x288]
cmp qword [rbp + 0x2a0], 0x10
cmovae rdx, qword [rbp + 0x288]
mov r8d, 0xfde9
lea rcx, [rbp + 0x170]
call fcn.18008dec0
mov rbx, rax
call fcn.18000a3f0
mov rcx, rax
test rax, rax
je 0x18008a798
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x68], rax
lea r14, str.SOFTWAREComMaster
cmp r14, 0x10000
jae 0x18008a55d
movzx edx, r14w
lea rcx, [rsp + 0x68]
call fcn.18000af40
jmp 0x18008a57c
mov rax, rdi
inc rax
cmp word [r14 + rax*2], 0
jne 0x18008a560
mov r8d, eax
mov rdx, r14
lea rcx, [rsp + 0x68]
call fcn.18000b310
nop
cmp qword [rbx + 0x18], 8
jb 0x18008a586
mov rbx, qword [rbx]
mov qword [rsp + 0x20], rbx
lea r9, [0x180107530]
lea r8, [rsp + 0x68]
mov rdx, 0xffffffff80000002
mov rcx, r13
call fcn.18008ba70
nop
mov rdx, qword [rbp + 0x188]
cmp rdx, 8
jb 0x18008a5ed
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x170]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008a5e8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008a7a3
call fcn.18008c16c
lea rax, [rsp + 0x70]
mov qword [rsp + 0x38], rax
call fcn.18000a3f0
mov rcx, rax
test rax, rax
je 0x18008a7a9
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x70], rax
cmp r14, 0x10000
jae 0x18008a630
movzx edx, r14w
lea rcx, [rsp + 0x70]
call fcn.18000af40
jmp 0x18008a64f
mov rax, rdi
inc rax
cmp word [r14 + rax*2], 0
jne 0x18008a633
mov r8d, eax
mov rdx, r14
lea rcx, [rsp + 0x70]
call fcn.18000b310
nop
mov rax, qword [rbp + 0x260]
mov qword [rsp + 0x20], rax
lea r9, [0x180107568]
lea r8, [rsp + 0x70]
mov rdx, 0xffffffff80000002
mov rcx, r13
call fcn.18008ba70
nop
mov rdx, qword [rbp + 0x260]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x18008a698
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rcx, [rbp + 0x2f0]
call fcn.18006bcf0
nop
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x180089eb5
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
jmp 0x180089eb5
call fcn.1800beee8
nop
call fcn.1800beee8
nop
mov ecx, 0x80004005
call fcn.180009990
nop
call fcn.1800beee8
int3
call fcn.1800beee8
nop
mov ecx, 0x80004005
call fcn.180009990
nop
mov ecx, 0x80004005
call fcn.180009990
nop
call fcn.1800beee8
nop
call fcn.1800beee8
nop
call fcn.1800beee8
nop
call fcn.1800beee8
nop
call fcn.1800beee8
nop
call fcn.1800beee8
nop
call fcn.1800beee8
int3
call fcn.1800beee8
nop
call fcn.1800beee8
nop
call fcn.1800beee8
nop
call fcn.1800beee8
nop
call fcn.1800beee8
nop
call fcn.1800beee8
nop
mov ecx, 0x80004005
call fcn.180009990
nop
call fcn.1800beee8
nop
call fcn.1800beee8
nop
call fcn.1800beee8
nop
call fcn.1800beee8
nop
mov ecx, 0x80004005
call fcn.180009990
nop
mov ecx, 0x80004005
call fcn.180009990
nop
call fcn.1800beee8
nop
call fcn.1800beee8
nop
mov ecx, 0x80004005
call fcn.180009990
nop
call fcn.1800beee8
int3
mov ecx, 0x80004005
call fcn.180009990
nop
mov ecx, 0x80004005
call fcn.180009990
nop
call fcn.18000b6a0
int3
push rbx
sub rsp, 0x20
mov rbx, rcx
add rcx, 8
test rdx, rdx
jne 0x18008b626
xor eax, eax
jmp 0x18008b63a
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x18008b630
mov r8d, eax
call fcn.18000b310
mov r8, qword [str.CheckSignShareMem]
xor edx, edx
mov ecx, 0xf001f
call qword [sym.imp.KERNEL32.dll_OpenFileMappingW]
mov qword [rbx], rax
mov rcx, rbx
test rax, rax
je 0x18008b66d
call fcn.18008aec0
test eax, eax
jne 0x18008b683
mov rcx, rbx
call fcn.18008a7d0
test eax, eax
jne 0x18008b683
mov rcx, rbx
add rsp, 0x20
pop rbx
jmp 0x1800891e0
add rsp, 0x20
pop rbx
ret