Function at 0x1402d3c40
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 [0x1403b8c08]
xor rax, rsp
mov qword [rbp + 0x770], rax
mov r13, rcx
xor r15d, r15d
mov esi, r15d
mov dword [rsp + 0x38], r15d
call fcn.1402d5ba0
cmp eax, dword [reloc.WS2_32.dll_getpeername]
jg 0x1402d4a6c
mov rcx, qword [0x1403dce38]
test rcx, rcx
jne 0x1402d3d0b
lea rcx, [0x1403c0a30]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [0x1403dce38], rsi
jne 0x1402d3cf7
lea ecx, [r15 + 8]
call fcn.140171ab4
mov rbx, rax
mov qword [rsp + 0x78], rax
test rax, rax
je 0x1402d3ce8
xor eax, eax
mov qword [rbx], rax
mov rcx, rbx
call fcn.1402bf450
jmp 0x1402d3ceb
mov rbx, r15
lock or dword [rsp], 0
mov qword [0x1403dce38], rbx
lea rcx, [0x1403c0a30]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rcx, qword [0x1403dce38]
xor r9d, r9d
lea r8, str.update_sign_url
lea rdx, [rbp + 0x130]
call fcn.1402c0e10
mov rbx, rax
cmp qword [rax + 0x18], 8
jb 0x1402d3d2e
mov rbx, qword [rax]
call fcn.14000b190
mov rcx, rax
test rax, rax
je 0x1402d5138
mov rax, qword [rax]
call qword [rax + SafeArrayCopy]
add rax, 0x18
mov qword [rsp + 0x30], rax
mov rdi, 0xffffffffffffffff
test rbx, rbx
je 0x1402d3d81
cmp rbx, 0x10000
jae 0x1402d3d72
movzx edx, bx
lea rcx, [rsp + 0x30]
call fcn.14000b690
jmp 0x1402d3d95
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x1402d3d75
jmp 0x1402d3d84
mov eax, r15d
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.140010860
nop
mov rdx, qword [rbp + 0x148]
cmp rdx, 8
jb 0x1402d3ddb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d3dd6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d5143
call fcn.140171af0
mov rbx, qword [rsp + 0x30]
cmp dword [rbx - 0x10], 0
je 0x1402d3ead
xor edx, edx
mov r8d, 0x410
lea rcx, [rbp + 0x360]
call fcn.140289490
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 0x1402d3ead
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp + 0x250], xmm0
mov byte [rbp + 0x240], 0
lea rdx, [rbp + 0x240]
lea rcx, [rbp + 0x360]
call fcn.1402ca950
test eax, eax
jne 0x1402d3ecd
mov rdx, qword [rbp + 0x258]
cmp rdx, 0x10
jb 0x1402d3e96
inc rdx
mov rcx, qword [rbp + 0x240]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d3e91
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d5149
call fcn.140171af0
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp + 0x250], xmm0
mov byte [rbp + 0x240], 0
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x1402d4a6c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x1402d4a6c
lea rcx, [rbp + 0x360]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov rbx, qword [str.__5_]
call fcn.14000b190
mov rcx, rax
test rax, rax
je 0x1402d514f
mov rax, qword [rax]
call qword [rax + SafeArrayCopy]
add rax, 0x18
mov qword [rsp + 0x50], rax
test rbx, rbx
je 0x1402d3f2d
cmp rbx, 0x10000
jae 0x1402d3f1e
movzx edx, bx
lea rcx, [rsp + 0x50]
call fcn.14000b690
jmp 0x1402d3f41
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x1402d3f21
jmp 0x1402d3f30
mov eax, r15d
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x50]
call fcn.140010860
nop
lea rdx, [rbp + 0x240]
cmp qword [rbp + 0x258], 0x10
cmovae rdx, qword [rbp + 0x240]
mov r8d, 0xfde9
lea rcx, [rbp + 0xa8]
call fcn.140245990
mov rbx, rax
cmp qword [rax + 0x18], 8
jb 0x1402d3f77
mov rbx, qword [rax]
call fcn.14000b190
mov rcx, rax
test rax, rax
je 0x1402d515a
mov rax, qword [rax]
call qword [rax + SafeArrayCopy]
add rax, 0x18
mov qword [rsp + 0x48], rax
test rbx, rbx
je 0x1402d3fcc
cmp rbx, 0x10000
jae 0x1402d3fb4
movzx edx, bx
lea rcx, [rsp + 0x48]
call fcn.14000b690
jmp 0x1402d3fe0
mov rax, rdi
nop word [rax + rax]
inc rax
cmp word [rbx + rax*2], 0
jne 0x1402d3fc0
jmp 0x1402d3fcf
mov eax, r15d
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x48]
call fcn.140010860
nop
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x60]
call fcn.140173120
nop
mov r8d, 0xfde9
mov rdx, qword [rax]
lea rcx, [rbp + 0x268]
call fcn.1402457e0
nop
mov rdx, qword [rbp - 0x60]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1402d4028
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1402d4047
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 0xc0]
cmp rdx, 8
jb 0x1402d408d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d4088
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d5165
call fcn.140171af0
movdqa xmm0, xmmword [0x1402ecd10]
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 0x1402d40c3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
cmp qword [rbp + 0x278], 0
jne 0x1402d41a8
mov rdx, qword [rbp + 0x280]
cmp rdx, 0x10
jb 0x1402d4112
inc rdx
mov rcx, qword [rbp + 0x268]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d410d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d516b
call fcn.140171af0
mov qword [rbp + 0x278], r15
mov qword [rbp + 0x280], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rbp + 0x268], 0
mov rdx, qword [rbp + 0x258]
cmp rdx, 0x10
jb 0x1402d416c
inc rdx
mov rcx, qword [rbp + 0x240]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d4167
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d5171
call fcn.140171af0
movdqa xmm0, xmmword [0x1402eb9c0]
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 0x1402d4a6c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x1402d4a6c
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.1402c9cd0
nop
lea rdx, [rbp + 0x268]
lea rcx, [rbp + 0x2c8]
call fcn.1402ca4d0
test al, al
jne 0x1402d42a5
lea rcx, [rbp + 0x2c8]
call fcn.1402c7900
nop
mov rdx, qword [rbp + 0x280]
cmp rdx, 0x10
jb 0x1402d4243
inc rdx
mov rcx, qword [rbp + 0x268]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d423e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d5177
call fcn.140171af0
mov qword [rbp + 0x278], r15
mov qword [rbp + 0x280], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rbp + 0x268], 0
mov rdx, qword [rbp + 0x258]
cmp rdx, 0x10
jb 0x1402d416c
inc rdx
mov rcx, qword [rbp + 0x240]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d4167
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d5132
jmp 0x1402d4167
mov qword [rbp + 0x228], r15
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x230], xmm0
movdqa xmm0, xmmword [0x1402eb9c0]
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, [0x1402eb7f8]
lea rcx, [rbp + 0x28]
call fcn.14000c230
nop
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp - 0x28], xmm0
mov byte [rbp - 0x38], 0
mov r8d, 5
lea rdx, str.CSVer
lea rcx, [rbp - 0x38]
call fcn.14000c230
nop
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x38]
lea rdx, [rbp + 0xc8]
lea rcx, [rbp + 0x2c8]
call fcn.1402ca3d0
mov rbx, rax
lea rax, [rbp + 0x288]
cmp rax, rbx
je 0x1402d437c
lea rcx, [rbp + 0x288]
call fcn.14000a960
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], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rbx], 0
mov rdx, qword [rbp + 0xe0]
cmp rdx, 0x10
jb 0x1402d43bd
inc rdx
mov rcx, qword [rbp + 0xc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d43b8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d517d
call fcn.140171af0
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp + 0xd8], xmm0
mov byte [rbp + 0xc8], 0
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x1402d440f
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d440a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d5183
call fcn.140171af0
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp - 0x28], xmm0
mov byte [rbp - 0x38], 0
mov rdx, qword [rbp + 0x40]
cmp rdx, 0x10
jb 0x1402d445b
inc rdx
mov rcx, qword [rbp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d4456
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d5189
call fcn.140171af0
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp + 0x58], xmm0
mov byte [rbp + 0x48], 0
mov r8d, 6
lea rdx, str.CSList
lea rcx, [rbp + 0x48]
call fcn.14000c230
nop
lea rdx, [rbp + 0x48]
lea rcx, [rbp + 0x2c8]
call fcn.1402c9e30
mov r14d, eax
mov rdx, qword [rbp + 0x60]
cmp rdx, 0x10
jb 0x1402d44d1
inc rdx
mov rcx, qword [rbp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d44cc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d518f
call fcn.140171af0
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 [0x1402eb9c0]
movdqu xmmword [rbp + 0x18], xmm0
mov byte [rbp + 8], al
lea r8d, [rax + 6]
lea rdx, str.CSList
lea rcx, [rbp + 8]
call fcn.14000c230
nop
lea r8, [rbp + 8]
lea rdx, [rbp + 0x318]
lea rcx, [rbp + 0x2c8]
call fcn.1402ca440
nop
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x1402d456e
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d4569
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d5195
call fcn.140171af0
movdqa xmm0, xmmword [0x1402eb9c0]
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, [0x1402eb7f8]
lea rcx, [rbp + 0x68]
call fcn.14000c230
nop
lea r8, [rbp + 0x68]
lea rdx, [rbp + 0xe8]
lea rcx, [rbp + 0x318]
call fcn.1402ca740
mov rbx, rax
lea rax, [rbp + 0x2a8]
cmp rax, rbx
je 0x1402d45f6
lea rcx, [rbp + 0x2a8]
call fcn.14000a960
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], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rbx], 0
mov rdx, qword [rbp + 0x100]
cmp rdx, 0x10
jb 0x1402d4637
inc rdx
mov rcx, qword [rbp + 0xe8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d4632
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d519b
call fcn.140171af0
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp + 0xf8], xmm0
mov byte [rbp + 0xe8], 0
mov rdx, qword [rbp + 0x80]
cmp rdx, 0x10
jb 0x1402d468c
inc rdx
mov rcx, qword [rbp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d4687
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d51a1
call fcn.140171af0
mov esi, r15d
test r14d, r14d
jle 0x1402d4842
nop dword [rax + rax]
mov edx, esi
lea rcx, [rbp + 0x318]
call fcn.1402c9e00
mov rcx, rax
lea rdx, [rbp + 0x340]
call fcn.1402c86d0
nop
lea rdx, [rbp + 0x340]
cmp qword [rbp + 0x358], 0x10
cmovae rdx, qword [rbp + 0x340]
mov r8d, 0xfde9
lea rcx, [rbp + 0x150]
call fcn.140245990
mov rbx, rax
cmp qword [rax + 0x18], 8
jb 0x1402d46f4
mov rbx, qword [rax]
call fcn.14000b190
mov rcx, rax
test rax, rax
je 0x1402d51b3
mov rax, qword [rax]
call qword [rax + SafeArrayCopy]
add rax, 0x18
mov qword [rsp + 0x40], rax
test rbx, rbx
je 0x1402d4740
cmp rbx, 0x10000
jae 0x1402d4731
movzx edx, bx
lea rcx, [rsp + 0x40]
call fcn.14000b690
jmp 0x1402d4754
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x1402d4734
jmp 0x1402d4743
mov eax, r15d
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.140010860
nop
mov rax, qword [rbp + 0x230]
cmp qword [rbp + 0x238], rax
je 0x1402d477b
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.1400835f0
add qword [rbp + 0x230], 8
jmp 0x1402d4790
lea r8, [rsp + 0x40]
mov rdx, rax
lea rcx, [rbp + 0x228]
call fcn.1400ceb70
nop
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1402d47af
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 0x168]
cmp rdx, 8
jb 0x1402d47f6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x150]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d47f0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d51a7
call fcn.140171af0
nop
mov rdx, qword [rbp + 0x358]
cmp rdx, 0x10
jb 0x1402d4837
inc rdx
mov rcx, qword [rbp + 0x340]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d4832
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d51ad
call fcn.140171af0
inc esi
cmp esi, r14d
jl 0x1402d46a0
mov rsi, qword [rbp + 0x228]
mov r12, qword [rbp + 0x230]
cmp rsi, r12
je 0x1402d4911
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 0x1402d4884
cmp rax, qword [rbx]
jne 0x1402d4884
lock inc dword [rbx + 0x10]
jmp 0x1402d48c2
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 0x1402d521f
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.140015050
add rbx, 0x18
mov qword [rsp + 0x78], rbx
mov rdx, qword [r13 + 8]
test rdx, rdx
je 0x1402d5214
mov rcx, rbx
call fcn.140299718
test eax, eax
je 0x1402d4aa6
lea rdx, [rbx - 0x18]
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1402d4901
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
add rsi, 8
cmp rsi, r12
jne 0x1402d4860
xor r15d, r15d
mov esi, dword [rsp + 0x38]
lea rcx, [rbp + 0x318]
call fcn.1402c7900
nop
mov rdx, qword [rbp + 0x2c0]
cmp rdx, 0x10
jb 0x1402d4963
inc rdx
mov rcx, qword [rbp + 0x2a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d495e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d51be
call fcn.140171af0
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp + 0x2b8], xmm0
mov byte [rbp + 0x2a8], 0
mov rdx, qword [rbp + 0x2a0]
cmp rdx, 0x10
jb 0x1402d49bb
inc rdx
mov rcx, qword [rbp + 0x288]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d49b6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d512c
call fcn.140171af0
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp + 0x298], xmm0
mov byte [rbp + 0x288], 0
mov rcx, qword [rbp + 0x228]
test rcx, rcx
je 0x1402d4a24
lea r8, [rbp + 0x228]
mov rdx, qword [rbp + 0x230]
call fcn.1402d3ba0
mov r8, qword [rbp + 0x238]
mov rdx, qword [rbp + 0x228]
sub r8, rdx
sar r8, 3
lea rcx, [rbp + 0x228]
call fcn.140070b80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x228], xmm0
mov qword [rbp + 0x238], r15
lea rcx, [rbp + 0x2c8]
call fcn.1402c7900
nop
lea rcx, [rbp + 0x268]
call fcn.14000a960
nop
lea rcx, [rbp + 0x240]
call fcn.14000a960
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x1402d4a68
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
test esi, esi
jne 0x1402d4a74
mov rcx, r13
call fcn.1402d65d0
mov eax, esi
mov rcx, qword [rbp + 0x770]
xor rcx, rsp
call fcn.140172190
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.1402c9cd0
nop
lea rdx, [rbp + 0x288]
lea rcx, [rbp + 0x190]
call fcn.1402c73f0
nop
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp - 0x48], xmm0
mov byte [rbp - 0x58], 0
lea r8d, [rsi + 4]
lea rdx, str.CSVer
lea rcx, [rbp - 0x58]
call fcn.14000c230
nop
lea rdx, [rbp - 0x58]
lea rcx, [rbp + 0x2f0]
call fcn.1402c9df0
mov rcx, rax
lea rdx, [rbp + 0x190]
call fcn.1402c79d0
nop
mov rdx, qword [rbp - 0x40]
cmp rdx, 0x10
jb 0x1402d4b72
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d4b6d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d51c4
call fcn.140171af0
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp - 0x48], xmm0
mov byte [rbp - 0x58], 0
lea rcx, [rbp + 0x190]
call fcn.1402c7900
lea rdx, [rbp + 0x2a8]
lea rcx, [rbp + 0x1b8]
call fcn.1402c73f0
nop
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], 0
mov r8d, 6
lea rdx, str.CSList
lea rcx, [rbp - 0x80]
call fcn.14000c230
nop
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x2f0]
call fcn.1402c9df0
mov rcx, rax
lea rdx, [rbp + 0x1b8]
call fcn.1402c79d0
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x1402d4c26
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d4c21
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d51ca
call fcn.140171af0
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], 0
lea rcx, [rbp + 0x1b8]
call fcn.1402c7900
xor edx, edx
lea rcx, [rbp + 0x1e0]
call fcn.1402c7450
nop
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp - 8], xmm0
mov byte [rbp - 0x18], 0
mov r8d, listen
lea rdx, str.CheckFailCnt
lea rcx, [rbp - 0x18]
call fcn.14000c230
nop
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 0x2f0]
call fcn.1402c9df0
mov rcx, rax
lea rdx, [rbp + 0x1e0]
call fcn.1402c79d0
nop
mov rdx, qword [rbp]
cmp rdx, 0x10
jb 0x1402d4cd5
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d4cd0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d51d0
call fcn.140171af0
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp - 8], xmm0
mov byte [rbp - 0x18], 0
lea rcx, [rbp + 0x1e0]
call fcn.1402c7900
xor r15d, r15d
mov qword [rbp + 0x260], r15
mov rbx, qword [str.__5_]
call fcn.14000b190
mov rcx, rax
test rax, rax
je 0x1402d51d6
mov rax, qword [rax]
call qword [rax + SafeArrayCopy]
add rax, 0x18
mov qword [rsp + 0x60], rax
test rbx, rbx
je 0x1402d4d4f
cmp rbx, 0x10000
jae 0x1402d4d40
movzx edx, bx
lea rcx, [rsp + 0x60]
call fcn.14000b690
jmp 0x1402d4d63
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x1402d4d43
jmp 0x1402d4d52
mov eax, r15d
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.140010860
nop
lea rdx, [rbp + 0x2a8]
cmp qword [rbp + 0x2c0], 0x10
cmovae rdx, qword [rbp + 0x2a8]
mov r8d, 0xfde9
lea rcx, [rbp + 0x108]
call fcn.140245990
mov rbx, rax
cmp qword [rax + 0x18], 8
jb 0x1402d4d99
mov rbx, qword [rax]
call fcn.14000b190
mov rcx, rax
test rax, rax
je 0x1402d51e1
mov rax, qword [rax]
call qword [rax + SafeArrayCopy]
add rax, 0x18
mov qword [rsp + 0x58], rax
test rbx, rbx
je 0x1402d4dec
cmp rbx, 0x10000
jae 0x1402d4dd6
movzx edx, bx
lea rcx, [rsp + 0x58]
call fcn.14000b690
jmp 0x1402d4e00
mov rax, rdi
nop dword [rax]
inc rax
cmp word [rbx + rax*2], 0
jne 0x1402d4de0
jmp 0x1402d4def
mov eax, r15d
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x58]
call fcn.140010860
nop
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x58]
lea rcx, [rbp + 0x260]
call fcn.140173640
nop
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1402d4e36
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 0x120]
cmp rdx, 8
jb 0x1402d4e7c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d4e77
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d51ec
call fcn.140171af0
movdqa xmm0, xmmword [0x1402ecd10]
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 0x1402d4eb2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
movdqa xmm0, xmmword [0x1402eb9c0]
movdqu xmmword [rbp + 0x98], xmm0
mov byte [rbp + 0x88], 0
xor r8d, r8d
lea rdx, [0x1402eb7f8]
lea rcx, [rbp + 0x88]
call fcn.14000c230
nop
lea r8, [rbp + 0x88]
lea rdx, [rbp + 0x208]
lea rcx, [rbp + 0x2f0]
call fcn.1402ca740
mov rdx, rax
mov rcx, r13
call fcn.1402d68f0
nop
mov rdx, qword [rbp + 0xa0]
cmp rdx, 0x10
jb 0x1402d4f47
inc rdx
mov rcx, qword [rbp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d4f42
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d51f2
call fcn.140171af0
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.140245990
mov rbx, rax
call fcn.14000b190
mov rcx, rax
test rax, rax
je 0x1402d51f8
mov rax, qword [rax]
call qword [rax + SafeArrayCopy]
add rax, 0x18
mov qword [rsp + 0x68], rax
lea r14, str.SOFTWAREComMaster
cmp r14, 0x10000
jae 0x1402d4fbd
movzx edx, r14w
lea rcx, [rsp + 0x68]
call fcn.14000b690
jmp 0x1402d4fdc
mov rax, rdi
inc rax
cmp word [r14 + rax*2], 0
jne 0x1402d4fc0
mov r8d, eax
mov rdx, r14
lea rcx, [rsp + 0x68]
call fcn.140010860
nop
cmp qword [rbx + 0x18], 8
jb 0x1402d4fe6
mov rbx, qword [rbx]
mov qword [rsp + 0x20], rbx
lea r9, [0x1403523e8]
lea r8, [rsp + 0x68]
mov rdx, 0xffffffff80000002
mov rcx, r13
call fcn.1402d64d0
nop
mov rdx, qword [rbp + 0x188]
cmp rdx, 8
jb 0x1402d504d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x170]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402d5048
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402d5203
call fcn.140171af0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x38], rax
call fcn.14000b190
mov rcx, rax
test rax, rax
je 0x1402d5209
mov rax, qword [rax]
call qword [rax + SafeArrayCopy]
add rax, 0x18
mov qword [rsp + 0x70], rax
cmp r14, 0x10000
jae 0x1402d5090
movzx edx, r14w
lea rcx, [rsp + 0x70]
call fcn.14000b690
jmp 0x1402d50af
mov rax, rdi
inc rax
cmp word [r14 + rax*2], 0
jne 0x1402d5093
mov r8d, eax
mov rdx, r14
lea rcx, [rsp + 0x70]
call fcn.140010860
nop
mov rax, qword [rbp + 0x260]
mov qword [rsp + 0x20], rax
lea r9, [0x1403523f8]
lea r8, [rsp + 0x70]
mov rdx, 0xffffffff80000002
mov rcx, r13
call fcn.1402d64d0
nop
mov rdx, qword [rbp + 0x260]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1402d50f8
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rbp + 0x2f0]
call fcn.1402c7900
nop
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1402d4915
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x1402d4915
call fcn.14028c66c
nop
call fcn.14028c66c
nop
mov ecx, 0x80004005
call fcn.14000adf0
nop
call fcn.14028c66c
int3
call fcn.14028c66c
nop
mov ecx, 0x80004005
call fcn.14000adf0
nop
mov ecx, 0x80004005
call fcn.14000adf0
nop
call fcn.14028c66c
nop
call fcn.14028c66c
nop
call fcn.14028c66c
nop
call fcn.14028c66c
nop
call fcn.14028c66c
nop
call fcn.14028c66c
nop
call fcn.14028c66c
int3
call fcn.14028c66c
nop
call fcn.14028c66c
nop
call fcn.14028c66c
nop
call fcn.14028c66c
nop
call fcn.14028c66c
nop
call fcn.14028c66c
nop
mov ecx, 0x80004005
call fcn.14000adf0
nop
call fcn.14028c66c
nop
call fcn.14028c66c
nop
call fcn.14028c66c
nop
call fcn.14028c66c
nop
mov ecx, 0x80004005
call fcn.14000adf0
nop
mov ecx, 0x80004005
call fcn.14000adf0
nop
call fcn.14028c66c
nop
call fcn.14028c66c
nop
mov ecx, 0x80004005
call fcn.14000adf0
nop
call fcn.14028c66c
int3
mov ecx, 0x80004005
call fcn.14000adf0
nop
mov ecx, 0x80004005
call fcn.14000adf0
nop
call fcn.14000bf60
int3
push rbx
sub rsp, 0x20
mov rbx, rcx
add rcx, 8
test rdx, rdx
jne 0x1402d6086
xor eax, eax
jmp 0x1402d609a
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x1402d6090
mov r8d, eax
call fcn.140010860
mov r8, qword [str.8_5_]
xor edx, edx
mov ecx, 0xf001f
call qword [sym.imp.KERNEL32.dll_OpenFileMappingW]
mov qword [rbx], rax
mov rcx, rbx
test rax, rax
je 0x1402d60cd
call fcn.1402d5920
test eax, eax
jne 0x1402d60e3
mov rcx, rbx
call fcn.1402d5230
test eax, eax
jne 0x1402d60e3
mov rcx, rbx
add rsp, 0x20
pop rbx
jmp 0x1402d3c40
add rsp, 0x20
pop rbx
ret