Function at 0x461904
Capabilities:
Persist via run registry key

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 7
push 0
push 0
dec ecx
jne 0x46190d
xchg dword [ebp - 4], ecx
push ebx
mov dword [ebp - 8], ecx
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
call fcn.00404854
mov eax, dword [ebp - 8]
call fcn.00404854
mov eax, dword [ebp + 8]
call fcn.00404854
xor eax, eax
push ebp
push 0x461bfa
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 9], 0
lea edx, [ebp - 0x10]
mov eax, dword [0x463f60]
call fcn.0045d1c0
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 0x10]
mov ecx, 0x461c0c
call fcn.0040611c
lea eax, [ebp - 0x18]
mov edx, dword [ebp - 0x10]
mov ecx, 0x461c1c
call fcn.0040611c
mov eax, dword [ebp - 4]
call fcn.00404864
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [eax]
call dword [eax + 0x50]
lea edx, [ebp - 0x30]
mov eax, dword [ebp - 4]
call fcn.00408d90
mov eax, dword [ebp - 0x30]
call fcn.00404864
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [eax]
call dword [eax + 0x24]
mov dl, 1
mov eax, dword [0x45ddd0]
call fcn.0045ded0
mov dword [ebp - 0x2c], eax
mov edx, 0x80000001
mov eax, dword [ebp - 0x2c]
call fcn.0045df70
xor eax, eax
push ebp
push 0x461b96
push dword fs:[eax]
mov dword fs:[eax], esp
xor ecx, ecx
mov edx, 0x461c34
mov eax, dword [ebp - 0x2c]
call fcn.0045dfd4
test al, al
je 0x461b80
cmp dword [ebp - 4], 0
je 0x461a0b
cmp dword [ebp - 8], 0
je 0x4619fe
lea eax, [ebp - 0x24]
mov edx, dword [ebp - 8]
call fcn.0040444c
jmp 0x461a18
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 4]
call fcn.00408e04
jmp 0x461a18
lea eax, [ebp - 0x24]
mov edx, 0x461c80
call fcn.0040444c
mov eax, dword [ebp - 0x24]
call fcn.00404864
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [eax]
call dword [eax + 0x1c]
lea ecx, [ebp - 0x34]
mov edx, 0x461c94
mov eax, dword [ebp - 0x24]
call fcn.00408cfc
mov edx, dword [ebp - 0x34]
lea eax, [ebp - 0x24]
call fcn.0040444c
xor eax, eax
mov al, byte [ebp + 0xc]
cmp eax, 4
ja case.default.0x461a4f
jmp dword [eax*4 + 0x461a56]
lea ecx, [ebp - 0x20]
mov edx, 0x461ca4
mov eax, dword [ebp - 0x2c]
call fcn.0045e19c
jmp case.default.0x461a4f
lea ecx, [ebp - 0x20]
mov edx, 0x461cb4
mov eax, dword [ebp - 0x2c]
call fcn.0045e19c
jmp case.default.0x461a4f
lea ecx, [ebp - 0x20]
mov edx, 0x461cc8
mov eax, dword [ebp - 0x2c]
call fcn.0045e19c
jmp case.default.0x461a4f
lea ecx, [ebp - 0x20]
mov edx, 0x461cdc
mov eax, dword [ebp - 0x2c]
call fcn.0045e19c
jmp case.default.0x461a4f
lea ecx, [ebp - 0x20]
mov edx, 0x461cec
mov eax, dword [ebp - 0x2c]
call fcn.0045e19c
cmp dword [ebp - 0x20], 0
je 0x461b7c
cmp dword [ebp + 8], 0
je 0x461b30
push dword [ebp - 0x20]
push 0x461d28
push dword [ebp + 8]
lea eax, [ebp - 0x1c]
mov edx, 3
call fcn.0040472c
push dword [ebp - 0x1c]
push 0x461d28
push dword [ebp - 0x24]
lea eax, [ebp - 0x38]
mov edx, 3
call fcn.0040472c
mov edx, dword [ebp - 0x38]
lea eax, [ebp - 0x28]
call fcn.00404bf0
mov eax, dword [ebp - 0x1c]
call fcn.00408b64
test al, al
jne 0x461b53
mov eax, dword [ebp - 0x1c]
call fcn.00408ef8
test al, al
jne 0x461b53
mov byte [ebp - 9], 0
call fcn.00403ec0
jmp 0x461b9d
push dword [ebp - 0x20]
push 0x461d28
push dword [ebp - 0x24]
lea eax, [ebp - 0x3c]
mov edx, 3
call fcn.0040472c
mov edx, dword [ebp - 0x3c]
lea eax, [ebp - 0x28]
call fcn.00404bf0
push 0xffffffffffffffff
mov eax, dword [ebp - 0x28]
call fcn.00404c00
push eax
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [eax]
call dword [eax + 0x18]
test eax, eax
je 0x461b76
mov byte [ebp - 9], 0
call fcn.00403ec0
jmp 0x461b9d
mov byte [ebp - 9], 1
jmp 0x461b80
mov byte [ebp - 9], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x461b9d
mov eax, dword [ebp - 0x2c]
call fcn.00403660
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x461c01
lea eax, [ebp - 0x3c]
mov edx, 4
call fcn.004043d8
lea eax, [ebp - 0x28]
call fcn.00404aa4
lea eax, [ebp - 0x24]
mov edx, 3
call fcn.004043d8
lea eax, [ebp - 0x18]
call fcn.004060d8
lea eax, [ebp - 0x14]
call fcn.004060d8
lea eax, [ebp - 0x10]
call fcn.004060d8
lea eax, [ebp - 8]
mov edx, 2
call fcn.004043d8
lea eax, [ebp + 8]
call fcn.004043b4
ret