Function at 0x45e450
Capabilities:
Persist via run registry key

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x10
push 0
push 0
dec ecx
jne 0x45e458
push ebx
push esi
push edi
test dl, dl
je 0x45e46e
add esp, 0xfffffff0
call fcn.00405438
mov byte [ebp - 0x3d], dl
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x38]
mov edx, dword [0x45d864]
call fcn.00407a44
lea eax, [ebp - 0xc]
mov edx, dword [0x45d814]
call fcn.00407a44
lea eax, [ebp - 0x1c]
mov edx, dword [0x45d7a4]
call fcn.00407a44
xor eax, eax
push ebp
push 0x45e748
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x449164]
call fcn.0044a1bc
mov dword [ebp - 0x44], eax
xor eax, eax
push ebp
push 0x45e6af
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, 0x80000001
mov eax, dword [ebp - 0x44]
call fcn.0044a268
xor ecx, ecx
mov edx, 0x45e780
mov eax, dword [ebp - 0x44]
call fcn.0044a2cc
test al, al
je 0x45e525
lea ecx, [ebp - 0x48]
mov edx, 0x45e810
mov eax, dword [ebp - 0x44]
call fcn.0044aa60
mov edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x3c]
add eax, 4
call fcn.00406d58
mov eax, dword [ebp - 0x3c]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 0x3c]
add eax, 8
mov ecx, 0x45e82c
call fcn.004075a8
mov eax, dword [ebp - 0x44]
call fcn.0044a238
mov edx, 0x80000002
mov eax, dword [ebp - 0x44]
call fcn.0044a268
xor ecx, ecx
mov edx, 0x45e780
mov eax, dword [ebp - 0x44]
call fcn.0044a2cc
test al, al
je 0x45e56b
lea ecx, [ebp - 0x4c]
mov edx, 0x45e88c
mov eax, dword [ebp - 0x44]
call fcn.0044aa60
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x3c]
add eax, 0xc
call fcn.00406d58
mov eax, dword [ebp - 0x44]
call fcn.0044a238
xor ecx, ecx
mov edx, 0x45e8b8
mov eax, dword [ebp - 0x44]
call fcn.0044a2cc
test al, al
je 0x45e5a1
lea ecx, [ebp - 0x50]
xor edx, edx
mov eax, dword [ebp - 0x44]
call fcn.0044aa60
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x3c]
add eax, 0x10
call fcn.00406d58
mov eax, dword [ebp - 0x44]
call fcn.0044a238
xor ecx, ecx
mov edx, 0x45e948
mov eax, dword [ebp - 0x44]
call fcn.0044a2cc
test al, al
je 0x45e6a5
lea ecx, [ebp - 4]
mov edx, 0x45e9b0
mov eax, dword [ebp - 0x44]
call fcn.0044aa60
lea eax, [ebp - 0x38]
push eax
movzx ecx, byte [0x45e9c8]
mov edx, 0x45e9d8
mov eax, dword [ebp - 4]
call fcn.0045e0a4
lea eax, [ebp - 0x38]
call fcn.0045df08
test al, al
je 0x45e69d
lea edx, [ebp - 0xc]
lea eax, [ebp - 0x38]
call fcn.0045deec
lea eax, [ebp - 0x70]
mov edx, 1
mov cl, 1
call fcn.00429cac
lea edx, [ebp - 0x70]
lea ecx, [ebp - 0x60]
lea eax, [ebp - 0xc]
call fcn.0045dd2c
lea edx, [ebp - 0x60]
lea eax, [ebp - 0x1c]
mov ecx, dword [0x45d7a4]
call fcn.00407ca0
lea edx, [ebp - 0x74]
lea eax, [ebp - 0x1c]
call fcn.0045dc04
lea edx, [ebp - 0x74]
mov edx, dword [edx]
lea eax, [ebp - 4]
call fcn.00406da0
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0041a598
test al, al
je 0x45e69d
mov eax, dword [ebp - 0x3c]
add eax, 0x14
mov edx, dword [ebp - 4]
call fcn.00406d58
lea edx, [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.0041a8d8
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x3c]
add eax, 0x1c
call fcn.00406d58
lea edx, [ebp - 0x80]
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x1c]
call fcn.0041a914
mov eax, dword [ebp - 0x80]
lea edx, [ebp - 0x7c]
call fcn.0041a914
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x3c]
add eax, 0x18
call fcn.00406d58
mov eax, dword [ebp - 0x44]
call fcn.0044a238
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x45e6b9
mov eax, dword [ebp - 0x44]
xor edx, edx
mov dword [ebp - 0x44], edx
call fcn.00404f10
mov eax, dword [ebp - 0x3c]
call fcn.0045e3a0
xor edx, edx
mov eax, dword [ebp - 0x3c]
call fcn.00404ee0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x45e74f
lea eax, [ebp - 0x80]
mov edx, 4
call fcn.00406a08
lea eax, [ebp - 0x70]
call fcn.00424ad8
lea eax, [ebp - 0x60]
mov edx, dword [0x45d7a4]
call fcn.00407b1c
lea eax, [ebp - 0x50]
mov edx, 3
call fcn.00406a08
lea eax, [ebp - 0x38]
mov edx, dword [0x45d864]
call fcn.00407b1c
lea eax, [ebp - 0x1c]
mov edx, dword [0x45d7a4]
call fcn.00407b1c
lea eax, [ebp - 0xc]
mov edx, dword [0x45d814]
call fcn.00407b1c
lea eax, [ebp - 4]
call fcn.004069a8
ret