Function at 0x5198a4
Capabilities:
Persist via run registry key

Disassembly:
push ebp
mov ebp, esp
mov ecx, 5
push 0
push 0
dec ecx
jne 0x5198ac
push ecx
push ebx
push esi
push edi
mov ebx, 0x5670e8
mov esi, dword [0x524e6c]
xor eax, eax
push ebp
push 0x519f3f
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x519f1a
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000001
mov eax, dword [ebx]
call fcn.00466ebc
mov cl, 1
mov edx, 0x519f58
mov eax, dword [ebx]
call fcn.00466f20
mov ecx, 2
mov edx, 0x519f8c
mov eax, dword [ebx]
call fcn.00467180
mov eax, dword [ebx]
call fcn.00466e8c
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000002
mov eax, dword [ebx]
call fcn.00466ebc
mov cl, 1
mov edx, 0x519fa0
mov eax, dword [ebx]
call fcn.00466f20
xor ecx, ecx
mov edx, 0x519fe4
mov eax, dword [ebx]
call fcn.00467180
mov eax, dword [ebx]
call fcn.00466e8c
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000002
mov eax, dword [ebx]
call fcn.00466ebc
mov cl, 1
mov edx, 0x519ff8
mov eax, dword [ebx]
call fcn.00466f20
mov ecx, 1
mov edx, 0x51a030
mov eax, dword [ebx]
call fcn.00467180
mov eax, dword [ebx]
call fcn.00466e8c
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000002
mov eax, dword [ebx]
call fcn.00466ebc
mov eax, dword [ebx]
mov byte [eax + 0xc], 0
mov cl, 1
mov edx, 0x51a04c
mov eax, dword [ebx]
call fcn.00466f20
lea edx, [ebp - 4]
mov eax, dword [esi]
call fcn.00463d50
mov ecx, dword [ebp - 4]
mov edx, 0x51a088
mov eax, dword [ebx]
call fcn.004670dc
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000002
mov eax, dword [ebx]
call fcn.00466ebc
mov eax, dword [ebx]
mov byte [eax + 0xc], 0
mov cl, 1
mov edx, 0x51a094
mov eax, dword [ebx]
call fcn.00466f20
lea edx, [ebp - 8]
mov eax, dword [esi]
call fcn.00463d50
mov ecx, dword [ebp - 8]
mov edx, 0x51a0f4
mov eax, dword [ebx]
call fcn.004670dc
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000002
mov eax, dword [ebx]
call fcn.00466ebc
mov eax, dword [ebx]
mov byte [eax + 0xc], 0
mov cl, 1
mov edx, 0x51a108
mov eax, dword [ebx]
call fcn.00466f20
lea edx, [ebp - 0xc]
mov eax, dword [esi]
call fcn.00463d50
mov ecx, dword [ebp - 0xc]
mov edx, 0x51a0f4
mov eax, dword [ebx]
call fcn.004670dc
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000002
mov eax, dword [ebx]
call fcn.00466ebc
mov eax, dword [ebx]
mov byte [eax + 0xc], 0
mov cl, 1
mov edx, 0x51a168
mov eax, dword [ebx]
call fcn.00466f20
lea edx, [ebp - 0x10]
mov eax, dword [esi]
call fcn.00463d50
mov ecx, dword [ebp - 0x10]
mov edx, 0x51a0f4
mov eax, dword [ebx]
call fcn.004670dc
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000002
mov eax, dword [ebx]
call fcn.00466ebc
mov eax, dword [ebx]
mov byte [eax + 0xc], 0
mov cl, 1
mov edx, 0x51a1c8
mov eax, dword [ebx]
call fcn.00466f20
lea edx, [ebp - 0x14]
mov eax, dword [esi]
call fcn.00463d50
mov ecx, dword [ebp - 0x14]
mov edx, 0x51a0f4
mov eax, dword [ebx]
call fcn.004670dc
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000002
mov eax, dword [ebx]
call fcn.00466ebc
mov eax, dword [ebx]
mov byte [eax + 0xc], 0
mov cl, 1
mov edx, 0x51a228
mov eax, dword [ebx]
call fcn.00466f20
lea edx, [ebp - 0x18]
mov eax, dword [esi]
call fcn.00463d50
mov ecx, dword [ebp - 0x18]
mov edx, 0x51a0f4
mov eax, dword [ebx]
call fcn.004670dc
call fcn.005197e4
test eax, eax
je 0x519bea
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000002
mov eax, dword [ebx]
call fcn.00466ebc
mov cl, 1
mov edx, 0x51a284
mov eax, dword [ebx]
call fcn.00466f20
push 0x51a2e0
lea edx, [ebp - 0x20]
mov eax, dword [esi]
call fcn.00463d50
push dword [ebp - 0x20]
push 0x51a2f4
lea eax, [ebp - 0x1c]
mov edx, 3
call fcn.00404a74
mov ecx, dword [ebp - 0x1c]
mov edx, 0x51a0f4
mov eax, dword [ebx]
call fcn.004670dc
jmp 0x519c4c
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000002
mov eax, dword [ebx]
call fcn.00466ebc
mov cl, 1
mov edx, 0x51a284
mov eax, dword [ebx]
call fcn.00466f20
push 0x51a2f4
lea edx, [ebp - 0x28]
mov eax, dword [esi]
call fcn.00463d50
push dword [ebp - 0x28]
push 0x51a300
lea eax, [ebp - 0x24]
mov edx, 3
call fcn.00404a74
mov ecx, dword [ebp - 0x24]
mov edx, 0x51a0f4
mov eax, dword [ebx]
call fcn.004670dc
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000001
mov eax, dword [ebx]
call fcn.00466ebc
mov cl, 1
mov edx, 0x51a314
mov eax, dword [ebx]
call fcn.00466f20
mov ecx, 1
mov edx, 0x51a35c
mov eax, dword [ebx]
call fcn.00467180
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000002
mov eax, dword [ebx]
call fcn.00466ebc
mov cl, 1
mov edx, 0x519fa0
mov eax, dword [ebx]
call fcn.00466f20
mov ecx, 1
mov edx, 0x51a378
mov eax, dword [ebx]
call fcn.00467180
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000001
mov eax, dword [ebx]
call fcn.00466ebc
mov cl, 1
mov edx, 0x51a398
mov eax, dword [ebx]
call fcn.00466f20
mov ecx, 1
mov edx, 0x51a3e8
mov eax, dword [ebx]
call fcn.00467180
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000001
mov eax, dword [ebx]
call fcn.00466ebc
mov cl, 1
mov edx, 0x51a3f8
mov eax, dword [ebx]
call fcn.00466f20
mov ecx, 1
mov edx, 0x51a43c
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a45c
mov eax, dword [ebx]
call fcn.00467180
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000001
mov eax, dword [ebx]
call fcn.00466ebc
mov eax, dword [ebx]
mov byte [eax + 0xc], 0
mov cl, 1
mov edx, 0x51a47c
mov eax, dword [ebx]
call fcn.00466f20
mov ecx, 1
mov edx, 0x51a4c0
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a4dc
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a4f4
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a514
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a530
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a544
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a55c
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a57c
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a3e8
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a59c
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a5b4
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a5d0
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a5e8
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a5fc
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a60c
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a620
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a638
mov eax, dword [ebx]
call fcn.00467180
mov ecx, 1
mov edx, 0x51a648
mov eax, dword [ebx]
call fcn.00467180
mov eax, dword [ebx]
call fcn.004038e4
mov dl, 1
mov eax, dword [0x466d1c]
call fcn.00466e1c
mov dword [ebx], eax
mov edx, 0x80000002
mov eax, dword [ebx]
call fcn.00466ebc
mov cl, 1
mov edx, 0x51a65c
mov eax, dword [ebx]
call fcn.00466f20
lea edx, [ebp - 0x2c]
mov eax, dword [esi]
call fcn.00463d50
mov edx, dword [ebp - 0x2c]
xor ecx, ecx
mov eax, dword [ebx]
call fcn.00467180
mov eax, dword [ebx]
call fcn.004038e4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x519f24
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x519f46
lea eax, [ebp - 0x2c]
mov edx, 0xb
call fcn.00404718
ret