Function at 0x1400273e0
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 [0x14010b010]
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.1400615c0
mov r14, rax
mov qword [rbp + 0x88], rax
xor edx, edx
mov r8d, 0xa0
mov rcx, rax
call fcn.14008d8a0
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 0x1400274d9
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 0x140027501
mov dword [r14 + 0x60], 2
jmp 0x14002751a
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.14008d8a0
lea rcx, [rbp + 0x90]
call fcn.140012260
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, [0x1400d9d10]
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 0x14002759d
cmp dword [rbx + 0x28], 0
je 0x14002759d
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 0x1400275b1
lea rax, [rbp + 0x80]
mov qword [r14 + 0x58], rax
mov qword [r14 + 0x50], rdi
test rbx, rbx
je 0x1400275c0
cmp dword [rbx + 0x28], 0
je 0x1400275c0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
call fcn.140069584
mov rdi, rax
call fcn.140069568
cmp rdi, 0x989680
jne 0x1400275dc
imul rsi, rax, 0x64
jmp 0x1400275f7
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 0x140027614
mov r9, qword [r12]
mov r8, r15
cmp qword [r15 + 0x18], 8
jb 0x140027621
mov r8, qword [r15]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x50]
mov rcx, r14
call fcn.14000eef0
mov rdi, rax
movzx ecx, byte [rax]
mov byte [rbp + 0x90], cl
lea rdx, [rax + 8]
lea rcx, [rbp + 0x98]
call fcn.14002f940
lea rdx, [rdi + 0x20]
lea rcx, [rbp + 0xb0]
call fcn.14002f940
mov ecx, dword [rdi + 0x38]
mov dword [rbp + 0xc8], ecx
lea r8, [rdi + 0x40]
lea rax, [rbp + 0xd0]
cmp rax, r8
je 0x140027695
mov rdx, r8
cmp qword [r8 + 0x18], 8
jb 0x140027685
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 0x1400276c2
mov rdx, r8
cmp qword [r8 + 0x18], 8
jb 0x1400276b2
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 0x1400276f2
mov rdx, r8
cmp qword [r8 + 0x18], 8
jb 0x1400276e2
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 0x140027722
mov rdx, r8
cmp qword [r8 + 0x18], 8
jb 0x140027712
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 0x140027752
mov rdx, r8
cmp qword [r8 + 0x18], 8
jb 0x140027742
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 0x140027786
lea rcx, [rbp + 0x170]
call fcn.140013d20
movzx r8d, byte [rsp + 0x40]
mov rdx, r13
lea rcx, [rbp + 0x170]
call fcn.140010070
mov rax, qword [rdi + 0xf0]
mov qword [rbp + 0x180], rax
lea rcx, [rsp + 0x50]
call fcn.140012360
call fcn.140069584
mov rdi, rax
call fcn.140069568
cmp rdi, 0x989680
jne 0x1400277ba
imul rdi, rax, 0x64
jmp 0x1400277d6
cqo
idiv rdi
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
lea rdi, [rax + rcx]
test rbx, rbx
je 0x1400277f0
cmp dword [rbx + 0x28], 0
je 0x1400277f0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r13d, dword [r14 + 0x60]
jmp 0x1400277f9
mov r13d, dword [r14 + 0x60]
test rbx, rbx
je 0x140027808
cmp dword [rbx + 0x28], 0
je 0x140027808
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 [0x1400e5288]
xorps xmm0, xmm0
lea rbx, str.C:Userspaul1_leeDesktopAsusAppServiceAsusAppServiceAsusAppServiceNpsHelper.cpp
ucomisd xmm1, xmm0
jp 0x140027859
je 0x1400278a5
divsd xmm6, xmm1
mov edx, 0x5c
mov rcx, rbx
call fcn.14008d398
test rax, rax
je 0x140027881
mov edx, 0x5c
mov rcx, rbx
call fcn.14008d398
inc rax
jmp 0x140027884
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.140015b90
mov edx, 0x5c
mov rcx, rbx
call fcn.14008d398
test rax, rax
je 0x1400278c9
mov edx, 0x5c
mov rcx, rbx
call fcn.14008d398
inc rax
jmp 0x1400278cc
mov rax, rbx
mov rcx, r15
cmp qword [r15 + 0x18], 8
jb 0x1400278d9
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.140015b90
mov edx, 0x5c
mov rcx, rbx
call fcn.14008d398
mov rcx, rbx
test rax, rax
je 0x14002791c
mov edx, 0x5c
call fcn.14008d398
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.140015b90
mov edx, 0x5c
mov rcx, rbx
call fcn.14008d398
test rax, rax
je 0x14002799a
mov edx, 0x5c
mov rcx, rbx
call fcn.14008d398
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.140015b90
mov rdx, r14
call fcn.140030e20
nop
mov rdx, qword [rbp + 0x78]
cmp rdx, 8
jb 0x140027a03
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400279fe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027b02
call fcn.140061310
xor ebx, ebx
mov qword [rbp + 0x70], rbx
mov qword [rbp + 0x78], 7
mov word [rbp + 0x60], bx
lea rcx, [rbp + 0x90]
call fcn.140012360
nop
mov rdx, qword [r15 + 0x18]
cmp rdx, 8
jb 0x140027a61
mov rcx, qword [r15]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x140027a5c
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140027af6
mov rcx, r8
call fcn.140061310
mov qword [r15 + 0x10], rbx
mov qword [r15 + 0x18], 7
mov word [r15], bx
mov rdx, qword [r12 + 0x18]
cmp rdx, 8
jb 0x140027aae
lea rdx, [rdx*2 + 2]
mov rcx, qword [r12]
cmp rdx, 0x1000
jb 0x140027aa9
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140027afc
mov rcx, r8
call fcn.140061310
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.1400612f0
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.140091d94
nop
call fcn.140091d94
nop
call fcn.140091d94
int3