Function at 0x14002ea80
Capabilities:
Check if file exists
Create directory

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xa070]
mov eax, 0xa170
call fcn.140243620
sub rsp, rax
mov rax, qword [0x14036e3c8]
xor rax, rsp
mov qword [rbp + 0xa060], rax
mov r14, rcx
xor r13d, r13d
mov edi, r13d
mov dword [rsp + 0x30], r13d
mov rcx, qword [rcx]
test rcx, rcx
je 0x14002eaf8
lea r8, [0x140368428]
cmp qword [reloc.WS2_32.dll_getsockopt], 8
cmovae r8, qword [0x140368428]
xor r9d, r9d
mov edx, 0x603
call fcn.140077720
cmp byte [r14 + 0x6c], dil
je 0x14002ec89
mov esi, r13d
nop word [rax + rax]
lea rdx, str.MagicMonitorLoaderx64.exe
lea rcx, [rbp - 0x40]
call fcn.14002e130
mov rcx, rax
or edi, 1
mov dword [rsp + 0x30], edi
mov rax, qword [rax + 8]
sub rax, qword [rcx]
sar rax, 2
test rax, rax
jne 0x14002eb66
lea rdx, str.MagicMonitorLoaderx86.exe
lea rcx, [rsp + 0x68]
call fcn.14002e130
or edi, 2
mov dword [rsp + 0x30], edi
mov rcx, qword [rax + 8]
sub rcx, qword [rax]
sar rcx, 2
test rcx, rcx
jne 0x14002eb66
xor bl, bl
jmp 0x14002eb68
mov bl, 1
test dil, 2
je 0x14002ebcb
and edi, 0xfffffffd
mov dword [rsp + 0x30], edi
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x14002ebcb
mov rax, qword [rsp + 0x78]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ebb8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003003b
call fcn.1402434a4
mov qword [rsp + 0x68], r13
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
test dil, 1
je 0x14002ec1e
and edi, 0xfffffffe
mov dword [rsp + 0x30], edi
mov rcx, qword [rbp - 0x40]
test rcx, rcx
je 0x14002ec1e
mov rax, qword [rbp - 0x30]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ec19
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030041
call fcn.1402434a4
test bl, bl
je 0x14002ec89
lea r8, [0x140284a60]
lea rdx, [0x140284a60]
lea rcx, str._Extend_projection__exit_process
call fcn.140039ff0
lea r9, str.GlobalDB3671D1_11BA_4F21_A97D_A632EFD7B0A4
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
inc esi
cmp esi, 3
jl 0x14002eb10
lea r8, [0x140284a60]
lea rdx, [0x140284a60]
lea rcx, str._Extend_projection__exit_process_failed
call fcn.140039ff0
xor edx, edx
mov r8d, 0x4e20
lea rcx, [rbp + 0x420]
call fcn.140245f10
xor edx, edx
mov r8d, 0x4e20
lea rcx, [rbp + 0x5240]
call fcn.140245f10
cmp byte [r14 + 0x6b], 0
jne 0x14002ecd0
lea r8, [0x1402895a0]
mov edx, 0x2710
lea rcx, [rbp + 0x420]
call fcn.140259008
mov r8, qword [r14 + 0x78]
mov edx, 0x2710
lea rcx, [rbp + 0x420]
call fcn.140258f88
lea r8, [0x1402895a0]
mov edx, 0x2710
lea rcx, [rbp + 0x5240]
call fcn.140259008
lea r12, [r14 + 0x80]
mov r8, qword [r12]
mov edx, 0x2710
lea rcx, [rbp + 0x5240]
call fcn.140258f88
lea rdx, [r14 + 0x10]
mov dword [rdx], r13d
mov dword [r14 + 0xc], r13d
lea rcx, [rbp + 0x420]
call fcn.14002a800
mov rcx, qword [r12]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x14002edcf
xor edx, edx
mov rcx, qword [r12]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x14002edcf
lea r8, [0x140284a60]
mov rdx, qword [r12]
lea rcx, str.createDirectory_error
call fcn.140039ff0
mov rcx, qword [r14]
test rcx, rcx
je 0x14002edc8
lea r8, [0x140368568]
cmp qword [reloc.WS2_32.dll_getsockopt], 8
cmovae r8, qword [0x140368568]
mov ebx, 1
mov r9d, ebx
mov edx, 0x603
call fcn.140077720
lea r9, str.retryBtn
mov r8d, ebx
mov edx, 0x604
mov rcx, qword [r14]
call fcn.140077720
lea r9, str.urlBtn
mov r8d, ebx
mov edx, 0x604
mov rcx, qword [r14]
call fcn.140077720
xor eax, eax
jmp 0x14002ffff
mov qword [rbp + 0xf8], r13
mov qword [rbp + 0x108], r13
mov qword [rbp + 0x110], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0xf8], 0
call fcn.140240de8
mov rbx, rax
call fcn.140240dcc
cqo
idiv rbx
imul r15, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add r15, rax
mov rsi, 0xffffffffffffffff
cmp byte [r14 + 0x6a], 0
jne 0x14002ee4b
lea r9, [rbp + 0xf8]
lea r8, [rbp + 0x5240]
lea rdx, [rbp + 0x420]
mov rcx, r14
call fcn.14002a470
mov dword [rsp + 0x38], eax
jmp 0x14002f069
cmp byte [r14 + 0x6b], 0
je 0x14002ef44
mov rdx, qword [r12]
mov qword [rbp + 0x118], r13
mov qword [rbp + 0x128], r13
mov qword [rbp + 0x130], 7
mov word [rbp + 0x118], r13w
mov r8, rsi
nop
inc r8
cmp word [rdx + r8*2], 0
jne 0x14002ee80
lea rcx, [rbp + 0x118]
call fcn.14000a430
nop
or edi, 4
mov dword [rsp + 0x30], edi
mov rdx, qword [r14 + 0x78]
mov qword [rbp + 0x58], r13
mov qword [rbp + 0x68], r13
mov qword [rbp + 0x70], 7
mov word [rbp + 0x58], r13w
mov r8, rsi
nop dword [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x14002eec0
lea rcx, [rbp + 0x58]
call fcn.14000a430
nop
or edi, 8
mov dword [rsp + 0x30], edi
mov rdx, qword [r14 + 0x88]
mov qword [rbp + 0x38], r13
mov qword [rbp + 0x48], r13
mov qword [rbp + 0x50], 7
mov word [rbp + 0x38], r13w
mov r8, rsi
nop dword [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x14002ef00
lea rcx, [rbp + 0x38]
call fcn.14000a430
nop
or edi, 0x10
mov dword [rsp + 0x30], edi
lea rax, [rbp + 0xf8]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x118]
lea r8, [rbp + 0x58]
lea rdx, [rbp + 0x38]
mov rcx, r14
call fcn.14001d9a0
movzx eax, al
jmp 0x14002ef62
lea r9, [rbp + 0xf8]
lea r8, [rbp + 0x5240]
lea rdx, [rbp + 0x420]
mov rcx, r14
call fcn.140031020
nop
mov dword [rsp + 0x38], eax
test dil, 0x10
je 0x14002efc0
and edi, 0xffffffef
mov rdx, qword [rbp + 0x50]
cmp rdx, 8
jb 0x14002efaf
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002efaa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030047
call fcn.1402434a4
mov qword [rbp + 0x48], r13
mov qword [rbp + 0x50], 7
mov word [rbp + 0x38], r13w
test dil, 8
je 0x14002f01a
and edi, 0xfffffff7
mov rdx, qword [rbp + 0x70]
cmp rdx, 8
jb 0x14002f009
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f004
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003004d
call fcn.1402434a4
mov qword [rbp + 0x68], r13
mov qword [rbp + 0x70], 7
mov word [rbp + 0x58], r13w
test dil, 4
je 0x14002f069
and edi, 0xfffffffb
mov rdx, qword [rbp + 0x130]
cmp rdx, 8
jb 0x14002f069
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x118]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f064
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030053
call fcn.1402434a4
call fcn.140240de8
mov rbx, rax
call fcn.140240dcc
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
lea rbx, [rax + rcx]
cmp dword [rsp + 0x38], 0
jne 0x14002f0ad
cmp byte [r14 + 0x6a], 0
jne 0x14002f0ad
mov edx, 7
mov rcx, r14
call fcn.140026220
sub rbx, r15
movabs rax, 0x431bde82d7b634db
imul rbx
mov rcx, rdx
sar rcx, 0x12
mov rax, rcx
shr rax, 0x3f
add rcx, rax
mov qword [rsp + 0x50], rcx
mov rdx, qword [r14 + 0x40]
lea rcx, [rbp + 0x178]
call fcn.140039a30
nop
lea rdx, [rbp + 0x178]
mov r9, qword [rbp + 0x178]
mov r10, qword [rbp + 0x190]
cmp r10, 0x10
cmovae rdx, r9
movabs r11, 0x7fffffffffffffff
mov r8, qword [rbp + 0x188]
test r8, r8
je 0x14002f265
lea rax, [r8 - 1]
mov rcx, rsi
cmp rax, rcx
cmovb rcx, rax
add rcx, rdx
cmp byte [rcx], 0x2e
je 0x14002f142
cmp rcx, rdx
je 0x14002f265
dec rcx
cmp byte [rcx], 0x2e
jne 0x14002f131
sub rcx, rdx
cmp rcx, 0xffffffffffffffff
je 0x14002f265
mov qword [rbp + 0x18], r13
mov qword [rbp + 0x30], reloc.WS2_32.dll_ntohs
cmp r8, rcx
jb 0x140030059
sub r8, rcx
mov r15, rsi
cmp r8, rsi
cmovb r15, r8
lea r13, [rbp + 0x178]
cmp r10, 0x10
cmovae r13, r9
add r13, rcx
cmp r15, 0xf
ja 0x14002f1b4
mov qword [rbp + 0x28], r15
mov r8, r15
mov rdx, r13
lea rcx, [rbp + 0x18]
call fcn.140245860
mov byte [rbp + r15 + 0x18], 0
lea rax, [rbp + 0x18]
or edi, 0x220
xor r13d, r13d
jmp 0x14002f288
cmp r15, r11
ja 0x14003005f
mov rbx, r15
or rbx, 0xf
cmp rbx, r11
jbe 0x14002f1f6
mov rbx, r11
movabs rax, 0x8000000000000027
mov rcx, rax
call fcn.140242f80
test rax, rax
je 0x14003008f
lea r12, [rax + 0x27]
and r12, 0xffffffffffffffe0
mov qword [r12 - 8], rax
jmp 0x14002f230
mov eax, reloc.WS2_32.dll_shutdown
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x14002f21e
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140030035
jmp 0x14002f1d6
test rcx, rcx
je 0x14002f22d
call fcn.140242f80
mov r12, rax
jmp 0x14002f230
xor r12d, r12d
mov qword [rbp + 0x28], r15
mov qword [rbp + 0x30], rbx
mov r8, r15
mov rdx, r13
mov rcx, r12
call fcn.140245860
mov byte [r12 + r15], 0
mov qword [rbp + 0x18], r12
lea r12, [r14 + 0x80]
lea rax, [rbp + 0x18]
or edi, 0x220
xor r13d, r13d
jmp 0x14002f288
mov qword [rbp + 0x198], r13
mov qword [rbp + 0x1a8], r13
mov qword [rbp + 0x1b0], reloc.WS2_32.dll_ntohs
lea rax, [rbp + 0x198]
or edi, 0x40
mov dword [rsp + 0x30], edi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x138], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x148], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
test dil, 0x40
je 0x14002f2fe
and edi, 0xffffffbf
mov dword [rsp + 0x30], edi
mov rdx, qword [rbp + 0x1b0]
cmp rdx, 0x10
jb 0x14002f2fe
inc rdx
mov rcx, qword [rbp + 0x198]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f2f9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030089
call fcn.1402434a4
test dil, 0x20
je 0x14002f33f
mov rdx, qword [rbp + 0x30]
cmp rdx, 0x10
jb 0x14002f33f
inc rdx
mov rcx, qword [rbp + 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f33a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030089
call fcn.1402434a4
mov qword [rbp + 0xd8], r13
mov qword [rbp + 0xe8], r13
mov qword [rbp + reloc.WS2_32.dll_ntohs0], 0xf
mov byte [rbp + 0xd8], 0
cmp byte [r14 + 0x6d], 0
je 0x14002f48f
mov rcx, qword [r12]
sub rcx, 0x18
call fcn.14000d080
add rax, 0x18
mov qword [rsp + 0x48], rax
lea rdx, str.configurations_staticconfig.xml
mov rax, rsi
nop word [rax + rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x14002f390
mov r8d, eax
lea rcx, [rsp + 0x48]
call fcn.1400127b0
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x40]
call fcn.14000d240
nop
mov rdx, qword [rsp + 0x40]
lea rcx, [rbp + 0x3e0]
call fcn.140039a30
lea rcx, [rbp + 0xd8]
cmp rcx, rax
je 0x14002f3f8
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xd8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xe8], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov rdx, qword [rbp + 0x3f8]
cmp rdx, 0x10
jb 0x14002f439
inc rdx
mov rcx, qword [rbp + 0x3e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f434
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030065
call fcn.1402434a4
lea r8, [0x140284a60]
lea rdx, str.Get_Update_Version
mov rcx, qword [rsp + 0x40]
call fcn.140039ff0
nop
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14002f471
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14002f48f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
call fcn.140066c20
mov r13, rax
mov dword [rbp - 0x80], 0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
mov ecx, 0x50
call fcn.140242f80
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp - 0x78], rax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x68], xmm0
xor ebx, ebx
mov qword [rbp - 0x58], rbx
mov qword [rbp - 0x50], 7
mov qword [rbp - 0x48], 8
movss xmm0, dword [0x1402865a4]
movss dword [rbp - 0x80], xmm0
mov r8, rax
lea edx, [rbx + 0x10]
lea rcx, [rbp - 0x68]
call fcn.140014cc0
nop
lea rax, [0x1402897b0]
lea r15, [0x1402897d0]
mov rdx, r15
cmp byte [r14 + 0x6b], bl
cmovne rdx, rax
mov qword [rbp + 0x1f8], reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x1f0], reloc.WLDAP32.dll_Ordinal_14
movsd xmm0, qword [str.enable_improve]
movsd qword [rbp + 0x1e0], xmm0
mov eax, dword [0x14028a2e0]
mov dword [rbp + 0x1e8], eax
movzx eax, word [0x14028a2e4]
mov word [rbp + 0x1ec], ax
mov byte [rbp + 0x1ee], bl
mov qword [rbp + 0x200], rbx
movdqa xmm0, xmmword [0x1402865c0]
movdqa xmmword [rbp + 0x210], xmm0
mov byte [rbp + 0x200], bl
mov r8, rsi
inc r8
cmp byte [rdx + r8], 0
jne 0x14002f575
lea rcx, [rbp + 0x200]
call fcn.1400079c0
nop
mov qword [rbp + 0x238], reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x230], 9
movsd xmm0, qword [str.extension]
movsd qword [rbp + 0x220], xmm0
movzx eax, byte [0x14028a2f0]
mov byte [rbp + 0x228], al
mov byte [rbp + 0x229], 0
mov qword [rbp + 0x240], rbx
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x250], xmm0
lea r12, [rbp + 0x138]
cmp qword [rbp + 0x150], 0x10
cmovae r12, qword [rbp + 0x138]
mov rdi, qword [rbp + 0x148]
cmp rdi, 0x10
jae 0x14002f615
movups xmm0, xmmword [r12]
movaps xmmword [rbp + 0x240], xmm0
mov qword [rbp + 0x258], reloc.WS2_32.dll_ntohs
jmp 0x14002f694
mov rbx, rdi
or rbx, 0xf
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
cmova rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x14002f669
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14003006b
mov rcx, rax
call fcn.140242f80
mov rcx, rax
test rax, rax
je 0x140030071
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14002f677
test rcx, rcx
je 0x14002f675
call fcn.140242f80
jmp 0x14002f677
xor eax, eax
mov qword [rbp + 0x240], rax
lea r8, [rdi + 1]
mov rdx, r12
mov rcx, rax
call fcn.140245860
mov qword [rbp + 0x258], rbx
mov qword [rbp + 0x250], rdi
lea rax, [0x14028a2f4]
lea rbx, str.full
cmp byte [r14 + 0x6a], 0
cmovne rbx, rax
xor r12d, r12d
mov qword [rbp + 0x260], r12
movdqa xmm0, xmmword [0x1402865c0]
movdqa xmmword [rbp + 0x270], xmm0
mov byte [rbp + 0x260], r12b
lea r8d, [r12 + 0xc]
lea rdx, str.upgrade_type
lea rcx, [rbp + 0x260]
call fcn.1400079c0
nop
mov qword [rbp + 0x280], r12
movdqa xmm0, xmmword [0x1402865c0]
movdqa xmmword [rbp + 0x290], xmm0
mov byte [rbp + 0x280], r12b
mov r8, rsi
nop dword [rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x14002f710
mov rdx, rbx
lea rcx, [rbp + 0x280]
call fcn.1400079c0
nop
mov edi, dword [rsp + 0x38]
test edi, edi
lea rax, [0x1402897b0]
cmovne r15, rax
mov qword [rbp + 0x2a0], r12
movdqa xmm0, xmmword [0x1402865c0]
movdqa xmmword [rbp + 0x2b0], xmm0
mov byte [rbp + 0x2a0], 0
mov r8d, 6
lea rdx, str.result
lea rcx, [rbp + 0x2a0]
call fcn.1400079c0
nop
mov qword [rbp + 0x2c0], r12
movdqa xmm0, xmmword [0x1402865c0]
movdqa xmmword [rbp + 0x2d0], xmm0
mov byte [rbp + 0x2c0], 0
mov r8, rsi
inc r8
cmp byte [r15 + r8], 0
jne 0x14002f794
mov rdx, r15
lea rcx, [rbp + 0x2c0]
call fcn.1400079c0
nop
mov qword [rbp + 0x2e0], r12
movdqa xmm0, xmmword [0x1402865c0]
movdqa xmmword [rbp + 0x2f0], xmm0
mov byte [rbp + 0x2e0], 0
mov r8d, reloc.WS2_32.dll_listen
lea rdx, str.error_message
lea rcx, [rbp + 0x2e0]
call fcn.1400079c0
nop
lea rdx, [rbp + 0xf8]
lea rcx, [rbp + 0x300]
call fcn.140003520
nop
mov rdx, qword [rsp + 0x50]
lea rcx, [rbp + 0x158]
call fcn.1400323d0
mov rbx, rax
mov qword [rbp + 0x320], r12
movdqa xmm0, xmmword [0x1402865c0]
movdqa xmmword [rbp + 0x330], xmm0
mov byte [rbp + 0x320], 0
mov r8d, 8
lea rdx, str.duration
lea rcx, [rbp + 0x320]
call fcn.1400079c0
mov qword [rbp + 0x340], r12
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x350], xmm0
movups xmm1, xmmword [rbx]
movaps xmmword [rbp + 0x340], xmm1
movups xmm0, xmmword [rbx + 0x10]
movaps xmmword [rbp + 0x350], xmm0
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], 0
call fcn.140240f70
mov edx, eax
lea rcx, [rbp + 0x415]
call fcn.14001b390
mov qword [rbp + 0xb8], r12
mov qword [rbp + 0xc8], r12
mov qword [rbp + 0xd0], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0xb8], 0
lea rcx, [rbp + 0x415]
cmp rax, rcx
je 0x14002f8d4
lea r8, [rbp + 0x415]
sub r8, rax
mov rdx, rax
lea rcx, [rbp + 0xb8]
call fcn.1400079c0
nop
mov qword [rbp + 0x360], r12
movdqa xmm0, xmmword [0x1402865c0]
movdqa xmmword [rbp + 0x370], xmm0
mov byte [rbp + 0x360], 0
mov r8d, 9
lea rdx, str.cpu_count
lea rcx, [rbp + 0x360]
call fcn.1400079c0
movups xmm0, xmmword [rbp + 0xb8]
movaps xmmword [rbp + 0x380], xmm0
movups xmm1, xmmword [rbp + 0xc8]
movaps xmmword [rbp + 0x390], xmm1
mov qword [rbp + 0xc8], r12
mov qword [rbp + 0xd0], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0xb8], 0
mov qword [rbp + 0x3a0], r12
movdqa xmm0, xmmword [0x1402865c0]
movdqa xmmword [rbp + 0x3b0], xmm0
mov byte [rbp + 0x3a0], 0
mov r8d, reloc.WLDAP32.dll_Ordinal_14
lea rdx, str.update_version
lea rcx, [rbp + 0x3a0]
call fcn.1400079c0
nop
lea rdx, [rbp + 0xd8]
lea rcx, [rbp + 0x3c0]
call fcn.140003520
nop
mov dword [rsp + 0x38], 0
lea r8, [rsp + 0x3c]
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x28]
call fcn.140011fe0
nop
lea r8, [rbp + 0x3e0]
lea rdx, [rbp + 0x1e0]
lea rcx, [rbp - 0x28]
call fcn.140011b40
nop
mov qword [rbp + 0x98], r12
mov qword [rbp + 0xa8], r12
mov qword [rbp + 0xb0], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x98], 0
mov r8d, reloc.WLDAP32.dll_Ordinal_14
lea rdx, str.upgrade_report
lea rcx, [rbp + 0x98]
call fcn.1400079c0
nop
mov qword [rbp + 0x78], r12
mov qword [rbp + 0x88], r12
mov qword [rbp + 0x90], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x78], 0
mov r8d, reloc.WS2_32.dll_ntohs
lea rdx, str.windows_updater
lea rcx, [rbp + 0x78]
call fcn.1400079c0
nop
lea rax, [rbp - 0x80]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x28]
lea r8, [rbp + 0x98]
lea rdx, [rbp + 0x78]
mov rcx, r13
call fcn.140067c20
nop
mov rdx, qword [rbp + 0x90]
cmp rdx, 0x10
jb 0x14002fa8a
inc rdx
mov rcx, qword [rbp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002fa85
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030077
call fcn.1402434a4
mov qword [rbp + 0x88], r12
mov qword [rbp + 0x90], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x78], 0
mov rdx, qword [rbp + 0xb0]
cmp rdx, 0x10
jb 0x14002fae1
inc rdx
mov rcx, qword [rbp + 0x98]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002fadc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003007d
call fcn.1402434a4
mov qword [rbp + 0xa8], r12
mov qword [rbp + 0xb0], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x98], 0
lea rcx, [rbp - 0x28]
call fcn.1400120e0
nop
lea r9, [fcn.140012250]
mov edx, 0x40
lea r8d, [rdx - 0x38]
lea rcx, [rbp + 0x1e0]
call fcn.140243680
nop
mov r8, qword [rbp + 0x170]
cmp r8, 0x10
jb 0x14002fb44
inc r8
mov rdx, qword [rbp + 0x158]
lea rcx, [rbp + 0x158]
call fcn.140007d10
mov qword [rbp + 0x168], r12
mov qword [rbp + 0x170], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x158], 0
lea rcx, [rbp - 0x80]
call fcn.1400120e0
call fcn.140066c20
mov rcx, rax
call fcn.140066b10
test edi, edi
je 0x14002fe75
lea rcx, [rsp + 0x50]
call fcn.140037530
nop
mov r8, qword [rax]
lea rdx, str.Updater:
lea rcx, str.CopyFiles:_succeed__Start_Check_Updated_Dir
call fcn.140039ff0
nop
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14002fbbb
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
mov dl, 1
lea rcx, [r14 + 0x80]
call fcn.14001de50
test al, al
je 0x14002fc87
mov rdx, qword [r14 + 0x80]
mov qword [rbp + 0x1b8], r12
mov qword [rbp + 0x1c8], r12
mov qword [rbp + 0x1d0], 7
mov r8, rsi
inc r8
cmp word [rdx + r8*2], 0
jne 0x14002fbf4
lea rcx, [rbp + 0x1b8]
call fcn.14000a430
mov rdx, qword [rbp + 0x1d0]
cmp rdx, 8
jb 0x14002fc51
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x1b8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002fc4c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030083
call fcn.1402434a4
mov edx, 9
mov rcx, r14
call fcn.140026220
lea rcx, [rsp + 0x58]
call fcn.140037530
nop
mov r8, qword [rax]
lea rdx, str.Updater:
lea rcx, str.CheckFiles:_succeed
call fcn.140039ff0
nop
mov rdx, qword [rsp + 0x58]
jmp 0x14002fcd1
mov edx, 8
mov rcx, r14
call fcn.140026220
cmp byte [r14 + 0x69], 0
jne 0x14002fe51
cmp byte [r14 + 0x6a], 0
jne 0x14002fe51
lea rcx, [rsp + 0x60]
call fcn.140037530
nop
mov r8, qword [rax]
lea rdx, str.Updater:
lea rcx, str.CheckFiles:_Failed__just_log
call fcn.140039ff0
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14002fcea
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
call fcn.1400390f0
lea rcx, [rsp + 0x30]
test al, al
jne 0x14002fd3a
call fcn.140037530
nop
mov r8, qword [rax]
lea rdx, [0x140284a60]
lea rcx, str.set_update_dir_error
call fcn.140039ff0
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x14002fecd
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
jmp 0x14002fecd
call fcn.140037530
nop
mov r8, qword [rax]
lea rdx, [0x140284a60]
lea rcx, str.set_update_dir_ok
call fcn.140039ff0
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x14002fd73
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
xor r8d, r8d
lea rdx, [0x140368870]
lea rcx, [0x140368070]
call fcn.140009c00
lea r8, [0x140284a60]
lea rdx, str.UpdatePlugin
lea rcx, str.UpdatePlugin_:_Is_not_big_customer_ver.
call fcn.140039ff0
mov rcx, qword [r14]
test rcx, rcx
je 0x14002fdbc
xor r9d, r9d
mov edx, 0x601
lea r8d, [r9 + 0x64]
call fcn.140077720
call fcn.1400263d0
call fcn.140020ef0
cmp byte [r14 + 0x6a], 0
je 0x14002fdd5
mov rcx, r14
call fcn.140024ce0
mov qword [rbp + 0x18], r12
mov qword [rbp + 0x28], r12
mov qword [rbp + 0x30], 7
mov word [rbp + 0x18], r12w
mov r8d, 7
lea rdx, str.success
lea rcx, [rbp + 0x18]
call fcn.14000a430
nop
lea r8, [rbp + 0x18]
lea rdx, [0x1403680d0]
lea rcx, [0x140368050]
call fcn.140009ee0
nop
mov r8, qword [rbp + 0x30]
cmp r8, 8
jb 0x14002fe33
inc r8
mov rdx, qword [rbp + 0x18]
lea rcx, [rbp + 0x18]
call fcn.140015220
lea rdx, str.success
mov rcx, r14
call fcn.140025d10
call fcn.140033c90
mov ebx, 1
jmp 0x14002ff2f
lea rcx, [rsp + 0x30]
call fcn.140037530
nop
mov r8, qword [rax]
lea rdx, str.Updater:
lea rcx, str.CheckFiles:_Failed__and_Quit_Update
call fcn.140039ff0
nop
jmp 0x14002fe97
lea rcx, [rsp + 0x30]
call fcn.140037530
nop
mov r8, qword [rax]
lea rdx, str.Updater:
lea rcx, str.CopyFiles:_Failed
call fcn.140039ff0
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x14002feb3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
lea r8, [rbp + 0x5240]
lea rdx, [rbp + 0x420]
lea rcx, str.copyFiles_error
call fcn.140039ff0
mov rcx, qword [r14]
test rcx, rcx
je 0x14002ff2c
mov ebx, 1
lea r8, [0x140368548]
cmp qword [reloc.WS2_32.dll_getsockopt], 8
mov r9d, ebx
cmovae r8, qword [0x140368548]
mov edx, 0x603
call fcn.140077720
lea r9, str.retryBtn
mov r8d, ebx
mov edx, 0x604
mov rcx, qword [r14]
call fcn.140077720
lea r9, str.urlBtn
mov r8d, ebx
mov edx, 0x604
mov rcx, qword [r14]
call fcn.140077720
mov ebx, r12d
mov rdx, qword [rbp + 0xf0]
cmp rdx, 0x10
jb 0x14002ff71
inc rdx
mov rcx, qword [rbp + 0xd8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ff6b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030089
call fcn.1402434a4
nop
mov rdx, qword [rbp + 0x150]
cmp rdx, 0x10
jb 0x14002ffb3
inc rdx
mov rcx, qword [rbp + 0x138]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ffad
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003008f
call fcn.1402434a4
nop
lea rcx, [rbp + 0x178]
call fcn.140004000
nop
mov rdx, qword [rbp + 0x110]
cmp rdx, 0x10
jb 0x14002fffd
inc rdx
mov rcx, qword [rbp + 0xf8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002fff8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003002f
call fcn.1402434a4
mov eax, ebx
mov rcx, qword [rbp + 0xa060]
xor rcx, rsp
call fcn.1402435c0
lea r11, [rsp + 0xa170]
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
call fcn.14024a84c
nop
call fcn.140007850
nop
call fcn.14024a84c
nop
call fcn.14024a84c
nop
call fcn.14024a84c
nop
call fcn.14024a84c
nop
call fcn.14024a84c
nop
call fcn.1400078b0
int3
call fcn.140007890
nop
call fcn.14024a84c
nop
call fcn.140007850
int3
call fcn.14024a84c
nop
call fcn.14024a84c
nop
call fcn.14024a84c
nop
call fcn.14024a84c
nop
call fcn.14024a84c
nop
call fcn.14024a84c
int3