Function at 0x53b4c4
Capabilities:
Create process on windows
Self delete
Set file attributes

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x20
push 0
push 0
dec ecx
jne 0x53b4cc
push ecx
push ebx
push esi
push edi
lea eax, [ebp - 0x50]
mov edx, dword [0x52c4dc]
call fcn.00404948
xor eax, eax
push ebp
push 0x53c4b5
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x4106ec]
call fcn.00403168
mov dword [ebp - 0x24], eax
xor edx, edx
push ebp
push 0x53c462
push dword fs:[edx]
mov dword fs:[edx], esp
mov al, 1
call fcn.0052f7c0
call fcn.0040b20c
fstp st(0)
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x330]
mov eax, dword [eax + 0x208]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, dword [0x5674dc]
cmp byte [eax], 0
je 0x53b55d
push 0x53c4cc
push 0
push 0
mov ecx, 0x53c4d8
mov edx, 0x53c4e4
mov eax, 0x53c504
call fcn.0052fe88
call fcn.0040b240
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0x58]
call fcn.0040be40
push dword [ebp - 0x58]
push 0x53c514
push dword [0x569ec4]
lea eax, [ebp - 0x54]
mov edx, 3
call fcn.00404278
mov edx, dword [ebp - 0x54]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x330]
mov eax, dword [eax + 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov byte [0x566e70], 0
xor eax, eax
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0xc], eax
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x2d8]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0x5c]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x2e0]
mov dl, 1
mov ecx, dword [eax]
call dword [ecx + 0x5c]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x2d4]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0x5c]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x2e4]
xor edx, edx
call fcn.0043389c
call fcn.00531654
mov eax, dword [0x569c24]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
test eax, eax
jl 0x53bcd0
inc eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 4], 0
mov eax, dword [0x567568]
mov eax, dword [eax]
call fcn.0045184c
cmp byte [0x566e70], 0
jne 0x53c1a2
lea ecx, [ebp - 0x5c]
mov edx, dword [ebp - 4]
mov eax, dword [0x569c24]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x5c]
lea edx, [ebp - 0x50]
call fcn.0053b28c
cmp byte [ebp - 0x44], 0
jne 0x53bcc4
cmp byte [ebp - 0x43], 0
jne 0x53bcc4
mov al, byte [ebp - 0x41]
mov byte [ebp - 0x19], al
cmp byte [ebp - 0x19], 0
jne 0x53b67b
mov al, byte [ebp - 0x42]
mov byte [ebp - 0x19], al
cmp byte [ebp - 0x19], 0
jne 0x53b6ae
mov ebx, dword [ebp - 0x40]
cmp ebx, 0xffffffff
je 0x53b6ae
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x448]
mov eax, dword [eax + 0x20c]
mov edx, ebx
call fcn.004624c0
call fcn.00461e84
test al, al
je 0x53bcc4
mov al, byte [ebp - 0x41]
mov byte [ebp - 0x19], al
cmp byte [ebp - 0x19], 0
jne 0x53b6c0
mov al, byte [ebp - 0x42]
mov byte [ebp - 0x19], al
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x2dc]
mov eax, dword [eax + 0x1f0]
xor edx, edx
call fcn.004601f4
push eax
lea eax, [ebp - 0x60]
mov ecx, dword [ebp - 0x4c]
mov edx, dword [0x569ec8]
call fcn.00404204
mov edx, dword [ebp - 0x60]
pop eax
call fcn.0046016c
call fcn.0040b20c
fstp st(0)
cmp byte [ebp - 0x19], 0
jne 0x53b72a
cmp dword [ebp - 0x40], 0xffffffff
je 0x53b72a
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x448]
mov eax, dword [eax + 0x20c]
mov edx, dword [ebp - 0x40]
call fcn.004624c0
mov edx, dword [0x569ed0]
call fcn.00461f24
xor eax, eax
mov dword [0x566e80], eax
mov dword [0x566e84], eax
mov word [0x566e88], ax
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x374]
mov dl, 1
call fcn.004558e4
mov eax, dword [ebp - 0x50]
call fcn.00506a1c
test al, al
je 0x53b909
cmp byte [0x566e70], 0
jne 0x53c1a2
lea eax, [ebp - 0x20]
mov edx, 0x53c520
call fcn.00403fd0
xor eax, eax
push ebp
push 0x53b7ac
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x50]
call fcn.0051b8c8
test al, al
je 0x53b7a2
lea eax, [ebp - 0x20]
mov edx, 0x53c540
call fcn.00403fd0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x53b7b6
lea edx, [ebp - 0x64]
mov eax, dword [ebp - 0x50]
call fcn.0040a10c
mov eax, dword [ebp - 0x64]
call fcn.005365a0
mov eax, dword [0x567568]
mov eax, dword [eax]
call fcn.0045184c
xor edx, edx
mov eax, dword [ebp - 0x50]
call fcn.00409dd8
push 0
mov eax, dword [ebp - 0x50]
call fcn.0040437c
push eax
call sub.kernel32.dll_SetFileAttributesA
mov eax, dword [ebp - 0x50]
call fcn.00506800
xor ebx, ebx
mov eax, dword [ebp - 0x50]
call fcn.00535f54
jmp 0x53b900
mov eax, dword [0x567568]
mov eax, dword [eax]
call fcn.0045184c
xor eax, eax
push ebp
push 0x53b83d
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0x68]
mov eax, dword [ebp - 0x50]
call fcn.0040a10c
mov eax, dword [ebp - 0x68]
call fcn.005365a0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x53b847
xor eax, eax
push ebp
push 0x53b8a9
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0x6c]
mov eax, dword [ebp - 0x50]
call fcn.0040a10c
mov edx, dword [ebp - 0x6c]
mov eax, dword [0x569e30]
call fcn.004133a4
inc eax
je 0x53b89f
lea edx, [ebp - 0x74]
mov eax, dword [ebp - 0x50]
call fcn.0040a10c
mov edx, dword [ebp - 0x74]
mov eax, dword [0x569e30]
call fcn.004133a4
mov edx, eax
lea ecx, [ebp - 0x70]
mov eax, dword [0x569e30]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x70]
call fcn.005322d8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x53b8b3
push 0
mov eax, dword [ebp - 0x50]
call fcn.0040437c
push eax
call sub.kernel32.dll_SetFileAttributesA
xor edx, edx
mov eax, dword [ebp - 0x50]
call fcn.00409dd8
mov eax, dword [ebp - 0x50]
call fcn.00506800
mov eax, dword [ebp - 0x50]
call fcn.00409d0c
mov ebx, eax
xor bl, 1
cmp byte [0x566e70], 0
jne 0x53c1a2
fld xword [0x566e80]
fcomp dword [0x53c568]
fnstsw ax
sahf
ja 0x53b909
cmp bl, 1
jne 0x53b806
cmp byte [0x566ec0], 0
je 0x53b97d
xor eax, eax
push ebp
push 0x53b96c
push dword fs:[eax]
mov dword fs:[eax], esp
xor edx, edx
mov eax, dword [0x569e00]
call fcn.00413f14
lea edx, [ebp - 0x80]
mov eax, dword [ebp - 0x50]
call fcn.0040a10c
mov eax, dword [ebp - 0x80]
lea edx, [ebp - 0x7c]
call fcn.004097e8
mov ecx, dword [ebp - 0x7c]
lea eax, [ebp - 0x78]
mov edx, 0x53c574
call fcn.00404204
mov edx, dword [ebp - 0x78]
mov eax, dword [0x569e00]
call fcn.004133a4
mov dword [ebp - 8], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x53b97d
mov eax, dword [ebp - 0x50]
call fcn.00506a1c
test al, al
jne 0x53bae5
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x374]
xor edx, edx
call fcn.004558e4
inc dword [ebp - 0x10]
mov al, byte [ebp - 0x41]
mov byte [ebp - 0x19], al
cmp byte [ebp - 0x19], 0
jne 0x53b9b4
mov al, byte [ebp - 0x42]
mov byte [ebp - 0x19], al
cmp byte [ebp - 0x19], 0
jne 0x53ba10
cmp dword [ebp - 0x40], 0xffffffff
je 0x53ba10
lea eax, [ebp - 0x84]
push eax
mov dword [ebp - 0x8c], 0x566e80
mov byte [ebp - 0x88], 3
lea edx, [ebp - 0x8c]
xor ecx, ecx
mov eax, 0x53c588
call fcn.0040aba0
mov eax, dword [ebp - 0x84]
push eax
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x448]
mov eax, dword [eax + 0x20c]
mov edx, dword [ebp - 0x40]
call fcn.004624c0
pop edx
call fcn.00461f24
call fcn.0040b240
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0x94]
call fcn.0040be40
push dword [ebp - 0x94]
push dword [ebp - 0x20]
push dword [ebp - 0x50]
lea eax, [ebp - 0x90]
mov edx, 3
call fcn.00404278
mov edx, dword [ebp - 0x90]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x330]
mov eax, dword [eax + 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, dword [0x5674dc]
cmp byte [eax], 0
je 0x53ba93
cmp byte [0x566ec4], 0
je 0x53ba93
lea eax, [ebp - 0x98]
mov ecx, 0x53c5a4
mov edx, dword [ebp - 0x50]
call fcn.00404204
mov edx, dword [ebp - 0x98]
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax]
call dword [ecx + 0x34]
cmp dword [ebp - 8], 0xffffffff
je 0x53bcc4
cmp byte [0x566ec0], 0
je 0x53bcc4
lea ecx, [ebp - 0x9c]
mov edx, dword [ebp - 8]
mov eax, dword [0x569e00]
mov ebx, dword [eax]
call dword [ebx + 0xc]
lea eax, [ebp - 0x9c]
mov edx, 0x53c5c4
call fcn.004041c0
mov ecx, dword [ebp - 0x9c]
mov edx, dword [ebp - 8]
mov eax, dword [0x569e00]
mov ebx, dword [eax]
call dword [ebx + 0x20]
jmp 0x53bcc4
xor eax, eax
push ebp
push 0x53bc3a
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [ebp - 8], 0xffffffff
je 0x53bb38
cmp byte [0x566ec0], 0
je 0x53bb38
lea ecx, [ebp - 0xa0]
mov edx, dword [ebp - 8]
mov eax, dword [0x569e00]
mov ebx, dword [eax]
call dword [ebx + 0xc]
lea eax, [ebp - 0xa0]
mov edx, 0x53c5d0
call fcn.004041c0
mov ecx, dword [ebp - 0xa0]
mov edx, dword [ebp - 8]
mov eax, dword [0x569e00]
mov ebx, dword [eax]
call dword [ebx + 0x20]
inc dword [ebp - 0xc]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x374]
xor edx, edx
call fcn.004558e4
mov al, byte [ebp - 0x41]
mov byte [ebp - 0x19], al
cmp byte [ebp - 0x19], 0
jne 0x53bb5f
mov al, byte [ebp - 0x42]
mov byte [ebp - 0x19], al
cmp byte [ebp - 0x19], 0
jne 0x53bb8e
cmp dword [ebp - 0x40], 0xffffffff
je 0x53bb8e
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x448]
mov eax, dword [eax + 0x20c]
mov edx, dword [ebp - 0x40]
call fcn.004624c0
mov edx, 0x53c5e0
call fcn.00461f24
mov eax, dword [0x5674dc]
cmp byte [eax], 0
je 0x53bbcc
cmp byte [0x566ec4], 0
je 0x53bbcc
push 0x53c5f0
push dword [ebp - 0x50]
push 0x53c60c
lea eax, [ebp - 0xa4]
mov edx, 3
call fcn.00404278
mov edx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax]
call dword [ecx + 0x34]
call fcn.0040b240
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0xac]
call fcn.0040be40
push dword [ebp - 0xac]
push 0x53c618
push dword [ebp - 0x50]
lea eax, [ebp - 0xa8]
mov edx, 3
call fcn.00404278
mov edx, dword [ebp - 0xa8]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x330]
mov eax, dword [eax + 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, dword [ebp - 0x50]
call fcn.00530270
mov eax, dword [ebp - 0x50]
call fcn.00535f54
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x53bcc4
inc dword [ebp - 4]
dec dword [ebp - 0x2c]
jne 0x53b621
lea eax, [ebp - 0xc]
call fcn.00529368
add dword [ebp - 0x10], eax
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x414]
mov dl, 1
call fcn.004558e4
mov eax, dword [0x569c24]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
cmp eax, 0
jl 0x53bec9
mov dword [ebp - 4], eax
mov eax, dword [0x567568]
mov eax, dword [eax]
call fcn.0045184c
cmp byte [0x566e70], 0
jne 0x53c1a2
lea ecx, [ebp - 0xb8]
mov edx, dword [ebp - 4]
mov eax, dword [0x569c24]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xb8]
lea edx, [ebp - 0x50]
call fcn.0053b28c
mov al, byte [ebp - 0x44]
mov byte [ebp - 0x19], al
cmp byte [ebp - 0x19], 0
jne 0x53bd50
mov al, byte [ebp - 0x43]
mov byte [ebp - 0x19], al
cmp byte [ebp - 0x19], 0
je 0x53bebc
mov eax, dword [ebp - 0x50]
call fcn.0040a3f8
test al, al
je 0x53be19
inc dword [ebp - 0x10]
call fcn.0040b240
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0xc0]
call fcn.0040be40
push dword [ebp - 0xc0]
push dword [0x569ee8]
push dword [ebp - 0x50]
lea eax, [ebp - 0xbc]
mov edx, 3
call fcn.00404278
mov edx, dword [ebp - 0xbc]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x330]
mov eax, dword [eax + 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x34]
xor eax, eax
push ebp
push 0x53be0a
push dword fs:[eax]
mov dword fs:[eax], esp
cmp byte [ebp - 0x44], 0
je 0x53bdfd
cmp dword [ebp - 0x40], 0xffffffff
je 0x53bdfd
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x448]
mov eax, dword [eax + 0x20c]
mov edx, dword [ebp - 0x40]
call fcn.004624c0
mov edx, dword [0x569eec]
call fcn.00461f24
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x53bebc
call fcn.0040b240
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0xc8]
call fcn.0040be40
push dword [ebp - 0xc8]
push dword [0x569ef0]
push dword [ebp - 0x50]
lea eax, [ebp - 0xc4]
mov edx, 3
call fcn.00404278
mov edx, dword [ebp - 0xc4]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x330]
mov eax, dword [eax + 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x34]
xor eax, eax
push ebp
push 0x53beb2
push dword fs:[eax]
mov dword fs:[eax], esp
cmp byte [ebp - 0x44], 0
je 0x53bea8
cmp dword [ebp - 0x40], 0xffffffff
je 0x53bea8
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x448]
mov eax, dword [eax + 0x20c]
mov edx, dword [ebp - 0x40]
call fcn.004624c0
mov edx, 0x53c5e0
call fcn.00461f24
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x53bebc
dec dword [ebp - 4]
cmp dword [ebp - 4], 0xffffffff
jne 0x53bd04
call fcn.0040b240
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0xcc]
call fcn.0040be40
lea eax, [ebp - 0xcc]
mov edx, dword [0x569ef4]
call fcn.004041c0
mov edx, dword [ebp - 0xcc]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x330]
mov eax, dword [eax + 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x34]
xor edx, edx
mov eax, dword [0x569bfc]
mov ecx, dword [eax]
call dword [ecx + 0x5c]
lea eax, [ebp - 0xd0]
call fcn.0052e1c4
lea eax, [ebp - 0xd0]
mov edx, 0x53c634
call fcn.004041c0
mov edx, dword [ebp - 0xd0]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x330]
mov eax, dword [eax + 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x64]
cmp dword [ebp - 0xc], 0
jne 0x53c06b
lea eax, [ebp - 0xd4]
call fcn.0052e1c4
lea eax, [ebp - 0xd4]
mov edx, 0x53c64c
call fcn.004041c0
mov edx, dword [ebp - 0xd4]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x330]
mov eax, dword [eax + 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x64]
lea edx, [ebp - 0xd8]
mov eax, dword [ebp - 0x10]
call fcn.00409a68
mov edx, dword [ebp - 0xd8]
lea eax, [ebp - 0x28]
mov ecx, 0x53c664
call fcn.00404204
mov byte [0x566e74], 0
cmp byte [0x566ec4], 0
jne 0x53c158
push 0x50024
mov eax, dword [0x569eb8]
call fcn.0040437c
push eax
lea edx, [ebp - 0xdc]
mov eax, dword [ebp - 0x10]
call fcn.00409a68
lea eax, [ebp - 0xdc]
mov edx, dword [0x569ef8]
call fcn.004041c0
mov eax, dword [ebp - 0xdc]
call fcn.0040437c
push eax
push 0
call sub.user32.dll_MessageBoxA_1
cmp eax, 6
jne 0x53c02a
mov dl, 1
mov eax, dword [0x569bfc]
mov ecx, dword [eax]
call dword [ecx + 0x5c]
xor eax, eax
call fcn.00538684
call fcn.004039d0
jmp 0x53c469
mov eax, dword [0x567898]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x53c158
push 0x24
push 0x53c680
push 0x53c68c
push 0
call sub.user32.dll_MessageBoxA_1
cmp eax, 6
jne 0x53c158
mov eax, dword [0x56710c]
mov eax, dword [eax]
call fcn.0044e894
jmp 0x53c158
lea eax, [ebp - 0xe0]
call fcn.0052e1c4
lea eax, [ebp - 0xe0]
mov edx, 0x53c64c
call fcn.004041c0
mov edx, dword [ebp - 0xe0]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x330]
mov eax, dword [eax + 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x64]
push 0x53c6d4
lea edx, [ebp - 0xe4]
mov eax, dword [ebp - 0xc]
call fcn.00409a68
push dword [ebp - 0xe4]
push 0x53c6ec
lea eax, [ebp - 0x28]
mov edx, 3
call fcn.00404278
cmp byte [0x566ec4], 0
jne 0x53c127
push 0x50040
mov eax, dword [0x569ea4]
call fcn.0040437c
push eax
push 0x53c6d4
lea edx, [ebp - 0xec]
mov eax, dword [ebp - 0xc]
call fcn.00409a68
push dword [ebp - 0xec]
push 0x53c6ec
lea eax, [ebp - 0xe8]
mov edx, 3
call fcn.00404278
mov eax, dword [ebp - 0xe8]
call fcn.0040437c
push eax
push 0
call sub.user32.dll_MessageBoxA_1
cmp byte [0x566ec4], 0
jne 0x53c158
push 0x50024
mov eax, dword [0x569eb8]
call fcn.0040437c
push eax
push 0x53c730
push 0
call sub.user32.dll_MessageBoxA_1
cmp eax, 6
jne 0x53c158
call fcn.005301e8
jmp 0x53c1a2
cmp byte [0x566ec0], 0
je 0x53c196
cmp byte [0x566ec4], 0
jne 0x53c196
push 0x50024
mov eax, dword [0x569eb8]
call fcn.0040437c
push eax
mov eax, dword [0x569efc]
call fcn.0040437c
push eax
push 0
call sub.user32.dll_MessageBoxA_1
cmp eax, 6
jne 0x53c196
call fcn.00532e74
mov dl, 1
mov eax, dword [0x569bfc]
mov ecx, dword [eax]
call dword [ecx + 0x5c]
cmp byte [0x566e70], 0
je 0x53c1ef
call fcn.0040b240
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0xf0]
call fcn.0040be40
lea eax, [ebp - 0xf0]
mov edx, dword [0x569f00]
call fcn.004041c0
mov edx, dword [ebp - 0xf0]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x330]
mov eax, dword [eax + 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x2d8]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0x5c]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x2d4]
mov dl, 1
mov ecx, dword [eax]
call dword [ecx + 0x5c]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x2e0]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0x5c]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x2e4]
mov dl, 1
call fcn.0043389c
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x444]
xor edx, edx
call fcn.00443d74
mov eax, dword [0x5674dc]
cmp byte [eax], 0
je 0x53c281
cmp byte [0x566ec4], 0
je 0x53c281
cmp byte [0x566e70], 0
je 0x53c274
mov edx, 0x53c764
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax]
call dword [ecx + 0x34]
jmp 0x53c281
mov edx, 0x53c784
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax]
call dword [ecx + 0x34]
cmp byte [0x566e70], 0
je 0x53c2af
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x2dc]
mov eax, dword [eax + 0x1f0]
xor edx, edx
call fcn.004601f4
mov edx, dword [0x569f08]
call fcn.0046016c
jmp 0x53c2d2
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x2dc]
mov eax, dword [eax + 0x1f0]
xor edx, edx
call fcn.004601f4
mov edx, dword [0x569f0c]
call fcn.0046016c
xor eax, eax
call fcn.0052f7c0
xor edx, edx
mov eax, dword [0x569c1c]
mov ecx, dword [eax]
call dword [ecx]
lea eax, [ebp - 0xf4]
call fcn.00536868
lea eax, [ebp - 0xf4]
mov edx, 0x53c7a4
call fcn.004041c0
mov edx, dword [ebp - 0xf4]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x330]
mov eax, dword [eax + 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x64]
cmp byte [0x566ec4], 0
jne 0x53c35d
push 5
push 0
push 0
lea eax, [ebp - 0xf8]
call fcn.00536868
lea eax, [ebp - 0xf8]
mov edx, 0x53c7a4
call fcn.004041c0
mov eax, dword [ebp - 0xf8]
call fcn.0040437c
push eax
push 0x53c7bc
push 0
call sub.shell32.dll_ShellExecuteA
mov eax, dword [ebp - 0x24]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x53c445
cmp byte [0x566ec4], 0
je 0x53c445
mov eax, dword [0x5674dc]
cmp byte [eax], 0
je 0x53c445
mov ecx, 0x53c504
xor edx, edx
mov eax, dword [ebp - 0x24]
mov ebx, dword [eax]
call dword [ebx + 0x54]
mov ecx, dword [ebp - 0x28]
mov edx, 1
mov eax, dword [ebp - 0x24]
mov ebx, dword [eax]
call dword [ebx + 0x54]
mov ecx, 0x53c4cc
mov edx, 2
mov eax, dword [ebp - 0x24]
mov ebx, dword [eax]
call dword [ebx + 0x54]
mov edx, dword [0x56730c]
mov edx, dword [edx]
lea eax, [ebp - 0xfc]
mov ecx, 0x53c7cc
call fcn.00404204
mov edx, dword [ebp - 0xfc]
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax]
call dword [ecx + 0x64]
lea edx, [ebp - 0x100]
mov eax, dword [0x566ec8]
call fcn.00409a68
mov edx, dword [ebp - 0x100]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x404]
call fcn.004339b4
mov dl, 1
mov eax, dword [0x569bfc]
mov ecx, dword [eax]
call dword [ecx + 0x5c]
mov edx, dword [0x56730c]
mov edx, dword [edx]
lea eax, [ebp - 0x104]
mov ecx, 0x53c7e0
call fcn.00404204
mov edx, dword [ebp - 0x104]
mov eax, dword [0x569bfc]
mov eax, dword [eax + 0x330]
mov eax, dword [eax + 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x64]
mov byte [0x566ec4], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x53c469
mov eax, dword [ebp - 0x24]
call fcn.00403198
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x53c4bc
lea eax, [ebp - 0x104]
mov edx, 0x1e
call fcn.00403f5c
lea eax, [ebp - 0x84]
mov edx, 0xd
call fcn.00403f5c
lea eax, [ebp - 0x50]
mov edx, dword [0x52c4dc]
call fcn.00404a14
lea eax, [ebp - 0x28]
call fcn.00403f38
lea eax, [ebp - 0x20]
call fcn.00403f38
ret