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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x41c
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
mov dword [ebp - 0xc], eax
mov ebx, ecx
mov eax, dword [ebp + 0x10]
push esi
push edi
xor esi, esi
mov dword [ebp - 0x414], ebx
mov dword [ebp - 0x418], eax
xor edi, edi
mov dword [eax], esi
call fcn.10001cf0
test eax, eax
jne 0x10002541
mov eax, dword [ebp - 0x418]
push edi
push 0x1bb
push str.download.fast_vpn.cc
push dword [ebp - 0xc]
mov dword [eax], esi
push str.GET__s_HTTP_1.1_r_nAccept:___r_nUser_Agent:_Mozilla_5.0__Windows_NT_10.0__Win64__x64__AppleWebKit_537.36__KHTML__like_Gecko__Chrome_129.0.0.0_Safari_537.36_r_nHost:__s:_d_r_nContent_Length:__d_r_nConnection:_Keep_Alive_r_nCache_Control:_no_cache_r_n_r_n
push 0x200000
push ebx
call fcn.10001c90
mov ebx, eax
add esp, 0x1c
mov esi, ebx
nop dword [eax]
mov edx, dword [ebp - 0x414]
mov eax, 0x4000
cmp esi, eax
cmovl eax, esi
push eax
lea edx, [edx + edi]
call fcn.1000db10
add edi, eax
add esp, 4
sub esi, eax
cmp edi, ebx
jl 0x10002380
push 0x400
lea eax, [ebp - 0x410]
push 0
push eax
call fcn.10046690
add esp, 0xc
lea edx, [ebp - 0x410]
push 0x3ff
call fcn.1000d050
mov edi, eax
add esp, 4
test edi, edi
jg 0x100023e4
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10045387
mov esp, ebp
pop ebp
ret
xor eax, eax
mov dword [ebp - 0xc], eax
mov word [ebp - 8], ax
lea eax, [ebp - 0x410]
push str.HTTP_1.1
push eax
call fcn.10046420
mov esi, eax
add esp, 8
test esi, esi
je 0x10002554
add esi, 9
push 0x1006a280
push esi
call fcn.10046420
mov ecx, esi
add esp, 8
mov edx, eax
lea ebx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10002423
sub ecx, ebx
lea ebx, [edx + 1]
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x10002430
sub edx, ebx
lea eax, [ebp - 0xc]
sub ecx, edx
push ecx
push esi
push eax
call fcn.10047450
add esp, 0xc
lea eax, [ebp - 0xc]
push eax
call fcn.1004b0a3
add esp, 4
cmp eax, 0xc8
jne 0x10002554
lea ecx, [edi - 4]
xor eax, eax
test ecx, ecx
jle 0x10002482
nop dword [eax]
cmp dword [ebp + eax - 0x410], 0xa0d0a0d
je 0x10002482
inc eax
cmp eax, ecx
jl 0x10002470
mov esi, edi
sub esi, eax
push ecx
lea ecx, [ebp - 0x410]
sub esi, 4
call fcn.10002260
mov ebx, eax
add esp, 4
cmp ebx, 0x200000
jae 0x10002554
test ebx, ebx
jne 0x100024bb
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10045387
mov esp, ebp
pop ebp
ret
sub edi, esi
lea eax, [ebp - 0x410]
push esi
add eax, edi
push eax
push dword [ebp - 0x414]
call fcn.10047450
mov edi, ebx
add esp, 0xc
sub edi, esi
je 0x10002525
nop dword [eax + eax]
cmp esi, 0x200000
jge 0x10002531
mov edx, dword [ebp - 0x414]
mov eax, 0x4000
cmp edi, eax
cmovl eax, edi
push eax
lea edx, [edx + esi]
call fcn.1000d050
add esp, 4
cmp eax, 0xffff9700
je 0x10002521
cmp eax, 0xffff9780
je 0x10002521
cmp eax, 0xffff8780
je 0x1000252d
test eax, eax
jle 0x1000252d
add esi, eax
sub edi, eax
test edi, edi
jne 0x100024e0
cmp esi, 0x200000
jge 0x10002531
cmp esi, ebx
je 0x10002534
or esi, 0xffffffff
mov eax, dword [ebp - 0x418]
mov dword [eax], ebx
call fcn.10002570
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10045387
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
or eax, 0xffffffff
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10045387
mov esp, ebp
pop ebp
ret