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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
push 0x18
call fcn.0047476f
add esp, 4
mov dword [ebp - 4], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 6
rep stosd dword es:[edi], eax
mov dword [ebp - 8], 0
push 0xc
call fcn.0047476f
add esp, 4
mov dword [ebp - 0xc], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx], 0x5d00bf
push ebx
add ebx, 4
push ebx
push 8
call fcn.0047476f
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
pop ebx
pop ebx
push ebx
mov eax, esp
push eax
call fcn.0040545b
pop ebx
push 0x18
call fcn.0047476f
add esp, 4
mov dword [ebp - 0x10], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 6
rep stosd dword es:[edi], eax
push 0xffffffffffffffff
push 9
push 0x16017d68
push 0x52010001
call fcn.0047479f
add esp, 0x10
mov dword [ebp - 0x14], eax
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.00402649
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x429137
push ebx
call fcn.00474775
add esp, 4
mov ebx, dword [ebp - 4]
add ebx, 0x10
mov dword [ebp - 0x14], ebx
push 8
call fcn.0047476f
add esp, 4
mov dword [ebp - 0x18], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 0
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x1c], 0
push 0
push dword [ebp - 0x1c]
mov dword [ebp - 0x20], 0
push 0
lea eax, [ebp - 0x20]
push eax
mov dword [ebp - 0x24], 0
push 0
lea eax, [ebp - 0x24]
push eax
mov dword [ebp - 0x28], 0
push 0
push dword [ebp - 0x28]
mov dword [ebp - 0x2c], 0
push 0
lea eax, [ebp - 0x2c]
push eax
mov dword [ebp - 0x30], 0
push 0
lea eax, [ebp - 0x30]
push eax
mov dword [ebp - 0x34], 0
push 0
push dword [ebp - 0x34]
mov dword [ebp - 0x38], 0
push 0
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x3c], 0
push 0
lea eax, [ebp - 0x3c]
push eax
push 1
mov eax, str.User_Agent:Mozilla_5.0__Linux__Android_4.4.4__2015813_Build_KTU84P__AppleWebKit_537.36__KHTML__like_Gecko__Version_4.0_Chrome_35.0.1916.138_Mobile_Mobile_Safari_537.36
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x40]
push eax
mov dword [ebp - 0x44], 0
push 0
lea eax, [ebp - 0x44]
push eax
push 1
push dword [ebp - 0x14]
push 1
mov eax, 0x605ebc
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x48]
push eax
push 1
push 1
mov eax, str.http:__1_api_red.xunlei.com_index.php_rsys_getEntry
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.0040290b
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x429230
push ebx
call fcn.00474775
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x429240
push ebx
call fcn.00474775
add esp, 4
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x429250
push ebx
call fcn.00474775
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x429260
push ebx
call fcn.00474775
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x429270
push ebx
call fcn.00474775
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x429280
push ebx
call fcn.00474775
add esp, 4
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x429290
push ebx
call fcn.00474775
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x4292a0
push ebx
call fcn.00474775
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x4292b0
push ebx
call fcn.00474775
add esp, 4
mov ebx, dword [ebp - 0x18]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x47d920
call fcn.00474787
add esp, 0x10
call fcn.00474775
add esp, 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x4292e6
mov eax, 0x5a6de3
push eax
push 1
mov ebx, 0x476a80
call fcn.00474787
add esp, 0x10
mov dword [ebp - 0x54], eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x42930c
push ebx
call fcn.00474775
add esp, 4
mov eax, dword [ebp - 0x54]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x429320
push ebx
call fcn.00474775
add esp, 4
pop eax
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0xc]
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x14], ebx
mov eax, str.steal_user
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0xc]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x24]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x42936c
push ebx
call fcn.00474775
add esp, 4
fld qword [ebp - 0x20]
call fcn.0040138e
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x10]
add ebx, 8
mov dword [ebp - 0x14], ebx
mov eax, str.steal_free
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0xc]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x24]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x4293b2
push ebx
call fcn.00474775
add esp, 4
fld qword [ebp - 0x20]
call fcn.0040138e
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x10]
add ebx, 0xc
mov dword [ebp - 0x14], ebx
mov eax, str.steal_cost
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0xc]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x24]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x4293f8
push ebx
call fcn.00474775
add esp, 4
fld qword [ebp - 0x20]
call fcn.0040138e
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x10]
add ebx, 0x10
mov dword [ebp - 0x14], ebx
mov eax, str.steal_st
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0xc]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x24]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x42943e
push ebx
call fcn.00474775
add esp, 4
fld qword [ebp - 0x20]
call fcn.0040138e
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x10]
add ebx, 4
mov dword [ebp - 0x14], ebx
mov eax, str.steal_ttl
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0xc]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x24]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x429484
push ebx
call fcn.00474775
add esp, 4
push 0x80000601
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
push 1
mov ebx, 0x476a80
call fcn.00474787
add esp, 0x10
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [ebp - 0x14]
mov ebx, dword [ebx]
test ebx, ebx
je 0x4294ba
push ebx
call fcn.00474775
add esp, 4
pop eax
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x10]
add ebx, 0x14
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
mov eax, str.steal_time
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0xc]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x2c]
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x429502
push ebx
call fcn.00474775
add esp, 4
mov eax, dword [ebp - 0x20]
push eax
mov ebx, dword [ebp - 0x14]
mov ebx, dword [ebx]
test ebx, ebx
je 0x429518
push ebx
call fcn.00474775
add esp, 4
pop eax
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
mov eax, dword [ebp - 0x10]
push eax
push 0x18
call fcn.0047476f
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x429551
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0047476f
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x429577
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0047476f
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
jmp 0x429580
push eax
mov ebx, dword [ebp - 4]
push ebx
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x429595
push ebx
call fcn.00474775
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4295a9
push ebx
call fcn.00474775
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4295bd
push ebx
call fcn.00474775
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4295d1
push ebx
call fcn.00474775
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4295e5
push ebx
call fcn.00474775
add esp, 4
pop ebx
call fcn.00474775
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4295fe
push ebx
call fcn.00474775
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
mov eax, dword [ebx]
call dword [eax]
call fcn.00474775
add esp, 4
mov ebx, dword [ebp - 0x10]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x429625
push ebx
call fcn.00474775
add esp, 4
pop ebx
add ebx, 0x10
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x429639
push ebx
call fcn.00474775
add esp, 4
pop ebx
call fcn.00474775
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 4