Function at 0x180022bb0
Capabilities:
Link many functions at runtime

Disassembly:
mov rax, rsp
push rbx
sub rsp, 0x50
xor ebx, ebx
mov qword [rax + 8], rbp
mov qword [rax + 0x18], rdi
mov rdi, rcx
mov qword [rax + 0x20], r12
lea rcx, [rax - 0x28]
mov r12, rdx
mov qword [rax - 0x20], rbx
mov qword [rax - 0x10], rbx
mov qword [rax - 0x18], rbx
mov dword [rax - 0x28], ebx
call fcn.180023740
mov rax, qword [0x180037bc8]
test rax, rax
jne 0x180022c27
mov rax, qword [0x180037b90]
test rax, rax
jne 0x180022c10
lea rcx, str.wininet
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x180037b90], rax
lea rdx, str.InternetSetOptionA
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180037bc8], rax
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
lea edx, [r9 + 0x5f]
call rax
mov rax, qword [0x180037bc8]
test rax, rax
jne 0x180022c78
mov rax, qword [0x180037b90]
test rax, rax
jne 0x180022c61
lea rcx, str.wininet
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x180037b90], rax
lea rdx, str.InternetSetOptionA
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180037bc8], rax
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
lea edx, [r9 + 0x27]
call rax
mov rax, qword [0x180037bc8]
test rax, rax
jne 0x180022cc9
mov rax, qword [0x180037b90]
test rax, rax
jne 0x180022cb2
lea rcx, str.wininet
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x180037b90], rax
lea rdx, str.InternetSetOptionA
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180037bc8], rax
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
lea edx, [r9 + 0x25]
call rax
mov rax, qword [0x180037bb0]
test rax, rax
jne 0x180022d1a
mov rax, qword [0x180037b90]
test rax, rax
jne 0x180022d03
lea rcx, str.wininet
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x180037b90], rax
lea rdx, str.InternetOpenA
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180037bb0], rax
mov rcx, qword [rsp + 0x40]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], ebx
call rax
mov rbp, rax
test rax, rax
jne 0x180022d42
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
jmp 0x180022e58
movzx r8d, word [rdi + 0x9a]
lea rdx, [rdi + 0x9c]
mov rcx, rax
mov qword [rsp + 0x68], rsi
call fcn.180023d90
mov rsi, rax
test rax, rax
jne 0x180022d73
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
jmp 0x180022e0b
mov rcx, qword [rdi + 0x90]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x180022dc3
nop dword [rax]
mov r8, rsi
mov rdx, r12
mov rcx, rdi
call fcn.180022e80
mov ebx, eax
test eax, eax
jne 0x180022dc3
cmp dword [rdi + 0x1b4], 4
je 0x180022dc3
mov rcx, qword [rdi + 0x90]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
je 0x180022d90
mov rax, qword [0x180037bd0]
test rax, rax
jne 0x180022e06
mov rax, qword [0x180037b90]
test rax, rax
jne 0x180022def
lea rcx, str.wininet
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x180037b90], rax
lea rdx, str.InternetCloseHandle
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180037bd0], rax
mov rcx, rsi
call rax
mov rax, qword [0x180037bd0]
mov rsi, qword [rsp + 0x68]
test rax, rax
jne 0x180022e53
mov rax, qword [0x180037b90]
test rax, rax
jne 0x180022e3c
lea rcx, str.wininet
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x180037b90], rax
lea rdx, str.InternetCloseHandle
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180037bd0], rax
mov rcx, rbp
call rax
mov rcx, qword [rsp + 0x38]
mov r12, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x60]
test rcx, rcx
je 0x180022e76
call sub.KERNEL32.dll_LocalFree
mov eax, ebx
add rsp, 0x50
pop rbx
ret