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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
push 8
call fcn.0040b6fc
add esp, 4
mov dword [ebp - 0xc], eax
mov edi, eax
mov esi, 0x49a87e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0040b6fc
add esp, 4
mov dword [ebp - 0x10], eax
mov edi, eax
mov esi, 0x49a87e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
push str.g_f0cmd24page0
push dword [0x4c5574]
push str.petid
push dword [0x4c5568]
push 0x49a8e1
mov ecx, 5
call fcn.0040106f
add esp, 0x14
mov dword [ebp - 0x1c], eax
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
push 1
mov eax, str.User_Agent:_Mozilla_5.0__iPhone__U__CPU_OS_4_2_1_like_Mac_OS_X__AppleWebKit_532.9__KHTML__like_Gecko__Version_5.0.3_Mobile_8B5097d_Safari_6531.22.7
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x28]
push eax
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
lea eax, [ebp - 0x1c]
push eax
call fcn.00401a5b
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x404228
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x404238
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x404248
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x404258
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x404268
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x404278
push ebx
call fcn.0040b6d2
add esp, 4
lea eax, [ebp - 0x34]
push eax
call fcn.00402f38
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x404294
push ebx
call fcn.0040b6d2
add esp, 4
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4042a8
push ebx
call fcn.0040b6d2
add esp, 4
pop eax
mov dword [ebp - 4], eax
mov eax, str._br___n
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
mov eax, str._br_
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 4]
push eax
call fcn.004037fb
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x4042e0
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x4042f0
push ebx
call fcn.0040b6d2
add esp, 4
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x404304
push ebx
call fcn.0040b6d2
add esp, 4
pop eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x1c], 0
push 0
push dword [ebp - 0x1c]
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
mov dword [ebp - 0x24], 0
push 0
lea eax, [ebp - 0x24]
push eax
mov dword [ebp - 0x28], 0
push 0
lea eax, [ebp - 0x28]
push eax
mov dword [ebp - 0x2c], 0
push 0
push dword [ebp - 0x2c]
mov dword [ebp - 0x30], 0
push 0
push dword [ebp - 0x30]
push 1
lea eax, [ebp - 0xc]
push eax
mov eax, 0x49a9f3
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x34]
push eax
mov eax, 0x49aa80
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 8]
push eax
call fcn.00404653
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x404389
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x404399
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x4043a9
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x4043b9
push ebx
call fcn.0040b6d2
add esp, 4
mov dword [ebp - 0x1c], 0
push 0
push dword [ebp - 0x1c]
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
mov dword [ebp - 0x24], 0
push 0
lea eax, [ebp - 0x24]
push eax
mov dword [ebp - 0x28], 0
push 0
lea eax, [ebp - 0x28]
push eax
mov dword [ebp - 0x2c], 0
push 0
push dword [ebp - 0x2c]
mov dword [ebp - 0x30], 0
push 0
push dword [ebp - 0x30]
push 1
lea eax, [ebp - 0x10]
push eax
mov eax, 0x49aa82
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x34]
push eax
mov eax, 0x49a9f3
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 8]
push eax
call fcn.00404653
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x40443a
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40444a
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x40445a
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x40446a
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.0040410b
xor ecx, ecx
push eax
lea eax, [ebp - 0x14]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x4045a2
mov ebx, dword [ebp - 0xc]
call fcn.00404124
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4044a6
push 4
call fcn.0040b6f0
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4044b9
push 1
call fcn.0040b6f0
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
mov ebx, 0xc
call fcn.004010cb
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
mov ebx, dword [ebp - 0x1c]
mov eax, dword [ebx]
test eax, eax
jne 0x4044e0
mov eax, 0x49a557
push eax
push 0
push 0
push 0
push 0x60004
push 0x1601179f
push 0x52010001
push 7
mov eax, 5
mov ebx, 0x463170
call fcn.0040b6d8
add esp, 0x58
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x10]
call fcn.00404124
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40452d
push 4
call fcn.0040b6f0
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404540
push 1
call fcn.0040b6f0
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
mov ebx, dword [ebp - 0x1c]
mov eax, dword [ebx]
test eax, eax
jne 0x40455d
mov eax, 0x49a557
push eax
push 0x80000301
push 0
push 1
push 0x80000301
push 0
push dword [ebp - 0x18]
push 0x60004
push 0x1601179f
push 0x52010001
push 4
mov eax, 5
mov ebx, 0x463150
call fcn.0040b6d8
add esp, 0x34
pop eax
pop ebx
pop ecx
jmp 0x40447b
add esp, 0xc
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4045b5
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4045c5
push ebx
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4045e3
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4045df
imul eax, dword [ebx]
jmp 0x4045d4
mov ecx, eax
test ecx, ecx
je 0x404602
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x4045fb
push ebx
push eax
call fcn.0040b6d2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4045e9
call fcn.0040b6d2
add esp, 4
mov ebx, dword [ebp - 0x10]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x404628
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x404624
imul eax, dword [ebx]
jmp 0x404619
mov ecx, eax
test ecx, ecx
je 0x404647
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x404640
push ebx
push eax
call fcn.0040b6d2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40462e
call fcn.0040b6d2
add esp, 4
mov esp, ebp
pop ebp
ret