Function at 0x49e5ac
Capabilities:
Persist via run registry key

Disassembly:
push ebp
mov ebp, esp
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ebx
push esi
push edi
mov esi, dword [0x4ab140]
xor eax, eax
push ebp
push 0x49ea4f
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [0x4ab2d0]
mov edx, dword [edx]
lea eax, [ebp - 4]
mov ecx, dword [0x4aa9e8]
call fcn.00404290
mov ecx, dword [ebp - 4]
mov dl, 1
mov eax, dword [0x43510c]
call fcn.004351bc
mov ebx, eax
mov eax, dword [esi]
mov eax, dword [eax + 0x484]
mov edx, dword [eax]
call dword [edx + 0xcc]
inc eax
je 0x49e661
mov eax, dword [esi]
mov eax, dword [eax + 0x484]
mov edx, dword [eax]
call dword [edx + 0xcc]
push eax
mov ecx, 0x49ea68
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [esi]
mov eax, dword [eax + 0x484]
mov edx, dword [eax]
call dword [edx + 0xcc]
call fcn.0049f384
add esp, 0xfffffff4
fstp xword [esp]
wait
lea eax, [ebp - 8]
call fcn.004098b0
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x49ea8c
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 4]
lea edx, [ebp - 0xc]
mov eax, dword [esi]
mov eax, dword [eax + 0x470]
call fcn.00454660
mov eax, dword [ebp - 0xc]
push eax
mov ecx, 0x49ea98
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 4]
mov eax, dword [esi]
mov eax, dword [eax + 0x418]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49eaa8
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x488]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49eabc
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x430]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49ead0
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x424]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49eae0
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x420]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49eaf4
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x414]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49eb08
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x428]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49eb1c
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x3a0]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49eb30
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x368]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49eb4c
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x3e0]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49eb5c
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x3fc]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49eb74
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x3ec]
mov eax, dword [eax + 0x16c]
call fcn.00424c14
push eax
mov ecx, 0x49eb8c
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [esi]
mov eax, dword [eax + 0x3e8]
mov eax, dword [eax + 0x16c]
call fcn.00424c14
push eax
mov ecx, 0x49eb9c
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [0x4ab4dc]
mov eax, dword [eax]
push eax
mov ecx, 0x49ebac
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [esi]
mov eax, dword [eax + 0x36c]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49ebc4
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x3cc]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49ebd4
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x460]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49ebe4
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x46c]
mov edx, dword [eax]
call dword [edx + 0xc8]
push eax
mov ecx, 0x49ebf8
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x37c]
mov edx, dword [eax]
call dword [edx + 0xcc]
inc eax
jne 0x49e90c
mov eax, dword [esi]
mov eax, dword [eax + 0x37c]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0xd0]
mov eax, dword [esi]
mov eax, dword [eax + 0x37c]
mov edx, dword [eax]
call dword [edx + 0xcc]
push eax
mov ecx, 0x49ec0c
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [esi]
mov eax, dword [eax + 0x410]
mov edx, dword [eax]
call dword [edx + 0xc8]
test al, al
je 0x49e957
push 1
mov ecx, 0x49ec1c
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
jmp 0x49e96a
push 0
mov ecx, 0x49ec1c
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [0x4ab5f0]
mov eax, dword [eax]
mov eax, dword [eax + 0x344]
mov al, byte [eax + 0x38]
push eax
mov ecx, 0x49ec2c
mov edx, 0x49ea7c
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x14]
mov eax, ebx
call fcn.004031f4
mov dl, 1
mov eax, dword [0x436058]
call fcn.00436158
mov ebx, eax
mov edx, 0x80000001
mov eax, ebx
call fcn.004361f8
mov cl, 1
mov edx, 0x49ec40
mov eax, ebx
call fcn.0043625c
mov eax, dword [esi]
mov eax, dword [eax + 0x36c]
mov edx, dword [eax]
call dword [edx + 0xc8]
test al, al
je 0x49ea11
mov edx, dword [0x4ab510]
mov edx, dword [edx]
lea eax, [ebp - 0x10]
mov ecx, 0x49ec78
call fcn.00404290
mov ecx, dword [ebp - 0x10]
mov edx, 0x49ec94
mov eax, ebx
call fcn.00436418
mov edx, 0x49eca8
mov eax, ebx
call fcn.00436608
test al, al
je 0x49ea1d
mov edx, 0x49eca8
mov eax, ebx
call fcn.00436380
jmp 0x49ea1d
mov edx, 0x49ec94
mov eax, ebx
call fcn.00436380
mov eax, ebx
call fcn.004031f4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x49ea56
lea eax, [ebp - 0x10]
call fcn.00403f84
lea eax, [ebp - 0xc]
call fcn.00403f84
lea eax, [ebp - 8]
mov edx, 2
call fcn.00403fa8
ret