Function at 0x41f570
Capabilities:
Reference http user-agent string
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x480
mov edi, dword [ebp + 0x10]
mov eax, dword [ebp + 8]
pxor xmm0, xmm0
movdqu xmmword [esp + 0x44], xmm0
movdqu xmmword [esp + 0x54], xmm0
movdqu xmmword [esp + 0x64], xmm0
mov dword [esp + 0x78], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x40], 0x3c
mov dword [esp + 0x48], 0xffffffff
mov dword [esp + 0x54], 0xffffffff
mov dword [esp + 0x70], 0xffffffff
mov edx, 0xfffffffe
mov ecx, dword [0x458070]
nop word cs:[eax + eax]
cmp word [eax + edx + 2], 0
lea edx, [edx + 2]
jne 0x41f5e0
sar edx, 1
lea esi, [esp + 0x40]
push esi
push 0
push edx
push eax
call ecx
xor ebx, ebx
test eax, eax
je 0x41f831
sub esp, 0x14
pxor xmm0, xmm0
movdqu xmmword [esp + 4], xmm0
mov dword [esp], 0x447484
call dword [0x458064]
test eax, eax
je 0x41f653
mov esi, eax
lea ebx, [esp + 0x7c]
push 0x400
push 0
push ebx
call fcn.00417ba0
add esp, 0xc
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
test cl, 1
jne 0x41f65a
shr ecx, 1
and ecx, 0x3fffffff
mov edi, ebx
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
jmp 0x41f667
xor esi, esi
jmp 0x41f825
and ecx, 0x7fffffff
mov edi, ebx
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
movzx eax, word [esp + 0x58]
push 0
push eax
push ebx
mov dword [esp + 0x48], esi
push esi
call dword [0x458068]
test eax, eax
je 0x41f7e2
xor ecx, ecx
cmp dword [esp + 0x4c], 2
sete cl
mov ebx, ecx
mov ecx, 0x27354882
mov edx, 0x9fb7ab31
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ecx
mov edx, 0xbabfe256
mov dword [esp + 0xc], eax
mov esi, 0x4b4d3cec
mov edi, 0x277048c5
mov ecx, 0x9fb7ab65
mov dword [esp + 0x24], ecx
mov ecx, dword [0x45806c]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x18], edx
mov dword [esp + 0x20], edi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x28], edx
lea esi, [esp + 0x20]
xor edx, edx
mov edx, dword [esp + 0x6c]
mov edi, ebx
shl edi, 0x17
movdqa xmm0, xmmword [esi]
xor ebx, ebx
movdqa xmm1, xmmword [esp + 0x10]
movdqa xmm2, xmm1
pand xmm2, xmm0
paddq xmm1, xmm0
paddq xmm2, xmm2
psubq xmm1, xmm2
movdqa xmmword [esp + 0x10], xmm1
lea eax, [esp + 0x10]
push edi
push 0
push 0
push 0
push edx
push eax
push dword [esp + 0x24]
call ecx
test eax, eax
je 0x41f7eb
mov esi, eax
sub esp, 0x1c
pxor xmm0, xmm0
movdqu xmmword [esp + 4], xmm0
mov dword [esp], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
call dword [0x45807c]
test eax, eax
mov edi, dword [ebp + 0x10]
mov dword [esp + 8], esi
je 0x41f7f2
push 0
push esi
call dword [0x458080]
test eax, eax
je 0x41f7f6
mov dword [esp + 0x20], 0
lea eax, [esp + 0x20]
push eax
push esi
call dword [0x458084]
test eax, eax
je 0x41f800
xor edi, edi
xor esi, esi
nop
mov eax, dword [esp + 0x20]
test eax, eax
je 0x41f7fc
add eax, esi
inc eax
push eax
push edi
call fcn.00440ce0
add esp, 8
test eax, eax
je 0x41f7fc
mov ebx, eax
mov dword [esp + 0x10], 0
add eax, esi
lea ecx, [esp + 0x10]
push ecx
push dword [esp + 0x24]
push eax
mov edi, dword [esp + 0x14]
push edi
call dword [0x458088]
add esi, dword [esp + 0x10]
lea eax, [esp + 0x20]
push eax
push edi
call dword [0x458084]
mov edi, ebx
test eax, eax
jne 0x41f790
jmp 0x41f804
xor esi, esi
xor ebx, ebx
mov edi, dword [ebp + 0x10]
jmp 0x41f81b
xor esi, esi
mov edi, dword [ebp + 0x10]
jmp 0x41f811
xor esi, esi
jmp 0x41f807
xor esi, esi
xor ebx, ebx
jmp 0x41f807
mov ebx, edi
jmp 0x41f804
xor esi, esi
xor ebx, ebx
mov edi, dword [ebp + 0x10]
push dword [esp + 8]
call dword [0x458090]
push dword [esp + 0xc]
call dword [0x458090]
push dword [esp + 0x3c]
call dword [0x458090]
mov eax, dword [ebp + 0xc]
mov dword [eax], ebx
mov dword [edi], esi
test ebx, ebx
setne bl
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret