Function at 0x10057230
Capabilities:
Create process on windows

Disassembly:
sub esp, 0x2c0
mov eax, dword [0x1008e168]
xor eax, esp
mov dword [esp + 0x2bc], eax
mov eax, dword [0x10092868]
push edi
xor edi, edi
mov eax, dword [eax + 0xec]
call eax
mov eax, dword [0x10092868]
cmp dword [0x1008f570], edi
je 0x1005728b
mov eax, dword [eax + 0xf0]
push 0xfffffbfa
call eax
mov eax, 0xfffffbfa
pop edi
mov ecx, dword [esp + 0x2bc]
xor ecx, esp
call fcn.1007d8c1
add esp, 0x2c0
ret 4
mov eax, dword [eax + 0x204]
push esi
push 0x30
call eax
mov esi, eax
test esi, esi
je 0x100572a9
push 0x30
push 0
push esi
call fcn.1007e500
add esp, 0xc
mov dword [0x1008f570], esi
test esi, esi
jne 0x100572cf
mov eax, dword [0x10092868]
push 0xfffffc0d
mov eax, dword [eax + 0xf0]
call eax
mov eax, 0xfffffc0d
jmp 0x10057aa5
push ebx
push ebp
push 0x44
lea eax, [esp + 0x4c]
push 0
push eax
call fcn.1007e500
add esp, 0xc
lea eax, [esp + 0x28]
xorps xmm0, xmm0
movdqu xmmword [esp + 0x18], xmm0
push eax
push 0x10
lea eax, [esp + 0x94]
push eax
push 0
push dword [esp + 0x2e4]
call sym.msrepl40.dll_Ordinal_2044
mov esi, eax
test esi, esi
jns 0x1005732c
cmp esi, 0xffffb1c6
je 0x10057322
cmp esi, 0xffffb1d3
jne 0x10057a89
mov esi, 0xffffb17b
jmp 0x10057a89
push 0x50
lea eax, [esp + 0x230]
push eax
lea eax, [esp + 0x94]
push eax
call fcn.100520f0
lea ecx, [esp + 0x9c]
mov esi, 0x10004170
mov eax, ecx
mov edx, 0xc8
sub esi, eax
jmp 0x10057360
lea eax, [edx + 0x7fffff36]
test eax, eax
je 0x1005737e
movzx eax, word [ecx + esi]
test ax, ax
je 0x1005737e
mov word [ecx], ax
add ecx, 2
dec edx
jne 0x10057360
jmp 0x10057382
test edx, edx
jne 0x10057385
sub ecx, 2
xor eax, eax
mov word [ecx], ax
lea eax, [esp + 0x22c]
push eax
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
push 0x10004734
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
mov eax, dword [0x1008f570]
add eax, 4
push eax
lea eax, [esp + 0xa0]
push eax
call fcn.10064f00
mov ebp, dword [sym.imp.USER32.dll_PeekMessageA]
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
test eax, eax
jns 0x100574a1
lea eax, [esp + 0x18]
mov esi, 0xffffb191
push eax
lea eax, [esp + 0x4c]
push eax
push 0
push 0
push 0x8000228
push 0
push 0
push 0
push 0x10004684
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
jne 0x1005742f
call fcn.10064b50
mov esi, eax
cmp esi, 0xffffb191
jne 0x10057a89
lea esi, [eax - 0x46]
jmp 0x10057a89
push dword [esp + 0x1c]
call fcn.10064720
push dword [esp + 0x18]
call fcn.10064720
cmp edi, 0x32
jae 0x10057487
push 0
push 0
push 0
push 0
lea eax, [esp + 0x3c]
push eax
call ebp
mov eax, dword [0x1008f570]
add eax, 4
push eax
lea eax, [esp + 0xa0]
push eax
call fcn.10064f00
mov esi, eax
mov eax, 0xffffb191
test esi, esi
push 0x1f4
cmovs esi, eax
call ebx
inc edi
cmp esi, 0xffffb191
je 0x10057441
test esi, esi
jns 0x100574a1
cmp esi, 0xffffb191
jne 0x10057a89
mov esi, 0xffffb189
jmp 0x10057a89
xor esi, esi
push 0
push 0
push 0
push 0
lea eax, [esp + 0x3c]
push eax
call ebp
lea eax, [esp + 0x14]
push eax
mov eax, dword [0x1008f570]
push 0
push 0
push 0
push 1
add eax, 4
push eax
call fcn.100650a0
cmp eax, 0xffffb188
jne 0x100574eb
push 0x1f4
call ebx
inc esi
cmp esi, 0x32
jb 0x100574a3
mov esi, 0xffffb189
jmp 0x10057a89
cmp eax, 0xffffb18a
je 0x10057a84
test eax, eax
jne 0x10057497
lea ecx, [esp + 0x9c]
mov esi, 0x100041d8
mov eax, ecx
mov edx, 0xc8
sub esi, eax
nop
lea eax, [edx + 0x7fffff36]
test eax, eax
je 0x1005752e
movzx eax, word [ecx + esi]
test ax, ax
je 0x1005752e
mov word [ecx], ax
add ecx, 2
dec edx
jne 0x10057510
jmp 0x10057532
test edx, edx
jne 0x10057535
sub ecx, 2
xor eax, eax
mov word [ecx], ax
lea eax, [esp + 0x22c]
push eax
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
push 0x10004734
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
mov eax, dword [0x1008f570]
add eax, 8
push eax
lea eax, [esp + 0xa0]
push eax
call fcn.10064f00
mov esi, eax
test esi, esi
js 0x10057a89
lea ecx, [esp + 0x9c]
mov esi, 0x10004240
mov eax, ecx
mov edx, 0xc8
sub esi, eax
lea eax, [edx + 0x7fffff36]
test eax, eax
je 0x100575be
movzx eax, word [ecx + esi]
test ax, ax
je 0x100575be
mov word [ecx], ax
add ecx, 2
dec edx
jne 0x100575a0
jmp 0x100575c2
test edx, edx
jne 0x100575c5
sub ecx, 2
xor eax, eax
mov word [ecx], ax
lea eax, [esp + 0x22c]
push eax
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
push 0x10004734
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
mov eax, dword [0x1008f570]
add eax, 0x14
push eax
lea eax, [esp + 0xa0]
push eax
call fcn.10064e80
mov esi, eax
test esi, esi
js 0x10057a89
lea ecx, [esp + 0x9c]
mov esi, 0x10004370
mov eax, ecx
mov edx, 0xc8
sub esi, eax
lea eax, [edx + 0x7fffff36]
test eax, eax
je 0x1005764e
movzx eax, word [ecx + esi]
test ax, ax
je 0x1005764e
mov word [ecx], ax
add ecx, 2
dec edx
jne 0x10057630
jmp 0x10057652
test edx, edx
jne 0x10057655
sub ecx, 2
xor eax, eax
mov word [ecx], ax
lea eax, [esp + 0x22c]
push eax
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
push 0x10004734
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
mov eax, dword [0x1008f570]
add eax, 0x10
push eax
lea eax, [esp + 0xa0]
push eax
call fcn.10064e80
mov esi, eax
test esi, esi
js 0x10057a89
lea ecx, [esp + 0x9c]
mov esi, 0x100042d0
mov eax, ecx
mov edx, 0xc8
sub esi, eax
lea eax, [edx + 0x7fffff36]
test eax, eax
je 0x100576de
movzx eax, word [esi + ecx]
test ax, ax
je 0x100576de
mov word [ecx], ax
add ecx, 2
dec edx
jne 0x100576c0
jmp 0x100576e2
test edx, edx
jne 0x100576e5
sub ecx, 2
xor eax, eax
mov word [ecx], ax
lea eax, [esp + 0x22c]
push eax
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
push 0x10004734
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
mov eax, dword [0x1008f570]
add eax, 0xc
push eax
lea eax, [esp + 0xa0]
push eax
call fcn.10064e80
mov esi, eax
test esi, esi
js 0x10057a89
lea ecx, [esp + 0x9c]
mov esi, 0x100043f8
mov eax, ecx
mov edx, 0xc8
sub esi, eax
lea eax, [edx + 0x7fffff36]
test eax, eax
je 0x1005776e
movzx eax, word [esi + ecx]
test ax, ax
je 0x1005776e
mov word [ecx], ax
add ecx, 2
dec edx
jne 0x10057750
jmp 0x10057772
test edx, edx
jne 0x10057775
sub ecx, 2
xor eax, eax
mov word [ecx], ax
lea eax, [esp + 0x22c]
push eax
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
push 0x10004734
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
mov eax, dword [0x1008f570]
add eax, 0x1c
push eax
lea eax, [esp + 0xa0]
push eax
call fcn.10064e80
mov esi, eax
test esi, esi
js 0x10057a89
lea ecx, [esp + 0x9c]
mov esi, 0x10004460
mov eax, ecx
mov edx, 0xc8
sub esi, eax
lea eax, [edx + 0x7fffff36]
test eax, eax
je 0x100577fe
movzx eax, word [esi + ecx]
test ax, ax
je 0x100577fe
mov word [ecx], ax
add ecx, 2
dec edx
jne 0x100577e0
jmp 0x10057802
test edx, edx
jne 0x10057805
sub ecx, 2
xor eax, eax
mov word [ecx], ax
lea eax, [esp + 0x22c]
push eax
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
push 0x10004734
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
mov eax, dword [0x1008f570]
add eax, 0x18
push eax
lea eax, [esp + 0xa0]
push eax
call fcn.10064e80
mov esi, eax
test esi, esi
js 0x10057a89
lea ecx, [esp + 0x9c]
mov esi, 0x10004550
mov eax, ecx
mov edx, 0xc8
sub esi, eax
lea eax, [edx + 0x7fffff36]
test eax, eax
je 0x1005788e
movzx eax, word [esi + ecx]
test ax, ax
je 0x1005788e
mov word [ecx], ax
add ecx, 2
dec edx
jne 0x10057870
jmp 0x10057892
test edx, edx
jne 0x10057895
sub ecx, 2
xor eax, eax
mov word [ecx], ax
lea eax, [esp + 0x22c]
push eax
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
push 0x10004734
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
push 0x208
lea eax, [esp + 0xa0]
push eax
mov eax, dword [0x1008f570]
add eax, 0x24
push eax
call fcn.10064cb0
mov esi, eax
test esi, esi
js 0x10057a89
lea ecx, [esp + 0x9c]
mov esi, 0x100045b0
mov eax, ecx
mov edx, 0xc8
sub esi, eax
lea eax, [edx + 0x7fffff36]
test eax, eax
je 0x10057923
movzx eax, word [esi + ecx]
test ax, ax
je 0x10057923
mov word [ecx], ax
add ecx, 2
dec edx
jne 0x10057905
jmp 0x10057927
test edx, edx
jne 0x1005792a
sub ecx, 2
xor eax, eax
mov word [ecx], ax
lea eax, [esp + 0x22c]
push eax
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
push 0x10004734
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
push 0x228
lea eax, [esp + 0xa0]
push eax
mov eax, dword [0x1008f570]
add eax, 0x28
push eax
call fcn.10064cb0
mov esi, eax
test esi, esi
js 0x10057a89
lea ecx, [esp + 0x9c]
mov esi, 0x10004618
mov eax, ecx
mov edx, 0xc8
sub esi, eax
lea ebx, [ebx]
lea eax, [edx + 0x7fffff36]
test eax, eax
je 0x100579be
movzx eax, word [esi + ecx]
test ax, ax
je 0x100579be
mov word [ecx], ax
add ecx, 2
dec edx
jne 0x100579a0
jmp 0x100579c2
test edx, edx
jne 0x100579c5
sub ecx, 2
xor eax, eax
mov word [ecx], ax
lea eax, [esp + 0x22c]
push eax
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
push 0x10004734
push 0xc8
lea eax, [esp + 0xa4]
push eax
call fcn.10013a00
push 4
lea eax, [esp + 0xa0]
push eax
mov eax, dword [0x1008f570]
add eax, 0x2c
push eax
call fcn.10064cb0
mov esi, eax
test esi, esi
js 0x10057a89
push 0
push 4
lea eax, [esp + 0x18]
push eax
mov eax, dword [0x1008f570]
push dword [eax + 0x2c]
call fcn.10065040
mov esi, eax
test esi, esi
js 0x10057a89
push dword [esp + 0x10]
push 0
push 0x100400
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov ecx, dword [0x1008f570]
mov dword [ecx + 0x20], eax
mov eax, dword [0x1008f570]
cmp dword [eax + 0x20], 0
jne 0x10057a71
call fcn.10064b50
mov esi, eax
mov eax, 0xffffb189
cmp esi, 0xffffb17f
cmove esi, eax
jmp 0x10057a89
mov eax, dword [0x10092868]
push 0
mov eax, dword [eax + 0xf0]
call eax
xor eax, eax
jmp 0x10057aa3
mov esi, 0xffffb18d
push 0x1008f570
call fcn.10057c30
mov eax, dword [0x10092868]
push esi
mov eax, dword [eax + 0xf0]
call eax
mov eax, esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x2c4]
pop esi
pop edi
xor ecx, esp
call fcn.1007d8c1
add esp, 0x2c0
ret 4