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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d3340
mov eax, dword fs:[0]
push eax
sub esp, 0x60
mov eax, dword [0x6ade1c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x68], ecx
push str.___BuildFireFoxGetRequest___
mov eax, dword [ebp + 0x3c]
mov edx, dword [eax]
mov ecx, dword [ebp + 0x3c]
mov eax, dword [edx + 0x18]
call eax
mov ecx, dword [ebp + 0x38]
call fcn.00427ba0
mov ecx, dword [ebp + 0x3c]
push ecx
mov edx, dword [ebp + 0x28]
push edx
mov eax, dword [ebp + 0x38]
push eax
mov ecx, dword [ebp + 0x20]
push ecx
mov edx, dword [ebp + 0x1c]
push edx
mov eax, dword [ebp + 0x18]
push eax
mov ecx, dword [ebp + 8]
push ecx
movzx edx, byte [ebp + 0x10]
push edx
mov ecx, dword [ebp - 0x68]
call fcn.004870d0
push 0x62adf8
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x3c]
call fcn.00429750
mov dword [ebp - 4], 0
cmp dword [ebp + 0x14], 0x50
je 0x4890f0
cmp dword [ebp + 0x14], 0x1bb
je 0x4890f0
push 0x3a
lea ecx, [ebp - 0x3c]
call fcn.00427cf0
mov ecx, dword [ebp + 0x14]
push ecx
lea ecx, [ebp - 0x3c]
call fcn.00428b00
lea ecx, [ebp - 0x3c]
call fcn.0042be90
lea ecx, [ebp - 0x3c]
call fcn.004f2af0
push eax
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
push 0x62ae00
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
push str.User_Agent:_Mozilla_5.0__Windows_NT_5.1__rv:8.0__Gecko_20100101_Firefox_8.0_r_n
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
cmp dword [ebp + 0x24], 0
je 0x489135
mov edx, dword [ebp + 0x24]
push edx
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
mov byte [ebp - 0xd], 0
push 0
mov eax, dword [ebp + 0x3c]
push eax
lea ecx, [ebp - 0xd]
push ecx
mov edx, dword [ebp + 0x38]
push edx
mov eax, dword [ebp + 0x20]
push eax
mov ecx, dword [ebp - 0x68]
call fcn.00486a00
mov ecx, dword [ebp + 0x20]
mov dword [ebp - 0x6c], ecx
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x6c]
mov ecx, dword [edx + 0x828]
or ecx, dword [eax + 0x82c]
je 0x4891c8
push str.Range:_bytes
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
lea ecx, [ebp - 0x64]
call fcn.00429cb0
mov byte [ebp - 4], 1
lea edx, [ebp - 0x64]
push edx
mov eax, dword [ebp + 0x20]
mov ecx, dword [eax + 0x82c]
push ecx
mov edx, dword [eax + 0x828]
push edx
call fcn.0044b8d0
add esp, 0xc
lea eax, [ebp - 0x64]
push eax
mov ecx, dword [ebp + 0x38]
call fcn.0042c720
push 0x62ae68
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x64]
call fcn.0042a080
push str.Accept:_text_xml_application_xml_application_xhtmlxml_text_html_q0.9_text_plain_q0.8_image_png___q0.5_r_n
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
mov ecx, dword [ebp + 0x20]
add ecx, 0x7b0
call fcn.004b71c0
test eax, eax
je 0x48921a
push str.Accept_Charset:
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
mov ecx, dword [ebp + 0x20]
add ecx, 0x7b0
call fcn.004f2af0
push eax
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
push 0x62aef0
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
jmp 0x489227
push str.Accept_Charset:_ISO_8859_1_utf_8_q0.7__q0.7_r_n
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
mov ecx, dword [ebp + 0x20]
movzx edx, byte [ecx + 0x8a6]
test edx, edx
je 0x489244
push str.Accept_Encoding:_gzip_r_n
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
jmp 0x489251
push str.Accept_Encoding:__r_n
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
mov ecx, dword [ebp + 0x20]
add ecx, 0x7d8
call fcn.004b71c0
test eax, eax
je 0x489296
push str.Accept_Language:
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
mov ecx, dword [ebp + 0x20]
add ecx, 0x7d8
call fcn.004f2af0
push eax
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
push 0x62af68
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
jmp 0x4892a3
push str.Accept_Language:_en_us_en_q0.5_r_n
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
push str.Keep_Alive:_300_r_n
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
push str.Connection:_keep_alive_r_n
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
mov ecx, dword [ebp + 0x20]
add ecx, 0x800
call fcn.004b71c0
test eax, eax
je 0x48931b
push 0x62afc0
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
mov eax, dword [ebp - 0x68]
add eax, 0x5f8
push eax
mov ecx, dword [ebp + 0x38]
call fcn.0042c720
push 0x20
mov ecx, dword [ebp + 0x38]
call fcn.00427cf0
mov ecx, dword [ebp + 0x20]
add ecx, 0x800
call fcn.004f2af0
push eax
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
push 0x62afd0
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
mov ecx, dword [ebp + 0x20]
add ecx, 0x738
call fcn.004b71c0
test eax, eax
je 0x489359
push str.Referer:
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
mov ecx, dword [ebp + 0x20]
add ecx, 0x738
push ecx
mov ecx, dword [ebp + 0x38]
call fcn.0042c720
push 0x62afe0
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
mov edx, dword [ebp + 0x40]
push edx
mov eax, dword [ebp + 0x3c]
push eax
mov ecx, dword [ebp + 0x38]
push ecx
mov edx, dword [ebp + 0x18]
push edx
movzx eax, byte [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 0x20]
push edx
mov ecx, dword [ebp - 0x68]
call fcn.00486eb0
mov eax, dword [ebp + 0x40]
push eax
mov ecx, dword [ebp + 0x3c]
push ecx
mov edx, dword [ebp + 0x38]
push edx
mov eax, dword [ebp + 0x20]
push eax
mov ecx, dword [ebp - 0x68]
call fcn.00486cc0
mov ecx, dword [ebp + 0x40]
push ecx
mov edx, dword [ebp + 0x3c]
push edx
mov eax, dword [ebp + 0x38]
push eax
mov ecx, dword [ebp + 0x20]
push ecx
mov ecx, dword [ebp - 0x68]
call fcn.00486af0
mov edx, dword [ebp + 0x38]
push edx
mov ecx, dword [ebp + 0x28]
add ecx, 0x100
call fcn.0042c8c0
push 0x62afe4
mov ecx, dword [ebp + 0x38]
call fcn.004290d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3c]
call fcn.0042a080
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov esp, ebp
pop ebp
ret 0x3c