Function at 0x1400234f0
Capabilities:
Print debug messages

Disassembly:
mov r11, rsp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x1f0
mov rax, qword [0x14009b0a0]
xor rax, rsp
mov qword [rsp + 0x1e0], rax
mov rax, r9
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], r8
mov r13, rdx
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0xb0], rax
xor esi, esi
mov qword [r11 - 0x80], rsi
mov qword [r11 - 0x70], rsi
mov qword [r11 - 0x68], 7
mov word [r11 - 0x80], si
xor r8d, r8d
lea rdx, [0x140089fa8]
lea rcx, [r11 - 0x80]
call fcn.140007cf0
nop
mov qword [rsp + 0x108], rsi
mov qword [rsp + 0x118], rsi
mov qword [rsp + 0x120], 7
lea r8d, [rsi + 5]
lea rdx, str.UPCKD
lea rcx, [rsp + 0x108]
call fcn.140007cf0
lea rdx, [rsp + 0x1a8]
lea rcx, [rsp + 0x108]
call fcn.14001b230
mov r15, qword [rsp + 0x1a8]
test al, al
je 0x1400236bb
lea r9, [rsp + 0x1a8]
mov rdi, qword [rsp + 0x1c0]
cmp rdi, 8
setae bl
cmovae r9, r15
cmp qword [rsp + 0x1b8], 1
jne 0x1400236bb
lea edx, [rsi + 1]
lea rax, [0x14008b40c]
movzx ecx, word [r9]
mov r8d, 0x31
cmp cx, r8w
jb 0x1400236bb
sub r9, rax
cmp cx, r8w
ja 0x1400236bb
cmp rdx, 1
je 0x140023637
dec rdx
add rax, 2
movzx ecx, word [rax + r9]
movzx r8d, word [rax]
cmp cx, r8w
jae 0x140023610
jmp 0x1400236bb
mov qword [rsp + 0x108], rsi
mov qword [rsp + 0x118], rsi
mov qword [rsp + 0x120], 0xf
mov r8d, 0x19
lea rdx, str.IsUpdateRequired_disabled
lea rcx, [rsp + 0x108]
call fcn.140007ec0
lea rcx, [rsp + 0x108]
call fcn.1400307e0
nop
test bl, bl
je 0x1400236b4
lea rdx, [rdi*2 + 2]
mov rax, r15
cmp rdx, 0x1000
jb 0x1400236ac
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140024450
mov rcx, r15
call fcn.140041080
xor al, al
jmp 0x140024141
mov qword [rsp + 0x148], rsi
mov qword [rsp + 0x158], rsi
mov qword [rsp + 0x160], 0xf
mov byte [rsp + 0x148], 0
xor r8d, r8d
lea rdx, [0x14008512b]
lea rcx, [rsp + 0x148]
call fcn.140007ec0
nop
mov qword [rsp + 0x128], rsi
mov qword [rsp + 0x138], rsi
mov qword [rsp + 0x140], 7
mov word [rsp + 0x128], si
xor r8d, r8d
lea rdx, [0x140089fa8]
lea rcx, [rsp + 0x128]
call fcn.140007cf0
nop
mov qword [rsp + 0x188], rsi
mov qword [rsp + 0x198], rsi
mov qword [rsp + 0x1a0], 7
mov word [rsp + 0x188], si
xor r8d, r8d
lea rdx, [0x140089fa8]
lea rcx, [rsp + 0x188]
call fcn.140007cf0
nop
mov dword [rsp + 0x78], esi
call fcn.140003370
lea rcx, [rax + 0xe0]
lea r8, [rsp + 0x188]
lea rdx, [rsp + 0x128]
call fcn.1400312a0
lea rdx, [rsp + 0x168]
call fcn.140024c40
nop
lea rdx, [rsp + 0xc8]
call fcn.140025780
nop
movabs r12, 0x7fffffffffffffff
mov rax, r12
mov rcx, qword [rsp + 0x178]
sub rax, rcx
cmp rax, 0x2a
jb 0x140024401
lea rax, [rsp + 0x168]
cmp qword [rsp + 0x180], 0x10
cmovae rax, qword [rsp + 0x168]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x2a
lea r9, str.IsUpdateRequired_Sending_updater_request:
lea rcx, [rsp + 0x50]
call fcn.14000a730
lea rcx, [rsp + 0x50]
call fcn.1400307e0
call fcn.140003370
lea rcx, [rax + 0xe0]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7ffffffffffffffe
sub rax, rdx
cmp rax, 0x24
jb 0x140024406
cmp qword [rcx + 0x18], 8
jb 0x14002384b
mov rcx, qword [rcx]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], 0x24
lea r9, str.IsUpdateRequired_update_server_URL:
lea rcx, [rsp + 0x108]
call fcn.14000a3f0
cmp byte [0x14009e9ba], 0
je 0x14002389b
lea rcx, [rsp + 0x108]
cmp qword [rsp + 0x120], 8
cmovae rcx, qword [rsp + 0x108]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov rdx, qword [rsp + 0x120]
cmp rdx, 8
jb 0x1400238e3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400238de
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002440b
call fcn.140041080
lea rax, [rsp + 0x108]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x108], rsi
mov qword [rsp + 0x118], rsi
mov qword [rsp + 0x120], 0xf
mov r8d, 0xe
lea rdx, str.Update_request
lea rcx, [rsp + 0x108]
call fcn.140007ec0
nop
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x98], 0xf
mov r8d, 0x19
lea rdx, str.Updater::IsUpdateRequired
lea rcx, [rsp + 0x80]
call fcn.140007ec0
nop
lea rdx, [rsp + 0x108]
lea rcx, [rsp + 0x80]
call fcn.140019ed0
lea rax, [rsp + 0x1c8]
mov qword [rsp + 0xc0], rax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x1c8], xmm0
mov qword [rsp + 0x1d8], rsi
mov rdi, qword [rsp + 0xc8]
mov r14, qword [rsp + 0xd0]
cmp rdi, r14
je 0x140023a9e
mov rsi, r14
sub rsi, rdi
sar rsi, 6
movabs rax, 0x3ffffffffffffff
cmp rsi, rax
ja 0x140024411
shl rsi, 6
cmp rsi, 0x1000
jb 0x140023a03
lea rcx, [rsi + 0x27]
cmp rcx, rsi
jbe 0x140024416
call fcn.140041088
test rax, rax
je 0x14002441b
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x140023a17
test rsi, rsi
je 0x140023a15
mov rcx, rsi
call fcn.140041088
mov rbx, rax
jmp 0x140023a17
xor ebx, ebx
mov qword [rsp + 0x1c8], rbx
mov qword [rsp + 0x1d0], rbx
lea rax, [rsi + rbx]
mov qword [rsp + 0x1d8], rax
lea rax, [rsp + 0x1c8]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x88], rbx
lea rax, [rsp + 0x1c8]
mov qword [rsp + 0x90], rax
cmp rdi, r14
je 0x140023a96
mov qword [rsp + 0x48], rbx
mov rdx, rdi
mov rcx, rbx
call fcn.140006d80
nop
lea rcx, [rbx + 0x20]
lea rdx, [rdi + 0x20]
call fcn.140006d80
nop
add rbx, 0x40
mov qword [rsp + 0x88], rbx
add rdi, 0x40
jmp 0x140023a60
mov qword [rsp + 0x1d0], rbx
lea rax, [rsp + 0x108]
mov qword [rsp + 0x48], rax
xor r14d, r14d
mov qword [rsp + 0x108], r14
mov qword [rsp + 0x118], r14
mov qword [rsp + 0x120], r14
mov rsi, qword [rsp + 0x178]
lea rdi, [rsp + 0x168]
cmp qword [rsp + 0x180], 0x10
cmovae rdi, qword [rsp + 0x168]
cmp rsi, 0x10
jae 0x140023aff
movups xmm0, xmmword [rdi]
movups xmmword [rsp + 0x108], xmm0
lea ebx, [r14 + 0xf]
jmp 0x140023b6f
mov rbx, rsi
or rbx, 0xf
cmp rbx, r12
cmova rbx, r12
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140023b49
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140024421
mov rcx, rax
call fcn.140041088
mov rcx, rax
test rax, rax
je 0x140024426
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140023b58
test rcx, rcx
je 0x140023b55
call fcn.140041088
jmp 0x140023b58
mov rax, r14
mov qword [rsp + 0x108], rax
lea r8, [rsi + 1]
mov rdx, rdi
mov rcx, rax
call fcn.140043510
mov qword [rsp + 0x118], rsi
mov qword [rsp + 0x120], rbx
lea rax, [rsp + 0x50]
mov qword [rsp + 0x70], rax
lea rdx, [rsp + 0x188]
lea rcx, [rsp + 0x50]
call fcn.140006d80
mov rbx, rax
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0xe8]
call fcn.140006d80
nop
lea rcx, [rsp + 0x78]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x148]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x1c8]
lea r8, [rsp + 0x108]
mov rdx, rbx
mov rcx, rax
call fcn.140030c60
test al, al
jne 0x140023d74
lea rax, [rsp + 0x80]
mov qword [rsp + 0x40], rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
lea r10, [rsp + 0x1dd]
nop dword [rax]
dec r10
mov eax, 0xcccccccd
mul r9d
shr edx, 3
movzx ecx, dl
shl cl, 2
lea r8d, [rcx + rdx]
add r8b, r8b
sub r9b, r8b
add r9b, 0x30
mov byte [r10], r9b
mov r9d, edx
test edx, edx
jne 0x140023c10
mov qword [rsp + 0x108], r14
mov qword [rsp + 0x118], r14
mov qword [rsp + 0x120], 0xf
mov byte [rsp + 0x108], dl
lea rax, [rsp + 0x1dd]
cmp r10, rax
je 0x140023c88
lea r8, [rsp + 0x1dd]
sub r8, r10
mov rdx, r10
lea rcx, [rsp + 0x108]
call fcn.140007ec0
nop
mov r9d, 0x28
lea r8, str.Failed_sending_update_required_request:
lea rcx, [rsp + 0x108]
call fcn.14000b550
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x90], r14
mov qword [rsp + 0x98], r14
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x90], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], 0xf
mov r8d, 0x10
lea rdx, str.IsUpdateRequired
lea rcx, [rsp + 0x50]
call fcn.140007ec0
nop
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x50]
call fcn.14001a180
nop
mov rdx, qword [rsp + 0x120]
cmp rdx, 0x10
jb 0x140023d61
inc rdx
mov rcx, qword [rsp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140023d5c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002442c
call fcn.140041080
mov rax, qword [rsp + 0xa0]
mov dword [rax], 1
jmp 0x140023f9d
mov r8d, dword [rsp + 0x78]
cmp r8d, 0xc8
je 0x140023f02
lea rax, [rsp + 0x80]
mov qword [rsp + 0x40], rax
lea r9, [rsp + 0x1dd]
nop dword [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x140023da0
mov qword [rsp + 0x108], r14
mov qword [rsp + 0x118], r14
mov qword [rsp + 0x120], 0xf
mov byte [rsp + 0x108], dl
lea rax, [rsp + 0x1dd]
cmp r9, rax
je 0x140023e16
lea r8, [rsp + 0x1dd]
sub r8, r9
mov rdx, r9
lea rcx, [rsp + 0x108]
call fcn.140007ec0
nop
mov r9d, 0x24
lea r8, str.Bad_HTTP_response_code_from_server:
lea rcx, [rsp + 0x108]
call fcn.14000b550
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x90], r14
mov qword [rsp + 0x98], r14
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x90], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], 0xf
mov r8d, 0x10
lea rdx, str.IsUpdateRequired
lea rcx, [rsp + 0x50]
call fcn.140007ec0
nop
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x50]
call fcn.14001a180
nop
mov rdx, qword [rsp + 0x120]
cmp rdx, 0x10
jb 0x140023eef
inc rdx
mov rcx, qword [rsp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140023eea
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140024432
call fcn.140041080
mov rax, qword [rsp + 0xa0]
mov dword [rax], 2
jmp 0x140023f9d
mov rcx, qword [rsp + 0x158]
test rcx, rcx
jne 0x140024164
lea rax, [rsp + 0x50]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], 0xf
lea r8d, [rcx + 0x17]
lea rdx, str.Empty_response_returned
lea rcx, [rsp + 0x50]
call fcn.140007ec0
nop
mov qword [rsp + 0x108], r14
mov qword [rsp + 0x118], r14
mov qword [rsp + 0x120], 0xf
mov r8d, 0x10
lea rdx, str.IsUpdateRequired
lea rcx, [rsp + 0x108]
call fcn.140007ec0
nop
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x108]
call fcn.14001a180
mov rax, qword [rsp + 0xa0]
mov dword [rax], 3
lea rcx, [rsp + 0xc8]
call fcn.140027c00
nop
mov rdx, qword [rsp + 0x180]
cmp rdx, 0x10
jb 0x140023fee
inc rdx
mov rcx, qword [rsp + 0x168]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140023fe9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140024438
call fcn.140041080
mov qword [rsp + 0x178], r14
mov qword [rsp + 0x180], 0xf
mov byte [rsp + 0x168], 0
mov rdx, qword [rsp + 0x1a0]
cmp rdx, 8
jb 0x140024053
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x188]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002404d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002443e
call fcn.140041080
nop
mov rdx, qword [rsp + 0x140]
cmp rdx, 8
jb 0x14002409c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x128]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024096
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140024444
call fcn.140041080
nop
mov rdx, qword [rsp + 0x160]
cmp rdx, 0x10
jb 0x1400240df
inc rdx
mov rcx, qword [rsp + 0x148]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400240da
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002444a
call fcn.140041080
mov qword [rsp + 0x158], r14
mov qword [rsp + 0x160], 0xf
mov byte [rsp + 0x148], 0
mov rdx, qword [rsp + 0x1c0]
cmp rdx, 8
jb 0x14002413f
lea rdx, [rdx*2 + 2]
mov rax, r15
cmp rdx, 0x1000
jb 0x140024136
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140024450
mov rcx, r15
call fcn.140041080
nop
xor al, al
mov rcx, qword [rsp + 0x1e0]
xor rcx, rsp
call fcn.140041060
add rsp, 0x1f0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
sub r12, rcx
cmp r12, 0x1f
jb 0x140024456
lea rax, [rsp + 0x148]
cmp qword [rsp + 0x160], 0x10
cmovae rax, qword [rsp + 0x148]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x1f
lea r9, str.IsUpdateRequired_got_response:
lea rcx, [rsp + 0x50]
call fcn.14000a730
lea rcx, [rsp + 0x50]
call fcn.1400307e0
lea rax, [rsp + 0x50]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], 0xf
mov r8d, 0xc
lea rdx, str.Got_response
lea rcx, [rsp + 0x50]
call fcn.140007ec0
nop
mov qword [rsp + 0x108], r14
mov qword [rsp + 0x118], r14
mov qword [rsp + 0x120], 0xf
mov r8d, 0x15
lea rdx, str.Updater::HandleUpdate
lea rcx, [rsp + 0x108]
call fcn.140007ec0
nop
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x108]
call fcn.140019ed0
nop
mov r9, qword [rsp + 0xa8]
mov r8, r13
lea rdx, [rsp + 0x148]
call fcn.140024480
movzx ebx, al
lea rcx, [rsp + 0xc8]
call fcn.140027c00
nop
mov rdx, qword [rsp + 0x180]
cmp rdx, 0x10
jb 0x1400242a4
inc rdx
mov rcx, qword [rsp + 0x168]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002429f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002445c
call fcn.140041080
mov qword [rsp + 0x178], r14
mov qword [rsp + 0x180], 0xf
mov byte [rsp + 0x168], 0
mov rdx, qword [rsp + 0x1a0]
cmp rdx, 8
jb 0x140024309
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x188]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024303
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140024462
call fcn.140041080
nop
mov rdx, qword [rsp + 0x140]
cmp rdx, 8
jb 0x140024352
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x128]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002434c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140024468
call fcn.140041080
nop
mov rdx, qword [rsp + 0x160]
cmp rdx, 0x10
jb 0x140024395
inc rdx
mov rcx, qword [rsp + 0x148]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024390
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002446e
call fcn.140041080
mov qword [rsp + 0x158], r14
mov qword [rsp + 0x160], 0xf
mov byte [rsp + 0x148], 0
mov rdx, qword [rsp + 0x1c0]
cmp rdx, 8
jb 0x1400243f4
lea rdx, [rdx*2 + 2]
mov rax, r15
cmp rdx, 0x1000
jb 0x1400243ec
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140024474
mov rcx, r15
call fcn.140041080
movzx eax, bl
jmp 0x140024141
call fcn.140001380
call fcn.140001380
call fcn.140053bb4
int3
call fcn.1400012e0
call fcn.1400012e0
call fcn.140053bb4
nop
call fcn.1400012e0
call fcn.140053bb4
nop
call fcn.140053bb4
int3
call fcn.140053bb4
nop
call fcn.140053bb4
nop
call fcn.140053bb4
nop
call fcn.140053bb4
nop
call fcn.140053bb4
nop
call fcn.140053bb4
nop
call fcn.140001380
nop
call fcn.140053bb4
nop
call fcn.140053bb4
nop
call fcn.140053bb4
nop
call fcn.140053bb4
nop
call fcn.140053bb4
int3