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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x60
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
push 0xc
call fcn.00478cfd
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], 0x66f21b
push ebx
add ebx, 8
push ebx
push 8
call fcn.00478cfd
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.0041d648
pop ebx
mov dword [ebp - 0x10], 0
push 0x14
call fcn.00478cfd
add esp, 4
mov dword [ebp - 0x14], eax
mov edi, eax
mov esi, 0x66f287
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x18], 0
mov eax, 0x5512ef
push eax
mov ebx, dword [0x7a9dd8]
test ebx, ebx
je 0x41873f
push ebx
call fcn.00478cf1
add esp, 4
pop eax
mov dword [0x7a9dd8], eax
mov eax, 0x5512ef
push eax
mov ebx, dword [0x7a9ddc]
test ebx, ebx
je 0x41875e
push ebx
call fcn.00478cf1
add esp, 4
pop eax
mov dword [0x7a9ddc], eax
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 1
push 0
push 0
push 0
push 0x10001
push 0x60bb9a8
push 0x520b9974
push 3
mov ebx, 0x479220
call fcn.00478cf7
add esp, 0x28
mov eax, str.User_Agent:_Mozilla_5.0__Windows_NT_6.1__WOW64__AppleWebKit_537.36__KHTML__like_Gecko__Chrome_50.0.2661.87_Safari_537.36
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4187ad
push ebx
call fcn.00478cf1
add esp, 4
pop eax
mov dword [ebp - 4], eax
push dword [0x7a9dd8]
push str.bkn
mov ecx, 2
call fcn.0040203a
add esp, 8
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
mov dword [ebp - 0x24], 0
push 0
push dword [ebp - 0x24]
mov dword [ebp - 0x28], 0
push 0
push dword [ebp - 0x28]
push 8
call fcn.00478cfd
add esp, 4
mov dword [ebp - 0x2c], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 0
lea eax, [ebp - 0x2c]
push eax
mov dword [ebp - 0x30], 0
push 0
push dword [ebp - 0x30]
mov dword [ebp - 0x34], 0
push 0
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x38], 0
push 0
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
mov dword [ebp - 0x40], 0
push 0
lea eax, [ebp - 0x40]
push eax
mov dword [ebp - 0x44], 0
push 0
lea eax, [ebp - 0x44]
push eax
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
mov dword [ebp - 0x4c], 0
push 0
lea eax, [ebp - 0x4c]
push eax
mov dword [ebp - 0x50], 0
push 0
lea eax, [ebp - 0x50]
push eax
push 1
lea eax, [ebp - 4]
push eax
mov dword [ebp - 0x54], 0
push 0
lea eax, [ebp - 0x54]
push eax
push 1
push 0x7a9ddc
push 1
lea eax, [ebp - 0x1c]
push eax
push 1
push 1
mov eax, str.https:__qun.qq.com_cgi_bin_qun_mgr_get_group_list
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x58]
push eax
call fcn.00418fd1
mov dword [ebp - 0x5c], eax
mov ebx, dword [ebp - 0x58]
test ebx, ebx
je 0x4188d2
push ebx
call fcn.00478cf1
add esp, 4
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x4188e2
push ebx
call fcn.00478cf1
add esp, 4
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x4188f2
push ebx
call fcn.00478cf1
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x418902
push ebx
call fcn.00478cf1
add esp, 4
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x418912
push ebx
call fcn.00478cf1
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x418922
push ebx
call fcn.00478cf1
add esp, 4
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x418932
push ebx
call fcn.00478cf1
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x418942
push ebx
call fcn.00478cf1
add esp, 4
mov ebx, dword [ebp - 0x2c]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x47e220
call fcn.00478cf7
add esp, 0x10
call fcn.00478cf1
add esp, 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x5c]
test eax, eax
jne 0x418978
mov eax, 0x551323
push eax
push 1
mov ebx, 0x47afb0
call fcn.00478cf7
add esp, 0x10
mov dword [ebp - 0x60], eax
mov ebx, dword [ebp - 0x5c]
test ebx, ebx
je 0x41899e
push ebx
call fcn.00478cf1
add esp, 4
mov eax, dword [ebp - 0x60]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4189b2
push ebx
call fcn.00478cf1
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]
push 1
mov eax, str.join
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 + 0x30]
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x4189f7
push ebx
call fcn.00478cf1
add esp, 4
mov eax, dword [ebp - 0x20]
xor ecx, ecx
push eax
lea eax, [ebp - 0x10]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x418f47
mov ebx, dword [ebp - 0x14]
call fcn.00401654
mov eax, 0
cmp eax, ecx
jl 0x418a39
push 0x211
push 0x40b9528
push 1
call fcn.00478d03
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
fild dword [ebp - 0x10]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fsub qword [0x5512e7]
fstp qword [ebp - 0x2c]
push 0x80000601
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push 1
mov ebx, 0x47afb0
call fcn.00478cf7
add esp, 0x10
mov dword [ebp - 0x30], eax
push str._.gc
push dword [ebp - 0x30]
push str.join_
mov ecx, 3
call fcn.0040203a
add esp, 0xc
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x418aa0
push ebx
call fcn.00478cf1
add esp, 4
mov dword [ebp - 0x38], 0
push 0
push dword [ebp - 0x38]
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0xc]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x28]
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x418ad1
push ebx
call fcn.00478cf1
add esp, 4
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x418ae7
push ebx
call fcn.00478cf1
add esp, 4
pop eax
mov ebx, dword [ebp - 0x1c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x14]
call fcn.00401654
mov eax, 1
cmp eax, ecx
jl 0x418b15
push 0x2a8
push 0x40b9528
push 1
call fcn.00478d03
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
fild dword [ebp - 0x10]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fsub qword [0x5512e7]
fstp qword [ebp - 0x2c]
push 0x80000601
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push 1
mov ebx, 0x47afb0
call fcn.00478cf7
add esp, 0x10
mov dword [ebp - 0x30], eax
push str._.gc
push dword [ebp - 0x30]
push str.create_
mov ecx, 3
call fcn.0040203a
add esp, 0xc
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x418b7c
push ebx
call fcn.00478cf1
add esp, 4
mov dword [ebp - 0x38], 0
push 0
push dword [ebp - 0x38]
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0xc]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x28]
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x418bad
push ebx
call fcn.00478cf1
add esp, 4
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x418bc3
push ebx
call fcn.00478cf1
add esp, 4
pop eax
mov ebx, dword [ebp - 0x1c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x14]
call fcn.00401654
mov eax, 2
cmp eax, ecx
jl 0x418bf1
push 0x340
push 0x40b9528
push 1
call fcn.00478d03
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
fild dword [ebp - 0x10]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fsub qword [0x5512e7]
fstp qword [ebp - 0x2c]
push 0x80000601
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push 1
mov ebx, 0x47afb0
call fcn.00478cf7
add esp, 0x10
mov dword [ebp - 0x30], eax
push str._.gc
push dword [ebp - 0x30]
push str.manage_
mov ecx, 3
call fcn.0040203a
add esp, 0xc
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x418c58
push ebx
call fcn.00478cf1
add esp, 4
mov dword [ebp - 0x38], 0
push 0
push dword [ebp - 0x38]
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0xc]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x28]
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x418c89
push ebx
call fcn.00478cf1
add esp, 4
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x418c9f
push ebx
call fcn.00478cf1
add esp, 4
pop eax
mov ebx, dword [ebp - 0x1c]
mov dword [ebx], eax
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
call fcn.00401bfa
xor ecx, ecx
push eax
lea eax, [ebp - 0x18]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x418f3c
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
call fcn.00401654
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x418cef
push 0x444
push 0x40b9528
push 4
call fcn.00478d03
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x418d0c
push 0x444
push 0x40b9528
push 1
call fcn.00478d03
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x14]
call fcn.00401654
mov eax, 0
cmp eax, ecx
jl 0x418d3c
push 0x444
push 0x40b9528
push 1
call fcn.00478d03
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
mov eax, dword [ebx]
push eax
mov ebx, dword [ebp - 0x1c]
push dword [ebx]
call fcn.00401237
add esp, 8
cmp eax, 0
je 0x418e98
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
call fcn.00401654
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x418d89
push 0x472
push 0x40b9528
push 4
call fcn.00478d03
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x418da6
push 0x472
push 0x40b9528
push 1
call fcn.00478d03
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x14]
call fcn.00401654
mov eax, 1
cmp eax, ecx
jl 0x418dd6
push 0x472
push 0x40b9528
push 1
call fcn.00478d03
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
push eax
mov ebx, dword [ebp - 0x28]
push dword [ebx]
call fcn.00401237
add esp, 8
cmp eax, 0
je 0x418e98
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
call fcn.00401654
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x418e23
push 0x4a0
push 0x40b9528
push 4
call fcn.00478d03
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x418e40
push 0x4a0
push 0x40b9528
push 1
call fcn.00478d03
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x14]
call fcn.00401654
mov eax, 2
cmp eax, ecx
jl 0x418e70
push 0x4a0
push 0x40b9528
push 1
call fcn.00478d03
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
mov eax, dword [ebx]
push eax
mov ebx, dword [ebp - 0x34]
push dword [ebx]
call fcn.00401237
add esp, 8
cmp eax, 0
je 0x418e98
xor eax, eax
jmp 0x418e9d
mov eax, 1
test eax, eax
je 0x418f34
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
call fcn.00401654
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x418ece
push 0x4d0
push 0x40b9528
push 4
call fcn.00478d03
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x418eeb
push 0x4d0
push 0x40b9528
push 1
call fcn.00478d03
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x1c]
mov eax, dword [ebx]
test eax, eax
je 0x418f11
push eax
mov ebx, eax
call fcn.004014d3
inc eax
push eax
call fcn.00478cfd
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp + 0xc]
mov ebx, dword [ebx]
test ebx, ebx
je 0x418f24
push ebx
call fcn.00478cf1
add esp, 4
pop eax
mov ebx, dword [ebp + 0xc]
mov dword [ebx], eax
mov eax, 1
jmp 0x418f54
pop eax
pop ebx
pop ecx
jmp 0x418cb8
add esp, 0xc
pop eax
pop ebx
pop ecx
jmp 0x418a03
add esp, 0xc
mov eax, 0
jmp 0x418f54
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x418f65
push ebx
call fcn.00478cf1
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x418f75
push ebx
call fcn.00478cf1
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
mov eax, dword [ebx]
call dword [eax]
call fcn.00478cf1
add esp, 4
mov ebx, dword [ebp - 0x14]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x418fa3
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x418f9f
imul eax, dword [ebx]
jmp 0x418f94
mov ecx, eax
test ecx, ecx
je 0x418fc2
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x418fbb
push ebx
push eax
call fcn.00478cf1
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x418fa9
call fcn.00478cf1
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 8