Function at 0x492700
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x13cc
call fcn.005925e0
mov eax, dword [0x5ed44c]
test eax, eax
push ebx
push esi
push edi
mov dword [esp + 0x14], edx
mov ebx, ecx
je 0x492d2b
cmp eax, ebx
je 0x49273d
mov eax, dword [eax + 0x4bc]
test eax, eax
jne 0x492726
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [ebx + 0x488]
test eax, eax
jne 0x492d2b
mov esi, 1
push 0
mov dword [ebx + 0x488], esi
call fcn.00591e16
mov ecx, dword [ebx + 0x490]
add esp, 4
cmp eax, ecx
mov dword [ebx + 0x494], eax
jne 0x492777
inc ecx
mov dword [ebx + 0x494], ecx
mov eax, dword [ebx + 0x464]
test eax, eax
je 0x492791
cmp dword [ebx + 0x458], eax
jae 0x492791
mov dword [ebx + 0x44c], esi
jmp 0x4927a1
mov dword [ebx + 0x440], 9
mov dword [ebx + 0x448], esi
mov ecx, ebx
call fcn.00491da0
mov eax, dword [ebp + 8]
cmp byte [eax], 0
je 0x4927bd
push eax
push esi
push esi
push esi
mov edx, esi
mov ecx, ebx
call fcn.0054c570
mov ecx, dword [ebx]
or edi, 0xffffffff
mov dword [ebx + 0x478], edi
call fcn.00561000
mov ecx, eax
call fcn.0053b590
mov ecx, ebx
call fcn.00491e20
mov ecx, dword [ebx]
call fcn.00561000
xor edx, edx
mov ecx, eax
call fcn.0054a240
mov eax, dword [ebx + 0x448]
test eax, eax
mov dword [esp + 0x10], esi
mov byte [esp + 0x400], 0
mov byte [esp + 0x7e8], 0
je 0x49291d
mov eax, dword [ebx + 0x464]
test eax, eax
jbe 0x492845
mov ecx, dword [ebx + 0x494]
sub ecx, dword [ebx + 0x490]
cmp ecx, esi
jae 0x492829
mov ecx, esi
mov edx, dword [ebx + 0x468]
mov eax, dword [ebx + 0x458]
cmp edx, eax
ja 0x49283b
sub eax, edx
xor edx, edx
div ecx
mov dword [ebx + 0x46c], eax
mov eax, dword [0x5be1bc]
test eax, eax
je 0x49285a
mov edx, 0x1e
mov ecx, ebx
call fcn.00491c60
mov eax, dword [ebx + 0x43c]
cmp eax, edi
je 0x49286b
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebx + 0x43c], edi
mov eax, dword [0x5f35d0]
test eax, eax
je 0x4928db
xor eax, eax
mov ecx, 0x202
lea edi, [esp + 0xbd0]
rep stosd dword es:[edi], eax
lea eax, [ebx + 0x234]
push eax
lea ecx, [ebx + 0x130]
push ecx
lea edx, [esp + 0xc04]
push 0x5a49b4
push edx
mov dword [esp + 0xbe4], ebx
call dword [sym.imp.USER32.dll_wsprintfA]
mov ecx, dword [ebx + 0x4b8]
add esp, 0x10
lea eax, [esp + 0xbd0]
push eax
push 0
push 0
push 0x19
push str.FILERCVD
push 0
xor edx, edx
call fcn.0051fbb0
mov dword [esp + 0x10], eax
push 0
lea edi, [ebx + 0x234]
push 1
lea edx, [esp + 0x408]
mov ecx, edi
call fcn.00481650
push edi
lea esi, [ebx + 0x130]
push esi
lea ecx, [esp + 0x7f0]
push 0x5a49b4
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
mov ecx, esi
call fcn.004e00d0
jmp 0x4929f3
mov eax, dword [0x5be1bc]
test eax, eax
je 0x492932
mov edx, 0x1d
mov ecx, ebx
call fcn.00491c60
mov eax, dword [0x5bfd44]
test eax, eax
je 0x492972
mov eax, dword [0x5f2a6c]
cmp eax, esi
jne 0x492951
mov ecx, dword [0x5bfd48]
call fcn.0041f070
jmp 0x492972
cmp eax, 2
jne 0x492972
mov edx, dword [ebx + 0x4b8]
push edx
xor edx, edx
mov ecx, 7
call fcn.0047daa0
mov edx, esi
mov ecx, eax
call fcn.005323b0
mov eax, dword [ebx + 0x43c]
cmp eax, edi
je 0x492983
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebx + 0x43c], edi
mov eax, dword [0x5f35d0]
test eax, eax
je 0x4929f3
xor eax, eax
mov ecx, 0x202
lea edi, [esp + 0xbd0]
rep stosd dword es:[edi], eax
lea eax, [ebx + 0x234]
push eax
lea ecx, [ebx + 0x130]
push ecx
lea edx, [esp + 0xc04]
push 0x5a49b4
push edx
mov dword [esp + 0xbe4], ebx
call dword [sym.imp.USER32.dll_wsprintfA]
mov ecx, dword [ebx + 0x4b8]
add esp, 0x10
lea eax, [esp + 0xbd0]
push eax
push 0
push 0
push 0x1b
push str.GETFAIL
push 0
xor edx, edx
call fcn.0051fbb0
mov dword [esp + 0x10], eax
mov ecx, ebx
call fcn.00491bd0
test eax, eax
je 0x492d2b
mov esi, dword [ebx]
mov ecx, dword [ebx + 0x4b8]
mov dword [esp + 0xc], esi
call fcn.004f0af0
test eax, eax
je 0x492a23
mov ecx, dword [ebx + 0x4b8]
mov esi, dword [ecx]
mov dword [esp + 0xc], esi
mov eax, dword [ebx + 0x448]
lea edx, [ebx + 4]
push edx
xor edx, edx
test eax, eax
je 0x492bc7
lea eax, [ebx + 0x234]
push eax
mov ecx, 0xb6b
call fcn.0041f1a0
push eax
lea ecx, [esp + 0x24]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
lea edi, [esp + 0x28]
add esp, 0x10
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x492a60
mov dx, word [0x5a4bf4]
mov al, byte [0x5a4bf6]
mov word [edi], dx
mov byte [edi + 2], al
mov eax, dword [ebx + 0x490]
test eax, eax
jle 0x492ae6
mov edx, dword [ebx + 0x494]
sub edx, eax
cmp edx, 1
jae 0x492a96
mov edx, 1
push 1
mov ecx, 0x5a4bec
call fcn.0053ff60
mov edx, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x492aa4
lea edi, [esp + 0x18]
sub eax, edx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x492ab2
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x18]
dec edi
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x492ad0
mov cx, word [0x5a5348]
mov esi, dword [esp + 0xc]
mov word [edi], cx
lea eax, [esp + 0x18]
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x492af0
fild dword [ebx + 0x46c]
push 1
sub eax, edx
mov edx, dword [ebx + 0x46c]
test edx, edx
push 1
push 0
push 1
lea ecx, [esp + eax + 0x28]
jge 0x492b1b
fadd qword [0x5a5318]
sub esp, 8
mov edx, 1
fstp qword [esp]
call fcn.00504de0
lea edi, [esp + 0x18]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x492b30
mov eax, dword [str._Sec]
mov cl, byte [0x5a84cc]
mov dword [edi], eax
mov byte [edi + 4], cl
lea edi, [esp + 0x18]
dec edi
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x492b50
mov dx, word [0x5a4bf0]
mov word [edi], dx
mov eax, dword [esp + 0x10]
xor edi, edi
cmp eax, edi
je 0x492ba7
mov edx, dword [0x5c9d44]
mov ecx, esi
call fcn.00513bc0
mov eax, dword [0x5c9d40]
push eax
lea edx, [esp + 0x1c]
mov ecx, esi
mov dword [0x5bfd5c], edi
mov dword [0x5f31fc], 1
call fcn.00513d20
mov edx, dword [0x5c9d44]
mov ecx, esi
call fcn.00513bc0
cmp dword [esp + 0x14], edi
jne 0x492c2b
cmp dword [ebx + 0x48c], edi
je 0x492c2b
mov ecx, dword [ebx]
push edi
push edi
push 0x10
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x492c81
mov eax, dword [ebx + 0x440]
cmp eax, 5
jne 0x492bf7
lea eax, [ebx + 0x234]
push eax
mov ecx, 0x1008
call fcn.0041f1a0
push eax
lea ecx, [esp + 0x24]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x492b62
cmp eax, 4
lea eax, [ebx + 0x234]
push eax
jne 0x492c0d
mov ecx, 0xb68
jmp 0x492a43
mov ecx, 0xb69
call fcn.0041f1a0
push eax
lea ecx, [esp + 0x24]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x492b62
cmp dword [ebx + 0x448], edi
je 0x492c3a
mov ecx, 0xb6a
jmp 0x492c5b
mov eax, dword [ebx + 0x440]
cmp eax, 4
jne 0x492c4c
mov ecx, 0xb67
jmp 0x492c5b
cmp eax, 5
mov ecx, 0x1009
je 0x492c5b
mov ecx, 0xb60
xor edx, edx
call fcn.0041f1a0
push eax
push 1
push 1
push 1
mov edx, 1
mov ecx, ebx
call fcn.0054c570
mov edx, 1
mov ecx, ebx
call fcn.00491f60
mov al, byte [esp + 0x400]
test al, al
je 0x492d2b
cmp al, 0x2f
jne 0x492cbe
mov edx, dword [ebx + 0x4b8]
mov ecx, dword [ebx]
push edx
push edi
push edi
push 1
lea eax, [esp + 0x7f8]
push eax
lea edx, [esp + 0x414]
call fcn.00440db0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [0x5f92ec]
push 5
push 0x5ee048
lea ecx, [esp + 0x7f0]
push ecx
lea edx, [esp + 0x40c]
push edx
push edi
push eax
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
cmp eax, 0x20
ja 0x492d2b
lea ecx, [esp + 0x400]
push ecx
xor edx, edx
mov ecx, 0xb6c
mov dword [0x5bfd5c], edi
mov dword [0x5f31fc], 1
call fcn.0041f1a0
push eax
lea edx, [esp + 0x20]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
mov eax, dword [0x5c9d44]
mov ecx, dword [ebx]
add esp, 0xc
push eax
lea edx, [esp + 0x1c]
call fcn.00514ad0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4