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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x617550
mov eax, dword fs:[0]
push eax
sub esp, 0x60
mov eax, dword [0x6f8dec]
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.0046bb70
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.004cb0d0
push 0x66edd0
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x3c]
call fcn.0046d720
mov dword [ebp - 4], 0
cmp dword [ebp + 0x14], 0x50
je 0x4cd0f0
cmp dword [ebp + 0x14], 0x1bb
je 0x4cd0f0
push 0x3a
lea ecx, [ebp - 0x3c]
call fcn.0046bcc0
mov ecx, dword [ebp + 0x14]
push ecx
lea ecx, [ebp - 0x3c]
call fcn.0046cad0
lea ecx, [ebp - 0x3c]
call fcn.0046fe60
lea ecx, [ebp - 0x3c]
call fcn.0046b1d0
push eax
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
push 0x66edd8
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
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.0046d0a0
cmp dword [ebp + 0x24], 0
je 0x4cd135
mov edx, dword [ebp + 0x24]
push edx
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
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.004caa00
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 0x4cd1c8
push str.Range:_bytes
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
lea ecx, [ebp - 0x64]
call fcn.0046dc80
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.0048f870
add esp, 0xc
lea eax, [ebp - 0x64]
push eax
mov ecx, dword [ebp + 0x38]
call fcn.004706f0
push 0x66ee40
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x64]
call fcn.0046e050
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.0046d0a0
mov ecx, dword [ebp + 0x20]
add ecx, 0x7b0
call fcn.00536a80
test eax, eax
je 0x4cd21a
push str.Accept_Charset:
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
mov ecx, dword [ebp + 0x20]
add ecx, 0x7b0
call fcn.0046b1d0
push eax
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
push 0x66eec8
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
jmp 0x4cd227
push str.Accept_Charset:_ISO_8859_1_utf_8_q0.7__q0.7_r_n
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
mov ecx, dword [ebp + 0x20]
movzx edx, byte [ecx + 0x8a6]
test edx, edx
je 0x4cd244
push str.Accept_Encoding:_gzip_r_n
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
jmp 0x4cd251
push str.Accept_Encoding:__r_n
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
mov ecx, dword [ebp + 0x20]
add ecx, 0x7d8
call fcn.00536a80
test eax, eax
je 0x4cd296
push str.Accept_Language:
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
mov ecx, dword [ebp + 0x20]
add ecx, 0x7d8
call fcn.0046b1d0
push eax
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
push 0x66ef40
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
jmp 0x4cd2a3
push str.Accept_Language:_en_us_en_q0.5_r_n
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
push str.Keep_Alive:_300_r_n
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
push str.Connection:_keep_alive_r_n
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
mov ecx, dword [ebp + 0x20]
add ecx, 0x800
call fcn.00536a80
test eax, eax
je 0x4cd31b
push 0x66ef98
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
mov eax, dword [ebp - 0x68]
add eax, 0x5f8
push eax
mov ecx, dword [ebp + 0x38]
call fcn.004706f0
push 0x20
mov ecx, dword [ebp + 0x38]
call fcn.0046bcc0
mov ecx, dword [ebp + 0x20]
add ecx, 0x800
call fcn.0046b1d0
push eax
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
push 0x66efa8
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
mov ecx, dword [ebp + 0x20]
add ecx, 0x738
call fcn.00536a80
test eax, eax
je 0x4cd359
push str.Referer:
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
mov ecx, dword [ebp + 0x20]
add ecx, 0x738
push ecx
mov ecx, dword [ebp + 0x38]
call fcn.004706f0
push 0x66efb8
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
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.004caeb0
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.004cacc0
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.004caaf0
mov edx, dword [ebp + 0x38]
push edx
mov ecx, dword [ebp + 0x28]
add ecx, 0x100
call fcn.00470890
push 0x66efbc
mov ecx, dword [ebp + 0x38]
call fcn.0046d0a0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3c]
call fcn.0046e050
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov esp, ebp
pop ebp
ret 0x3c