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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd0
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 8], ecx
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
call fcn.00404c08
mov eax, dword [ebp - 8]
call fcn.00404c08
xor eax, eax
push ebp
push 0x4dddae
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 9], 0
xor ecx, ecx
mov dl, 1
mov eax, dword [0x47a460]
call fcn.0047a948
mov dword [ebp - 0x10], eax
mov dl, 1
mov eax, dword [0x41c204]
call fcn.00403818
mov dword [ebp - 0x14], eax
xor ecx, ecx
mov dl, 1
mov eax, dword [0x41c594]
call fcn.00421408
mov dword [ebp - 0x18], eax
mov dl, 1
mov eax, dword [0x41c204]
call fcn.00403818
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x20]
mov edx, 0x4dddc8
call fcn.004047f0
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x44]
lea eax, [ebp - 0x28]
mov ecx, dword [ebp - 4]
mov edx, 0x4dde24
call fcn.00404a64
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x2c]
mov ecx, dword [ebp - 8]
mov edx, 0x4dde30
call fcn.00404a64
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, 0x4dde40
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, 0x4dde58
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, 0x4dde70
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, 0x4ddec4
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, 0x4dded4
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, 0x4ddeec
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, 0x4ddf00
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, 0x4ddf14
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
call dword [ecx + 0x38]
xor eax, eax
push ebp
push 0x4ddd47
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x10]
mov byte [eax + 0x110], 1
mov eax, dword [ebp - 0x10]
call fcn.0047c540
add eax, 0x24
mov edx, 0x4ddf30
call fcn.004047ac
mov eax, dword [ebp - 0x10]
call fcn.0047c540
add eax, 0x70
mov edx, 0x4ddf5c
call fcn.004047ac
mov eax, dword [ebp - 0x10]
call fcn.0047c540
add eax, 0x6c
mov edx, 0x4de000
call fcn.004047ac
mov eax, dword [ebp - 0x10]
mov al, byte [eax + 0x111]
or al, byte [0x4de044]
mov edx, dword [ebp - 0x10]
mov byte [edx + 0x111], al
mov eax, dword [ebp - 0x10]
mov byte [eax + 0x104], 1
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0047ac6c
lea edx, [ebp - 0x30]
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 4]
call fcn.00406ab0
mov edx, dword [ebp - 0x30]
lea eax, [ebp - 0x1c]
call fcn.004049e0
mov edx, dword [ebp - 0x1c]
mov eax, 0x4de050
call fcn.00404d5c
test eax, eax
jle 0x4ddd28
mov byte [ebp - 9], 1
jmp 0x4ddd3d
mov edx, dword [ebp - 0x1c]
mov eax, 0x4de06c
call fcn.00404d5c
test eax, eax
jle 0x4ddd3d
mov byte [ebp - 9], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4ddd51
mov eax, dword [ebp - 0x14]
call fcn.00403848
mov eax, dword [ebp - 0x18]
call fcn.00403848
mov eax, dword [ebp - 0x24]
call fcn.00403848
mov eax, dword [ebp - 0x10]
call fcn.00403848
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4dddb5
lea eax, [ebp - 0x30]
call fcn.00404e64
lea eax, [ebp - 0x2c]
mov edx, 2
call fcn.0040477c
lea eax, [ebp - 0x20]
mov edx, 2
call fcn.0040477c
lea eax, [ebp - 8]
mov edx, 2
call fcn.0040477c
ret