Function at 0x538f68
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0xb
push 0
push 0
dec ecx
jne 0x538f70
push ecx
push ebx
push esi
push edi
mov dword [ebp - 0x10], eax
xor eax, eax
push ebp
push 0x5394e9
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x10]
movzx eax, byte [eax + 0x529]
cmp eax, 4
ja case.default.0x538f9f
jmp dword [eax*4 + 0x538fa6]
mov eax, dword [ebp - 0x10]
call fcn.00539d10
test al, al
jne 0x53900b
lea edx, [ebp - 0x14]
mov eax, dword [0x547b54]
mov eax, dword [eax]
call fcn.00521edc
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
call fcn.0053a120
lea eax, [ebp - 0x18]
call fcn.00523e90
lea eax, [ebp - 0x18]
mov edx, 0x539504
call fcn.00406544
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x4b0]
call fcn.004636bc
jmp case.default.0x538f9f
mov eax, dword [ebp - 0x10]
call fcn.00539ca0
test al, al
jne 0x53905c
lea edx, [ebp - 0x1c]
mov eax, dword [0x547b54]
mov eax, dword [eax]
call fcn.00521fe0
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
call fcn.0053a120
lea eax, [ebp - 0x20]
call fcn.00523e90
lea eax, [ebp - 0x20]
mov edx, 0x539504
call fcn.00406544
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x4b0]
call fcn.004636bc
jmp case.default.0x538f9f
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x450]
xor edx, edx
call fcn.004635cc
mov eax, dword [ebp - 0x10]
call fcn.0053a1a0
jmp case.default.0x538f9f
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x49c]
xor edx, edx
call fcn.004635cc
mov eax, dword [ebp - 0x10]
call fcn.0053a1a0
jmp case.default.0x538f9f
mov eax, dword [ebp - 0x10]
call fcn.00536480
mov eax, dword [ebp - 0x10]
call fcn.00539fec
mov eax, dword [ebp - 0x10]
call fcn.0053a800
mov eax, dword [ebp - 0x10]
call fcn.004810b4
jmp case.default.0x538f9f
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x384]
call fcn.0052ead8
mov edx, dword [ebp - 0x10]
cmp eax, dword [edx + 0x3fc]
jne 0x539105
lea edx, [ebp - 0x28]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x4c4]
call fcn.00463684
mov eax, dword [ebp - 0x28]
lea edx, [ebp - 0x24]
call fcn.0040c2f4
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x10]
add eax, 0x4f4
call fcn.004061f0
jmp 0x539191
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x384]
call fcn.0052ead8
mov edx, dword [ebp - 0x10]
cmp eax, dword [edx + 0x464]
jne 0x53914c
lea edx, [ebp - 0x30]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x4c0]
call fcn.00463684
mov eax, dword [ebp - 0x30]
lea edx, [ebp - 0x2c]
call fcn.0040c2f4
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x10]
add eax, 0x4f4
call fcn.004061f0
jmp 0x539191
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x384]
call fcn.0052ead8
mov edx, dword [ebp - 0x10]
cmp eax, dword [edx + 0x46c]
jne 0x539191
lea edx, [ebp - 0x38]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x4b8]
call fcn.00463684
mov eax, dword [ebp - 0x38]
lea edx, [ebp - 0x34]
call fcn.0040c2f4
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x10]
add eax, 0x4f4
call fcn.004061f0
mov eax, dword [ebp - 0x10]
cmp byte [eax + 0x530], 0
jne 0x5391a9
mov eax, dword [ebp - 0x10]
cmp dword [eax + 0x4f4], 0
jne 0x5391ec
lea edx, [ebp - 4]
mov eax, dword [0x547b54]
mov eax, dword [eax]
call fcn.00522194
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x488]
mov edx, dword [ebp - 4]
call fcn.004636bc
push 0x30
push 0x53952c
mov eax, dword [ebp - 4]
call fcn.0040627c
push eax
mov eax, dword [ebp - 0x10]
call fcn.0046bf70
push eax
call sub.user32.dll_MessageBoxW
jmp case.default.0x538f9f
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x4f4]
call fcn.00523f10
test al, al
je 0x53931a
lea edx, [ebp - 0x3c]
mov eax, dword [0x547b54]
mov eax, dword [eax]
call fcn.00521d40
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x37c]
call fcn.004636bc
lea edx, [ebp - 0x40]
mov eax, dword [0x547b54]
mov eax, dword [eax]
call fcn.0051fbdc
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x3f8]
call fcn.004636bc
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x3ac]
xor edx, edx
call fcn.004635cc
mov eax, dword [ebp - 0x10]
mov edx, dword [eax + 0x3f0]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x384]
call fcn.0052eb00
mov eax, dword [ebp - 0x10]
mov byte [eax + 0x529], 4
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x3a8]
mov dl, 1
call fcn.004635cc
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x3e8]
xor edx, edx
call fcn.004635cc
mov eax, dword [ebp - 0x10]
add eax, 0x4fc
mov edx, 0x539568
call fcn.004061f0
mov eax, dword [ebp - 0x10]
call fcn.00539fc4
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x538], 5
lea edx, [ebp - 0x48]
mov eax, dword [0x547b54]
mov eax, dword [eax]
call fcn.00522418
push dword [ebp - 0x48]
push 0x539578
lea edx, [ebp - 0x4c]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x538]
call fcn.0040cb90
push dword [ebp - 0x4c]
push 0x53958c
lea eax, [ebp - 0x44]
mov edx, 4
call fcn.00406694
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x3a8]
call fcn.00532778
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x4a0]
mov dl, 1
call fcn.004e270c
jmp 0x539359
lea edx, [ebp - 8]
mov eax, dword [0x547b54]
mov eax, dword [eax]
call fcn.005220e0
push 0x30
push 0x53952c
lea eax, [ebp - 0x50]
xor ecx, ecx
mov edx, dword [ebp - 8]
call fcn.004065c4
mov eax, dword [ebp - 0x50]
call fcn.0040627c
push eax
mov eax, dword [ebp - 0x10]
call fcn.0046bf70
push eax
call sub.user32.dll_MessageBoxW
jmp case.default.0x538f9f
mov eax, dword [ebp - 0x10]
add eax, 0x514
mov edx, 0x539568
call fcn.004061f0
mov eax, dword [ebp - 0x10]
add eax, 0x518
mov edx, 0x53959c
call fcn.004061f0
mov eax, dword [ebp - 0x10]
add eax, 0x51c
mov edx, 0x539568
call fcn.004061f0
mov eax, dword [ebp - 0x10]
call fcn.00539f9c
jmp case.default.0x538f9f
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x4a0]
xor edx, edx
call fcn.004e270c
mov eax, dword [ebp - 0x10]
call fcn.00536480
mov eax, dword [ebp - 0x10]
call fcn.005388ac
lea edx, [ebp - 0x58]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x4b0]
call fcn.00463684
mov eax, dword [ebp - 0x58]
lea edx, [ebp - 0x54]
call fcn.0040c2f4
mov eax, dword [ebp - 0x54]
lea edx, [ebp - 0xc]
call fcn.00414ddc
mov eax, dword [ebp - 0xc]
call fcn.00515a7c
test al, al
je 0x539446
xor eax, eax
push ebp
push 0x53943c
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
mov eax, dword [ebp - 0xc]
call fcn.0040627c
push eax
push 0x5395a0
lea eax, [ebp - 0x5c]
mov ecx, 0x5395c0
mov edx, dword [ebp - 0xc]
call fcn.004065c4
mov eax, dword [ebp - 0x5c]
call fcn.0040627c
push eax
push 0x5395d8
push 0
call sub.shell32.dll_ShellExecuteW
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x539446
mov eax, dword [ebp - 0x10]
call fcn.005380f0
test al, al
je 0x539464
mov eax, dword [ebp - 0x10]
add eax, 0x50c
mov edx, 0x539568
call fcn.004061f0
mov eax, dword [ebp - 0x10]
call fcn.00539fec
mov eax, dword [ebp - 0x10]
call fcn.0053a800
mov eax, dword [ebp - 0x10]
call fcn.004810b4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5394f0
lea eax, [ebp - 0x5c]
call fcn.004061e0
lea eax, [ebp - 0x58]
call fcn.004061e0
lea eax, [ebp - 0x54]
mov edx, 7
call fcn.004061e8
lea eax, [ebp - 0x38]
call fcn.004061e0
lea eax, [ebp - 0x34]
call fcn.004061e0
lea eax, [ebp - 0x30]
call fcn.004061e0
lea eax, [ebp - 0x2c]
call fcn.004061e0
lea eax, [ebp - 0x28]
call fcn.004061e0
lea eax, [ebp - 0x24]
mov edx, 5
call fcn.004061e8
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.004061e8
ret