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

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x987c
call fcn.00444d50
mov eax, dword [0x4ca578]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push edi
mov edi, dword [ebp + 0x1c]
mov ebx, ecx
mov dword [ebp - 0x987c], eax
mov eax, dword [ebp + 0x18]
push 0x400
mov dword [ebp - 0x9870], eax
lea eax, [ebp - 0x1a68]
push 0
push eax
mov dword [ebp - 0x9874], ebx
mov dword [ebp - 0x986c], edi
call fcn.00447700
push 5
lea eax, [ebp - 0xc]
mov dword [ebp - 0x54], 0
push eax
push dword [ebx + 0x2cab4]
xorps xmm0, xmm0
movups xmmword [ebp - 0x74], xmm0
movups xmmword [ebp - 0x64], xmm0
call fcn.00454d08
mov ecx, ebx
add esp, 0x18
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x414a50
sub ecx, edx
je 0x41559f
push esi
lea eax, [ebx + 0x3e3c]
mov dword [ebp - 0x9878], 0x46d520
push eax
push 0x470d38
push 0x3ff
lea esi, [ebx + 0x3a3c]
push 0x400
push esi
call fcn.00407d40
push dword [ebp - 0x987c]
lea eax, [ebp - 0x3c68]
push 0x470d4c
push 0x400
push eax
call fcn.0041a180
lea eax, [ebp - 0x3c68]
push eax
lea eax, [ebp - 0x4468]
push 0x400
push eax
call fcn.004539f4
add esp, 0x30
lea eax, [ebp - 0x1a68]
mov ecx, 0x5420e0
push eax
lea eax, [ebp - 0x4468]
push eax
call fcn.00441840
mov eax, dword [ebp - 0x9870]
test eax, eax
je 0x414b53
push eax
push 0x470d6c
lea eax, [ebp - 0x7868]
push 0x800
push eax
call fcn.0041a180
lea eax, [ebp - 0x7868]
push eax
lea eax, [ebp - 0x8868]
push 0x800
push eax
call fcn.004539f4
add esp, 0x1c
lea eax, [ebp - 0x4c68]
mov ecx, 0x5420e0
push eax
lea eax, [ebp - 0x8868]
push eax
call fcn.00441840
lea eax, [ebp - 0x4c68]
push eax
lea eax, [ebp - 0x1a68]
push eax
lea eax, [ebp - 0x3468]
push 0x470d98
push eax
call fcn.0040c700
add esp, 0x10
jmp 0x414b6e
lea eax, [ebp - 0x1a68]
push eax
lea eax, [ebp - 0x3468]
push 0x46d888
push eax
call fcn.0040c700
add esp, 0xc
test edi, edi
je 0x414ca3
mov ecx, edi
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x414b80
mov esi, dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
sub ecx, edx
push 0
push 0
push 0
push 0
sar ecx, 1
push ecx
push edi
push 0
push 0xfde9
call esi
mov edi, eax
push edi
push 0x40
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
push 0
push 0
push edi
mov ebx, eax
push ebx
push 0xffffffffffffffff
push dword [ebp - 0x986c]
push 0
push 0xfde9
call esi
lea eax, [edi + edi*2]
push eax
push 1
call fcn.0044aad9
mov esi, dword [ebp - 0x9874]
add esp, 8
mov ecx, esi
push ebx
mov dword [esi + 0x2d9f8], eax
call fcn.00411410
mov ebx, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push 0
push 0
push 0xffffffffffffffff
push dword [esi + 0x2d9f8]
push 0
push 0xfde9
call ebx
mov esi, eax
lea ecx, [esi*2 + 2]
push ecx
push 0x40
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
push esi
mov edi, eax
mov eax, dword [ebp - 0x9874]
push edi
push 0xffffffffffffffff
push dword [eax + 0x2d9f8]
push 0
push 0xfde9
call ebx
push edi
push 0x4717a0
lea eax, [ebp - 0x9868]
push 0x800
push eax
call fcn.0041a180
mov ebx, dword [ebp - 0x9874]
push dword [ebx + 0x2d9f8]
call fcn.0044aae4
add esp, 0x14
lea eax, [ebp - 0x5468]
mov ecx, 0x5420e0
push eax
lea eax, [ebp - 0x9868]
push eax
call fcn.00441840
lea eax, [ebp - 0x5468]
push eax
lea eax, [ebp - 0x3468]
push eax
push 0x470d98
lea eax, [ebp - 0x6868]
push eax
call fcn.0040c700
add esp, 0x10
lea esi, [ebx + 0x3a3c]
jmp 0x414cbe
lea eax, [ebp - 0x3468]
push eax
lea eax, [ebp - 0x6868]
push 0x46d888
push eax
call fcn.0040c700
add esp, 0xc
push dword [ebp + 0x14]
lea eax, [ebp - 0x204]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push 0x470da0
push 0xc7
push 0xc8
push eax
call fcn.00407d40
lea eax, [ebx + 0x423c]
push eax
lea eax, [ebp - 0x2068]
push 0x400
push eax
call fcn.0044a958
lea eax, [ebp - 0x2068]
push 0x400
push eax
call fcn.004549bb
push 0x400
push 1
call fcn.0044aad9
mov edi, eax
lea eax, [ebp - 0x2068]
push eax
push 0x3ff
push 0x400
push edi
call fcn.00407d40
add esp, 0x48
lea edx, [ebx + 0x4c94]
cmp dword [ebx + 0x4ac], 0
je 0x414e17
push edi
lea eax, [ebp - 0x2468]
push 0x400
push eax
call fcn.00407d80
add esp, 0xc
lea eax, [ebp - 0x268]
mov ecx, 0x5420e0
push 0x64
push eax
push 0x470abc
push 0x470ac0
lea eax, [ebp - 0x2468]
push eax
call fcn.00441170
lea eax, [ebp - 0x268]
push eax
push 0x46def4
lea eax, [ebp - 0x13c]
push 0x64
push eax
call fcn.00407d80
lea eax, [ebx + 0x4c94]
push eax
push 0x46def4
lea eax, [ebp - 0xd8]
push 0x64
push eax
call fcn.00407d80
lea edx, [ebp - 0xd8]
add esp, 0x20
lea ecx, [edx + 1]
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x414dc0
sub edx, ecx
lea ecx, [ebp - 0x13c]
lea eax, [ecx + 1]
mov dword [ebp - 0x986c], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x414dd8
sub ecx, dword [ebp - 0x986c]
lea eax, [ebp - 0xd8]
push 0x400
push edi
push edx
push eax
push ecx
lea eax, [ebp - 0x13c]
mov ecx, 0x5420e0
push eax
push 0x400
lea eax, [ebp - 0x2468]
push eax
call fcn.00441360
lea edx, [ebx + 0x4c94]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x986c], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x414e22
sub ecx, dword [ebp - 0x986c]
push 0x400
push edi
push ecx
push edx
push 0xf
push 0x46e524
push 0x400
push edi
mov ecx, 0x5420e0
call fcn.00441360
lea eax, [ebx + 0x4c94]
push eax
push dword [0x504e50]
call fcn.00440eb0
lea edx, [ebx + 0x4c30]
add esp, 8
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x986c], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x414e74
sub ecx, dword [ebp - 0x986c]
push 0x400
push edi
push ecx
push edx
push 0x13
push 0x46e534
push 0x400
push edi
mov ecx, 0x5420e0
call fcn.00441360
lea edx, [ebx + 0x4bcc]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x986c], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x414eb1
sub ecx, dword [ebp - 0x986c]
push 0x400
push edi
push ecx
push edx
push 0x13
push 0x46e55c
push 0x400
push edi
mov ecx, 0x5420e0
call fcn.00441360
lea edx, [ebx + 0x4b68]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x986c], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x414ef0
sub ecx, dword [ebp - 0x986c]
push 0x400
push edi
push ecx
push edx
push 0x11
push 0x46e548
push 0x400
push edi
mov ecx, 0x5420e0
call fcn.00441360
push 0x470dcc
push edi
call fcn.00447860
add esp, 8
test eax, eax
jne 0x414f4d
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x414f33
push 0x400
push edi
sub ecx, edx
push ecx
push esi
push 0x1a
push str.agentidentifierWINCSECB
jmp 0x414f7c
push str.wincaltsecb_
push edi
call fcn.00447860
add esp, 8
test eax, eax
jne 0x414f8c
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x414f64
push 0x400
push edi
sub ecx, edx
push ecx
push esi
push 0x1b
push str.agentidentifierwincaltsecb
push 0x400
push edi
mov ecx, 0x5420e0
call fcn.00441360
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x414f91
push 0x400
push edi
sub ecx, edx
push ecx
push esi
push 0x17
push 0x470e20
push 0x400
push edi
mov ecx, 0x5420e0
call fcn.00441360
push 0x400
push edi
push 1
push 0x46d520
push 0x16
push 0x470e38
push 0x400
push edi
mov ecx, 0x5420e0
call fcn.00441360
push 0x400
push edi
push 1
push 0x46d520
push 0x12
push 0x470e50
push 0x400
push edi
mov ecx, 0x5420e0
call fcn.00441360
push 0x400
push edi
push 1
push 0x46d520
push 0x13
push 0x470e64
push 0x400
push edi
mov ecx, 0x5420e0
call fcn.00441360
push 0x470e78
push 0x400
push edi
call fcn.0044a9b2
lea eax, [ebx + 0x4a3c]
push eax
push 0x400
push edi
call fcn.0044a9b2
push 0x470b04
push 0x400
push edi
call fcn.0044a9b2
lea eax, [ebx + 0x4aa0]
push eax
push 0x400
push edi
call fcn.0044a9b2
push 0x470e84
push 0x400
push edi
call fcn.0044a9b2
push 0x514ab4
push 0x400
push edi
call fcn.0044a9b2
add esp, 0x48
push 0x470e94
push 0x400
push edi
call fcn.0044a9b2
lea eax, [ebp - 0x74]
push eax
push 0x400
push edi
call fcn.0044a9b2
push 0x470e9c
push 0x400
push edi
call fcn.0044a9b2
lea eax, [ebp - 0xc]
push eax
push 0x400
push edi
call fcn.0044a9b2
add esp, 0x30
mov ecx, 0x5420e0
push 0x400
push edi
push 1
push 0x46d520
push 0x16
push 0x470ea8
push 0x400
push edi
call fcn.00441360
mov ecx, edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4150f6
sub ecx, edx
push 0x470ea8
lea eax, [ecx + 0x17]
push eax
push edi
call fcn.0044a9b2
push 0x400
push 1
call fcn.0044aad9
mov esi, eax
lea ecx, [ebp - 0x204]
add esp, 0x14
mov dword [ebp - 0x9870], esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x415130
push 0x400
push esi
sub ecx, edx
lea eax, [ebp - 0x204]
push ecx
push eax
push 0x15
push 0x470ec0
push 0x400
push edi
mov ecx, 0x5420e0
call fcn.00441360
push 0
push 0
push 0x470ed8
push 0x46e5a0
push esi
push 0x400
lea eax, [ebp - 0x1668]
mov ecx, ebx
push eax
call fcn.00413d00
lea ecx, [ebp - 0x1668]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x415190
sub ecx, edx
lea edx, [ebp - 0x204]
lea eax, [edx + 1]
mov dword [ebp - 0x986c], eax
mov al, byte [edx]
inc edx
test al, al
jne 0x4151a8
sub edx, dword [ebp - 0x986c]
lea eax, [ebp - 0x204]
push eax
lea eax, [edx + 1]
add eax, ecx
push eax
lea eax, [ebp - 0x1668]
push eax
call fcn.0044a9b2
add esp, 0xc
lea eax, [ebp - 0x2868]
mov ecx, ebx
push eax
lea eax, [ebp - 0x1668]
push eax
call fcn.0041a050
lea eax, [ebp - 0x2868]
push eax
push 0x46e5a4
push 0x1ff
lea eax, [ebp - 0x1c68]
push 0x200
push eax
call fcn.00407d40
add esp, 0x14
lea eax, [ebp - 0x50]
mov ecx, ebx
push eax
lea eax, [ebp - 0x1c68]
push eax
call fcn.00416630
push esi
lea eax, [ebp - 0xa68]
push 0x400
push eax
call fcn.0044a958
push 4
push 0x46e5dc
lea eax, [ebp - 0xa68]
push 0x400
push eax
call fcn.00455476
push 0x29
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0xa68]
push 0x400
push eax
call fcn.00455476
lea eax, [ebp - 0xa68]
push eax
push 0x470ee4
push dword [0x504e50]
call fcn.00440eb0
push 7
lea eax, [ebp - 0xa68]
push 0x46da94
push eax
call fcn.004536ea
add esp, 0x44
test eax, eax
jne 0x415396
push 0x400
lea eax, [ebp - 0x1268]
mov ecx, 0x5420e0
push eax
push 0x470f14
push 0x46da94
lea eax, [ebp - 0xa68]
push eax
call fcn.00441170
lea eax, [ebp - 0x1268]
push eax
push 0x470f20
push dword [0x504e50]
call fcn.00440eb0
add esp, 0xc
lea eax, [ebp - 0x668]
mov ecx, 0x5420e0
push 0x400
push eax
lea eax, [ebp - 0x50]
push eax
push 0x470f14
lea eax, [ebp - 0xa68]
push eax
call fcn.00441170
lea eax, [ebp - 0x668]
push eax
push 0x470f34
push dword [0x504e50]
call fcn.00440eb0
push 0x29
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x668]
push 0x3ff
push eax
call fcn.00455476
lea ecx, [ebp - 0xe68]
add esp, 0x1c
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x415334
sub ecx, edx
push 0x470f14
lea eax, [ecx + 9]
push eax
lea eax, [ebp - 0xe68]
push 0x400
push eax
call fcn.00407d40
lea ecx, [ebp - 0x668]
add esp, 0x10
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x415363
sub ecx, edx
lea eax, [ebp - 0x668]
push ecx
push eax
lea eax, [ebp - 0xe68]
push 0x400
push eax
call fcn.00455476
lea eax, [ebp - 0xe68]
push eax
push 0x470f54
jmp 0x4154b2
push 8
lea eax, [ebp - 0xa68]
push 0x46da9c
push eax
call fcn.004536ea
add esp, 0xc
test eax, eax
jne 0x4154c0
push 0x400
lea eax, [ebp - 0x1268]
mov ecx, 0x5420e0
push eax
push 0x470f14
push 0x46da9c
lea eax, [ebp - 0xa68]
push eax
call fcn.00441170
lea eax, [ebp - 0x1268]
push eax
push 0x470f20
push dword [0x504e50]
call fcn.00440eb0
add esp, 0xc
lea eax, [ebp - 0x668]
mov ecx, 0x5420e0
push 0x400
push eax
lea eax, [ebp - 0x50]
push eax
push 0x470f14
lea eax, [ebp - 0xa68]
push eax
call fcn.00441170
lea eax, [ebp - 0x668]
push eax
push 0x470f34
push dword [0x504e50]
call fcn.00440eb0
push 0x29
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x668]
push 0x400
push eax
call fcn.00455476
lea ecx, [ebp - 0xe68]
add esp, 0x1c
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x415455
sub ecx, edx
push 0x470f14
lea eax, [ecx + 9]
push eax
lea eax, [ebp - 0xe68]
push 0x400
push eax
call fcn.00407d40
lea ecx, [ebp - 0x668]
add esp, 0x10
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x415484
sub ecx, edx
lea eax, [ebp - 0x668]
push ecx
push eax
lea eax, [ebp - 0xe68]
push 0x400
push eax
call fcn.00455476
lea eax, [ebp - 0xe68]
push eax
push 0x470f78
push dword [0x504e50]
call fcn.00440eb0
add esp, 0x1c
lea eax, [ebp - 0x6868]
push eax
push 0x470f9c
push dword [0x504e50]
call fcn.00440eb0
push 5
lea eax, [ebp - 0x24]
push eax
push dword [0x50c274]
call fcn.00454d08
push 5
lea eax, [ebp - 0x14]
push eax
push dword [0x50ce78]
call fcn.00454d08
push 5
lea eax, [ebp - 0x1c]
push eax
push dword [0x50ce7c]
call fcn.00454d08
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x24]
push eax
push 0x506018
push 0x5138b0
push 0x49808c
push 0x514ab4
push 0x505c18
lea esi, [ebx + 0x9e68]
push 0x470fb8
push esi
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x58
lea eax, [ebp - 0x9878]
mov ecx, ebx
push eax
lea eax, [ebp - 0x6868]
push eax
lea eax, [ebp - 0xe68]
push eax
push 0x47102c
lea eax, [ebp - 0x1268]
push eax
push esi
call fcn.00419c20
pop esi
test eax, eax
je 0x415579
push 0x47105c
jmp 0x41557e
push 0x471078
push dword [0x504e50]
call fcn.00440eb0
add esp, 8
push edi
call fcn.0044aae4
push dword [ebp - 0x9870]
call fcn.0044aae4
jmp 0x4155af
push 0x471098
push dword [0x504e50]
call fcn.00440eb0
mov ecx, dword [ebp - 4]
add esp, 8
xor ecx, ebp
xor eax, eax
pop edi
pop ebx
call fcn.00444ab5
mov esp, ebp
pop ebp
ret 0x18