Function at 0x33148e1c
Capabilities:
Persist via run registry key

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff98
push ebx
push esi
push edi
xor eax, eax
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov ecx, 0xa
lea eax, [ebp - 0x28]
mov edx, dword [0x33141014]
call fcn.33142d8c
mov ecx, 0xa
lea eax, [ebp - 0x50]
mov edx, dword [0x33141014]
call fcn.33142d8c
mov edi, dword [0x33161440]
xor eax, eax
push ebp
push 0x331490c0
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x331613bc]
cmp byte [eax], 1
jne 0x33148ef4
xor esi, esi
lea ebx, [ebp - 0x28]
push ebx
mov edx, dword [edi]
mov eax, 0x331490d8
call fcn.33142c44
mov ecx, eax
dec ecx
mov eax, dword [edi]
mov edx, 1
call fcn.33142b60
cmp dword [ebx], 0
jne 0x33148eb5
mov eax, esi
call fcn.33141afc
mov edx, dword [ebp + eax*4 - 0x28]
mov eax, ebx
call fcn.331427c8
cmp dword [ebx], 0
jne 0x33148ed1
call fcn.331439b0
lea edx, [ebp - 0x54]
call fcn.33144578
mov edx, dword [ebp - 0x54]
mov eax, ebx
call fcn.331427c8
mov edx, dword [edi]
mov eax, 0x331490d8
call fcn.33142c44
mov ecx, eax
mov eax, edi
mov edx, 1
call fcn.33142ba0
inc esi
add ebx, 4
cmp esi, 0xa
jne 0x33148e82
mov eax, dword [0x331613f0]
cmp byte [eax], 1
jne 0x33148f91
xor esi, esi
lea ebx, [ebp - 0x50]
push ebx
mov edx, dword [0x33161464]
mov edx, dword [edx]
mov eax, 0x331490d8
call fcn.33142c44
mov ecx, eax
dec ecx
mov eax, dword [0x33161464]
mov eax, dword [eax]
mov edx, 1
call fcn.33142b60
cmp dword [ebx], 0
jne 0x33148f45
mov eax, esi
call fcn.33141afc
mov edx, dword [ebp + eax*4 - 0x50]
mov eax, ebx
call fcn.331427c8
cmp dword [ebx], 0
jne 0x33148f61
call fcn.331439b0
lea edx, [ebp - 0x58]
call fcn.33144578
mov edx, dword [ebp - 0x58]
mov eax, ebx
call fcn.331427c8
mov edx, dword [0x33161464]
mov edx, dword [edx]
mov eax, 0x331490d8
call fcn.33142c44
mov ecx, eax
mov eax, dword [0x33161464]
mov edx, 1
call fcn.33142ba0
inc esi
add ebx, 4
cmp esi, 0xa
jne 0x33148f07
call fcn.33141488
mov eax, 0xa
call fcn.33141afc
mov edx, dword [ebp + eax*4 - 0x28]
mov eax, 0x33162c88
call fcn.331427c8
mov eax, 0xa
call fcn.33141afc
mov edx, dword [ebp + eax*4 - 0x50]
mov eax, 0x33162c8c
call fcn.331427c8
mov eax, dword [0x331613fc]
cmp byte [eax], 1
jne 0x33149002
push 0x331490dc
mov dl, 1
mov eax, dword [0x3314853c]
call fcn.33148594
push eax
mov eax, dword [0x33162c84]
call fcn.33142b04
push eax
mov eax, dword [0x331613a8]
mov eax, dword [eax]
call fcn.33142b04
mov edx, eax
pop ecx
pop eax
call fcn.331488a8
mov eax, dword [0x331613bc]
cmp byte [eax], 1
jne 0x3314904a
mov eax, dword [0x33162c84]
call fcn.33142b04
mov edx, eax
lea eax, [ebp - 0x5c]
call fcn.331428b8
mov eax, dword [ebp - 0x5c]
push eax
mov eax, dword [0x33162c88]
call fcn.33142b04
mov edx, eax
lea eax, [ebp - 0x60]
call fcn.331428b8
mov ecx, dword [ebp - 0x60]
mov edx, 0x331490e8
mov eax, 0x80000002
call fcn.33144a88
mov eax, dword [0x331613f0]
cmp byte [eax], 1
jne 0x33149092
mov eax, dword [0x33162c84]
call fcn.33142b04
mov edx, eax
lea eax, [ebp - 0x64]
call fcn.331428b8
mov eax, dword [ebp - 0x64]
push eax
mov eax, dword [0x33162c8c]
call fcn.33142b04
mov edx, eax
lea eax, [ebp - 0x68]
call fcn.331428b8
mov ecx, dword [ebp - 0x68]
mov edx, 0x331490e8
mov eax, 0x80000001
call fcn.33144a88
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x331490c7
lea eax, [ebp - 0x68]
mov edx, 6
call fcn.33142798
lea eax, [ebp - 0x50]
mov ecx, 0x14
mov edx, dword [0x33141014]
call fcn.33142e54
ret