Function at 0x1400270e0
Capabilities:
Initialize winhttp library
Reference http user-agent string

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1b0]
sub rsp, 0x2b0
movaps xmmword [rsp + 0x2a0], xmm6
mov rax, qword [0x14010a010]
xor rax, rsp
mov qword [rbp + 0x190], rax
mov r12, r8
mov r15, rdx
mov qword [rbp + 0x50], rdx
mov qword [rbp + 0x58], r8
mov ecx, 0xa0
call fcn.1400612b0
mov r14, rax
mov qword [rbp + 0x88], rax
xor edx, edx
mov r8d, 0xa0
mov rcx, rax
call fcn.14008d590
xor edi, edi
mov qword [r14], rdi
mov qword [r14 + 0x10], rdi
mov qword [r14 + 0x18], 7
mov word [r14], di
lea r8d, [rdi + 0x72]
lea rdx, str.Mozilla_5.0__Windows_NT_10.0__Win64__x64__AppleWebKit_537.36__KHTML__like_Gecko__Chrome_83.0.4103.97_Safari_537.36
mov rcx, r14
call sym.AsusAppService.exe_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______ptr64___cdecl_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::assign_wchar_t_const__const___ptr64__unsigned_long_long_unsigned___int64_____ptr64
mov byte [r14 + 0x20], dil
mov qword [r14 + 0x28], rdi
mov qword [r14 + 0x30], rdi
mov qword [r14 + 0x38], rdi
mov dword [r14 + 0x40], 0x7530
mov dword [r14 + 0x44], 0x7530
mov dword [r14 + 0x48], 0x7530
mov qword [r14 + 0x50], rdi
mov qword [r14 + 0x58], rdi
mov qword [r14 + 0x60], rdi
lea rbx, [r14 + 0x70]
mov dword [rbx + 0x28], 1
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r14 + 0x50], xmm0
mov qword [r14 + 0x60], rax
mov byte [r14 + 0x68], al
mov rcx, r14
cmp qword [r14 + 0x18], 8
jb 0x1400271d9
mov rcx, qword [r14]
mov dword [rsp + 0x20], edi
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call qword [sym.imp.WINHTTP.dll_WinHttpOpen]
mov rcx, rax
mov qword [r14 + 0x28], rax
test rax, rax
jne 0x140027201
mov dword [r14 + 0x60], 2
jmp 0x14002721a
mov eax, dword [r14 + 0x48]
mov dword [rsp + 0x20], eax
mov r9d, dword [r14 + 0x44]
mov r8d, dword [r14 + 0x40]
xor edx, edx
call qword [sym.imp.WINHTTP.dll_WinHttpSetTimeouts]
nop
mov qword [rbp + 0x88], r14
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp + 0x90]
call fcn.14008d590
lea rcx, [rbp + 0x90]
call fcn.140012100
nop
lea rax, vtable.HttpDownloadCallback.0
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x60], rdi
mov qword [rbp + 0x70], rdi
mov qword [rbp + 0x78], 7
mov word [rbp + 0x60], di
xor r8d, r8d
lea rdx, [0x1400d8d10]
lea rcx, [rbp + 0x60]
call sym.AsusAppService.exe_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______ptr64___cdecl_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::assign_wchar_t_const__const___ptr64__unsigned_long_long_unsigned___int64_____ptr64
nop
test rbx, rbx
je 0x14002729d
cmp dword [rbx + 0x28], 0
je 0x14002729d
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rax, [rbp + 0x80]
mov qword [r14 + 0x58], rax
mov qword [r14 + 0x50], rdi
jmp 0x1400272b1
lea rax, [rbp + 0x80]
mov qword [r14 + 0x58], rax
mov qword [r14 + 0x50], rdi
test rbx, rbx
je 0x1400272c0
cmp dword [rbx + 0x28], 0
je 0x1400272c0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
call fcn.140069274
mov rdi, rax
call fcn.140069258
cmp rdi, 0x989680
jne 0x1400272dc
imul rsi, rax, 0x64
jmp 0x1400272f7
cqo
idiv rdi
imul rsi, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
add rsi, rax
lea rax, [rbp + 0x60]
cmp qword [rbp + 0x78], 8
cmovae rax, qword [rbp + 0x60]
mov r9, r12
cmp qword [r12 + 0x18], 8
jb 0x140027314
mov r9, qword [r12]
mov r8, r15
cmp qword [r15 + 0x18], 8
jb 0x140027321
mov r8, qword [r15]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x50]
mov rcx, r14
call fcn.14000ed90
mov rdi, rax
movzx ecx, byte [rax]
mov byte [rbp + 0x90], cl
lea rdx, [rax + 8]
lea rcx, [rbp + 0x98]
call fcn.14002f630
lea rdx, [rdi + 0x20]
lea rcx, [rbp + 0xb0]
call fcn.14002f630
mov ecx, dword [rdi + 0x38]
mov dword [rbp + 0xc8], ecx
lea r8, [rdi + 0x40]
lea rax, [rbp + 0xd0]
cmp rax, r8
je 0x140027395
mov rdx, r8
cmp qword [r8 + 0x18], 8
jb 0x140027385
mov rdx, qword [r8]
mov r8, qword [r8 + 0x10]
lea rcx, [rbp + 0xd0]
call sym.AsusAppService.exe_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______ptr64___cdecl_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::assign_wchar_t_const__const___ptr64__unsigned_long_long_unsigned___int64_____ptr64
lea r8, [rdi + 0x60]
lea rax, [rbp + 0xf0]
cmp rax, r8
je 0x1400273c2
mov rdx, r8
cmp qword [r8 + 0x18], 8
jb 0x1400273b2
mov rdx, qword [r8]
mov r8, qword [r8 + 0x10]
lea rcx, [rbp + 0xf0]
call sym.AsusAppService.exe_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______ptr64___cdecl_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::assign_wchar_t_const__const___ptr64__unsigned_long_long_unsigned___int64_____ptr64
lea r8, [rdi + 0x80]
lea rax, [rbp + 0x110]
cmp rax, r8
je 0x1400273f2
mov rdx, r8
cmp qword [r8 + 0x18], 8
jb 0x1400273e2
mov rdx, qword [r8]
mov r8, qword [r8 + 0x10]
lea rcx, [rbp + 0x110]
call sym.AsusAppService.exe_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______ptr64___cdecl_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::assign_wchar_t_const__const___ptr64__unsigned_long_long_unsigned___int64_____ptr64
lea r8, [rdi + 0xa0]
lea rax, [rbp + 0x130]
cmp rax, r8
je 0x140027422
mov rdx, r8
cmp qword [r8 + 0x18], 8
jb 0x140027412
mov rdx, qword [r8]
mov r8, qword [r8 + 0x10]
lea rcx, [rbp + 0x130]
call sym.AsusAppService.exe_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______ptr64___cdecl_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::assign_wchar_t_const__const___ptr64__unsigned_long_long_unsigned___int64_____ptr64
lea r8, [rdi + 0xc0]
lea rax, [rbp + 0x150]
cmp rax, r8
je 0x140027452
mov rdx, r8
cmp qword [r8 + 0x18], 8
jb 0x140027442
mov rdx, qword [r8]
mov r8, qword [r8 + 0x10]
lea rcx, [rbp + 0x150]
call sym.AsusAppService.exe_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______ptr64___cdecl_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::assign_wchar_t_const__const___ptr64__unsigned_long_long_unsigned___int64_____ptr64
lea r13, [rdi + 0xe0]
lea rax, [rbp + 0x170]
cmp rax, r13
je 0x140027486
lea rcx, [rbp + 0x170]
call fcn.140013bc0
movzx r8d, byte [rsp + 0x40]
mov rdx, r13
lea rcx, [rbp + 0x170]
call fcn.14000ff10
mov rax, qword [rdi + 0xf0]
mov qword [rbp + 0x180], rax
lea rcx, [rsp + 0x50]
call fcn.140012200
call fcn.140069274
mov rdi, rax
call fcn.140069258
cmp rdi, 0x989680
jne 0x1400274ba
imul rdi, rax, 0x64
jmp 0x1400274d6
cqo
idiv rdi
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
lea rdi, [rax + rcx]
test rbx, rbx
je 0x1400274f0
cmp dword [rbx + 0x28], 0
je 0x1400274f0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r13d, dword [r14 + 0x60]
jmp 0x1400274f9
mov r13d, dword [r14 + 0x60]
test rbx, rbx
je 0x140027508
cmp dword [rbx + 0x28], 0
je 0x140027508
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
sub rdi, rsi
movabs rax, 0x431bde82d7b634db
imul rdi
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, dword [rbp + 0xc8]
shr eax, 0xa
xorps xmm6, xmm6
cvtsi2sd xmm6, rax
xorps xmm1, xmm1
cvtsi2sd xmm1, rdx
divsd xmm1, qword [0x1400e4248]
xorps xmm0, xmm0
lea rbx, str.C:Userspaul1_leeDesktopAsusAppServiceAsusAppServiceAsusAppServiceNpsHelper.cpp
ucomisd xmm1, xmm0
jp 0x140027559
je 0x1400275a5
divsd xmm6, xmm1
mov edx, 0x5c
mov rcx, rbx
call fcn.14008d088
test rax, rax
je 0x140027581
mov edx, 0x5c
mov rcx, rbx
call fcn.14008d088
inc rax
jmp 0x140027584
mov rax, rbx
movsd qword [rsp + 0x20], xmm6
lea r9, str.Network_performance:__.02lf_KB_s_
lea r8, str.DownloadFile
mov edx, 0x2c9
mov rcx, rax
call fcn.140015a30
mov edx, 0x5c
mov rcx, rbx
call fcn.14008d088
test rax, rax
je 0x1400275c9
mov edx, 0x5c
mov rcx, rbx
call fcn.14008d088
inc rax
jmp 0x1400275cc
mov rax, rbx
mov rcx, r15
cmp qword [r15 + 0x18], 8
jb 0x1400275d9
mov rcx, qword [r15]
mov qword [rsp + 0x20], rcx
lea r9, str.Download_package_URL___s
lea r8, str.DownloadFile
mov edx, 0x2cc
mov rcx, rax
call fcn.140015a30
mov edx, 0x5c
mov rcx, rbx
call fcn.14008d088
mov rcx, rbx
test rax, rax
je 0x14002761c
mov edx, 0x5c
call fcn.14008d088
lea rcx, [rax + 1]
lea rdx, [rbp + 0x130]
cmp qword [rbp + 0x148], 8
cmovae rdx, qword [rbp + 0x130]
lea r8, [rbp + 0x110]
cmp qword [rbp + 0x128], 8
cmovae r8, qword [rbp + 0x110]
movzx eax, byte [rbp + 0x90]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], r8
mov dword [rsp + 0x20], eax
lea r9, str.HTTP_response_result____d__s__s_
lea r8, str.DownloadFile
mov edx, 0x2ce
call fcn.140015a30
mov edx, 0x5c
mov rcx, rbx
call fcn.14008d088
test rax, rax
je 0x14002769a
mov edx, 0x5c
mov rcx, rbx
call fcn.14008d088
lea rbx, [rax + 1]
mov dword [rsp + 0x20], r13d
lea r9, str.HTTP_client_error_code__0x_08lx
lea r8, str.DownloadFile
mov edx, 0x2cf
mov rcx, rbx
call fcn.140015a30
mov rdx, r14
call fcn.140030b20
nop
mov rdx, qword [rbp + 0x78]
cmp rdx, 8
jb 0x140027703
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400276fe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027802
call fcn.140061000
xor ebx, ebx
mov qword [rbp + 0x70], rbx
mov qword [rbp + 0x78], 7
mov word [rbp + 0x60], bx
lea rcx, [rbp + 0x90]
call fcn.140012200
nop
mov rdx, qword [r15 + 0x18]
cmp rdx, 8
jb 0x140027761
mov rcx, qword [r15]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x14002775c
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400277f6
mov rcx, r8
call fcn.140061000
mov qword [r15 + 0x10], rbx
mov qword [r15 + 0x18], 7
mov word [r15], bx
mov rdx, qword [r12 + 0x18]
cmp rdx, 8
jb 0x1400277ae
lea rdx, [rdx*2 + 2]
mov rcx, qword [r12]
cmp rdx, 0x1000
jb 0x1400277a9
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400277fc
mov rcx, r8
call fcn.140061000
mov qword [r12 + 0x10], rbx
mov qword [r12 + 0x18], 7
mov word [r12], bx
mov eax, r13d
mov rcx, qword [rbp + 0x190]
xor rcx, rsp
call fcn.140060fe0
mov rbx, qword [rsp + 0x2f0]
movaps xmm6, xmmword [rsp + 0x2a0]
add rsp, 0x2b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140091a84
nop
call fcn.140091a84
nop
call fcn.140091a84
int3