Function at 0x40ae08
Capabilities:
Reference http user-agent string

Disassembly:
push 0x40
mov eax, 0x43e259
call fcn.0040e3ed
mov ebx, ecx
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x28]
push str.User_Agent
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x44], eax
call fcn.00405870
lea eax, [ebp - 0x28]
add ebx, 0x50
push eax
lea eax, [ebp - 0x44]
mov ecx, ebx
push eax
mov edi, dword [ebx]
call fcn.0040b077
lea ecx, [ebp - 0x28]
mov esi, dword [eax]
call fcn.00401e00
cmp esi, edi
jne 0x40ae78
lea eax, [ebp - 0x48]
mov dword [ebp - 0x48], str.User_Agent
push eax
mov ecx, ebx
mov dword [ebp - 0x44], str.Mozilla_5.0__Windows_NT_10.0__Win64__x64__AppleWebKit_537.36__KHTML__like_Gecko__Chrome_80.0.4044.92_Safari_537.36
call fcn.0040b6d4
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x48]
mov ecx, ebx
push eax
call fcn.0040b5bf
push str.Connection
lea ecx, [ebp - 0x28]
call fcn.00405870
mov edi, dword [ebx]
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x44]
mov ecx, ebx
push eax
call fcn.0040b077
lea ecx, [ebp - 0x28]
mov esi, dword [eax]
call fcn.00401e00
cmp esi, edi
jne 0x40aece
lea eax, [ebp - 0x48]
mov dword [ebp - 0x48], str.User_Agent
push eax
mov ecx, ebx
mov dword [ebp - 0x44], str.HTTP_1.1
call fcn.0040b6d4
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x48]
mov ecx, ebx
push eax
call fcn.0040b5bf
push str.Accept
lea ecx, [ebp - 0x28]
call fcn.00405870
mov edi, dword [ebx]
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x44]
mov ecx, ebx
push eax
call fcn.0040b077
lea ecx, [ebp - 0x28]
mov esi, dword [eax]
call fcn.00401e00
cmp esi, edi
jne 0x40af24
lea eax, [ebp - 0x48]
mov dword [ebp - 0x48], str.Accept
push eax
mov ecx, ebx
mov dword [ebp - 0x44], 0x44e018
call fcn.0040b6d4
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x48]
mov ecx, ebx
push eax
call fcn.0040b5bf
push str.Connection
lea ecx, [ebp - 0x28]
call fcn.00405870
mov edi, dword [ebx]
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x44]
mov ecx, ebx
push eax
call fcn.0040b077
lea ecx, [ebp - 0x28]
mov esi, dword [eax]
call fcn.00401e00
cmp esi, edi
jne 0x40af7a
lea eax, [ebp - 0x48]
mov dword [ebp - 0x48], str.Connection
push eax
mov ecx, ebx
mov dword [ebp - 0x44], str.Keep_Alive
call fcn.0040b6d4
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x48]
mov ecx, ebx
push eax
call fcn.0040b5bf
push str.Accept_Language
lea ecx, [ebp - 0x28]
call fcn.00405870
mov edi, dword [ebx]
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x44]
mov ecx, ebx
push eax
call fcn.0040b077
lea ecx, [ebp - 0x28]
mov esi, dword [eax]
call fcn.00401e00
cmp esi, edi
jne 0x40afd0
lea eax, [ebp - 0x48]
mov dword [ebp - 0x48], str.Accept_Language
push eax
mov ecx, ebx
mov dword [ebp - 0x44], str.zh_CN_zh_q0.9
call fcn.0040b6d4
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x48]
mov ecx, ebx
push eax
call fcn.0040b5bf
xor eax, eax
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], eax
mov byte [ebp - 0x40], al
mov dword [ebp - 4], eax
mov eax, dword [ebx]
mov esi, dword [eax]
cmp esi, eax
je 0x40b058
lea eax, [esi + 0x10]
push eax
lea ecx, [ebp - 0x40]
call fcn.00405780
push 0x44d950
lea ecx, [ebp - 0x40]
call fcn.00405710
lea eax, [esi + 0x28]
push eax
lea ecx, [ebp - 0x40]
call fcn.00405780
push 0x44dff8
lea ecx, [ebp - 0x40]
call fcn.00405710
mov eax, dword [esi + 8]
cmp byte [eax + 0xd], 0
je 0x40b03e
mov eax, dword [esi + 4]
jmp 0x40b034
cmp esi, dword [eax + 8]
jne 0x40b03a
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x40b02a
mov esi, eax
jmp 0x40b054
mov esi, eax
mov ecx, dword [esi]
cmp byte [ecx + 0xd], 0
jne 0x40b054
mov eax, dword [ecx]
mov esi, ecx
mov ecx, eax
cmp byte [eax + 0xd], 0
je 0x40b048
cmp esi, dword [ebx]
jne 0x40afea
mov ecx, dword [ebp - 0x4c]
lea eax, [ebp - 0x40]
push eax
call fcn.00401e50
lea ecx, [ebp - 0x40]
call fcn.00401e00
mov eax, dword [ebp - 0x4c]
call fcn.0040e3a8
ret 4