Function at 0x402490
Capabilities:
Create process on windows

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x60
mov eax, dword [0x470080]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
lea eax, [ebp - 0x14]
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0xc]
xor edx, edx
sub eax, dword [ebp - 0x14]
mov ecx, str.Rebirth
push 0x1ab
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm0, dword [0x4700e8]
mulss xmm0, dword [0x4696e4]
cvttss2si eax, xmm0
movd xmm2, eax
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
cvtdq2ps xmm2, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm0, dword [0x4700ec]
mulss xmm0, dword [0x4696e4]
cvttss2si eax, xmm0
movd xmm0, eax
mov eax, dword [0x470c10]
cvtdq2ps xmm0, xmm0
or dword [eax + 0x3fec], 3
mov dword [eax + 0x4008], 0
movss dword [eax + 0x4000], xmm2
movss dword [eax + 0x4004], xmm0
mov dword [eax + 0x400c], 0
mov dword [eax + 0x3ff0], 2
mov byte [eax + 0x4028], 1
movss xmm0, dword [0x4700e8]
movss dword [eax + 0x4010], xmm0
movss xmm0, dword [0x4700ec]
movss dword [eax + 0x4014], xmm0
mov dword [eax + 0x3ff4], 2
call fcn.00410670
add esp, 4
mov dword [ebp - 0x2c], 0x3f800000
lea eax, [ebp - 0x50]
mov dword [ebp - 0x28], 0x3f800000
xorps xmm0, xmm0
mov dword [ebp - 0x24], 0
movups xmmword [ebp - 0x50], xmm0
lea edx, [ebp - 0x1c]
mov dword [ebp - 0x20], 0
movaps xmm0, xmmword [0x469c10]
push eax
lea eax, [ebp - 0x60]
mov dword [ebp - 0x1c], 0x44520000
push eax
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x18], 0x43d68000
push eax
lea eax, [ebp - 0x24]
push eax
movups xmmword [ebp - 0x60], xmm0
call fcn.0043d4d0
mov ecx, dword [0x470c10]
add esp, 0x10
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
movss xmm3, dword [eax + 0x40]
movss xmm2, dword [eax + 0x44]
subss xmm3, dword [eax + 0x90]
subss xmm2, dword [eax + 0x94]
addss xmm3, dword [0x469780]
addss xmm2, dword [0x469780]
movss dword [eax + 0x108], xmm3
movss dword [eax + 0x10c], xmm2
movss xmm1, dword [eax + 0x120]
movss xmm0, dword [eax + 0x124]
maxss xmm1, xmm3
maxss xmm0, xmm2
movss dword [eax + 0x120], xmm1
movss dword [eax + 0x124], xmm0
lea edx, [ebp - 0x2c]
mov eax, dword [ecx + 0x3f04]
mov dword [ebp - 0x1c], 0x3f800000
mov dword [ebp - 0x18], 0x3f800000
mov dword [ebp - 0x24], 0
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x2c], 0x41200000
mov dword [ebp - 0x28], 0x41200000
movss xmm0, dword [eax + 0x40]
subss xmm0, dword [eax + 0x90]
movss xmm2, dword [eax + 0x44]
subss xmm2, dword [eax + 0x94]
addss xmm0, dword [0x469800]
addss xmm2, dword [0x469790]
movss dword [eax + 0x108], xmm0
movss dword [eax + 0x10c], xmm2
movss xmm1, dword [eax + 0x120]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0x124]
maxss xmm0, xmm2
movss dword [eax + 0x120], xmm1
movss dword [eax + 0x124], xmm0
lea eax, [ebp - 0x60]
movaps xmm0, xmmword [0x469c10]
push eax
lea eax, [ebp - 0x50]
push eax
push ecx
lea eax, [ebp - 0x1c]
push eax
movups xmmword [ebp - 0x60], xmm0
lea eax, [ebp - 0x24]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x50], xmm0
call fcn.0043de10
add esp, 0x14
test al, al
je 0x402740
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
mov ecx, dword [0x470c10]
lea edx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0x3f800000
mov dword [ebp - 0x18], 0x3f800000
mov dword [ebp - 0x24], 0
mov eax, dword [ecx + 0x3f04]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x2c], 0x41f80000
mov dword [ebp - 0x28], 0x41c80000
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
movss xmm0, dword [eax + 0x40]
subss xmm0, dword [eax + 0x90]
movss xmm2, dword [eax + 0x44]
subss xmm2, dword [eax + 0x94]
addss xmm0, dword [0x4697d4]
addss xmm2, dword [0x4697b8]
movss dword [eax + 0x108], xmm0
movss dword [eax + 0x10c], xmm2
movss xmm1, dword [eax + 0x120]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0x124]
maxss xmm0, xmm2
movss dword [eax + 0x120], xmm1
movss dword [eax + 0x124], xmm0
lea eax, [ebp - 0x60]
movaps xmm0, xmmword [0x469c10]
push eax
lea eax, [ebp - 0x50]
push eax
push ecx
lea eax, [ebp - 0x1c]
push eax
movups xmmword [ebp - 0x60], xmm0
lea eax, [ebp - 0x24]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x50], xmm0
call fcn.0043de10
mov esi, dword [sym.imp.SHELL32.dll_ShellExecuteA]
add esp, 0x14
test al, al
je 0x402831
push 1
push 0
push 0
push str.https:__s4rebirth.com_
push str.open
push 0
call esi
mov ecx, dword [0x470c10]
lea edx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0x3f800000
mov dword [ebp - 0x18], 0x3f800000
mov dword [ebp - 0x24], 0
mov eax, dword [ecx + 0x3f04]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x2c], 0x41f80000
mov dword [ebp - 0x28], 0x41c80000
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
movss xmm0, dword [eax + 0x40]
subss xmm0, dword [eax + 0x90]
movss xmm2, dword [eax + 0x44]
subss xmm2, dword [eax + 0x94]
addss xmm0, dword [0x4697d4]
addss xmm2, dword [0x4697cc]
movss dword [eax + 0x108], xmm0
movss dword [eax + 0x10c], xmm2
movss xmm1, dword [eax + 0x120]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0x124]
maxss xmm0, xmm2
movss dword [eax + 0x120], xmm1
movss dword [eax + 0x124], xmm0
lea eax, [ebp - 0x60]
movaps xmm0, xmmword [0x469c10]
push eax
lea eax, [ebp - 0x50]
push eax
push ecx
lea eax, [ebp - 0x1c]
push eax
movups xmmword [ebp - 0x60], xmm0
lea eax, [ebp - 0x24]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x50], xmm0
call fcn.0043de10
add esp, 0x14
test al, al
je 0x40291c
push 1
push 0
push 0
push str.https:__discord.gg_s4rebirth
push str.open
push 0
call esi
mov esi, dword [0x470c10]
mov dword [ebp - 0x40], 7
mov eax, dword [esi + 0x3f04]
lea ecx, [esi + 0x4074]
mov byte [eax + 0xc5], 1
mov eax, dword [esi + 0x3f04]
movss xmm0, dword [eax + 0x40]
subss xmm0, dword [eax + 0x90]
movss xmm2, dword [eax + 0x44]
subss xmm2, dword [eax + 0x94]
addss xmm0, dword [0x4697a4]
addss xmm2, dword [0x4697d4]
movss dword [eax + 0x108], xmm0
movss dword [eax + 0x10c], xmm2
movss xmm1, dword [eax + 0x120]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0x124]
maxss xmm0, xmm2
movss dword [eax + 0x120], xmm1
movss dword [eax + 0x124], xmm0
lea eax, [ebp - 0x40]
movups xmm0, xmmword [esi + 0x398c]
push eax
movups xmmword [ebp - 0x3c], xmm0
call fcn.00425f50
mov eax, dword [0x470c10]
xorps xmm0, xmm0
push 0
push 0
movups xmmword [esi + 0x398c], xmm0
or dword [eax + 0x3f9c], 1
mov edx, str.Username
mov dword [eax + 0x3fa0], 0x433e0000
mov ecx, edx
push 0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0
push eax
push 0xc
push 0x470c24
mov dword [ebp - 0x18], 0
call fcn.00440b90
mov ecx, dword [0x470c10]
mov edx, str.Password
push 0
push 0
push 0x8000
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
movss xmm0, dword [eax + 0x40]
subss xmm0, dword [eax + 0x90]
movss xmm2, dword [eax + 0x44]
subss xmm2, dword [eax + 0x94]
addss xmm0, dword [0x4697a4]
addss xmm2, dword [0x4697dc]
movss dword [eax + 0x108], xmm0
movss dword [eax + 0x10c], xmm2
movss xmm1, dword [eax + 0x120]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0x124]
maxss xmm0, xmm2
movss dword [eax + 0x120], xmm1
movss dword [eax + 0x124], xmm0
lea eax, [ebp - 0x1c]
or dword [ecx + 0x3f9c], 1
push eax
mov dword [ecx + 0x3fa0], 0x433e0000
mov ecx, edx
push 0xc
push 0x470c38
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00440b90
mov esi, dword [0x470c10]
add esp, 0x30
mov eax, dword [esi + 0x4074]
mov ecx, dword [esi + 0x407c]
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 - 0x14]
add eax, eax
movups xmm0, xmmword [ecx + edx*4 - 0x10]
lea edx, [ebp - 0x48]
mov dword [ebp - 0x24], 0x3f800000
mov dword [ebp - 0x20], 0x3f800000
movups xmmword [esi + eax*8 + 0x391c], xmm0
dec dword [esi + 0x4074]
mov eax, dword [esi + 0x3f04]
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x48], 0x41700000
mov byte [eax + 0xc5], 1
mov eax, dword [esi + 0x3f04]
mov dword [ebp - 0x44], 0x41700000
movss xmm0, dword [eax + 0x40]
subss xmm0, dword [eax + 0x90]
movss xmm2, dword [eax + 0x44]
subss xmm2, dword [eax + 0x94]
addss xmm0, dword [0x4697d0]
addss xmm2, dword [0x4697e0]
movss dword [eax + 0x108], xmm0
movss dword [eax + 0x10c], xmm2
movss xmm1, dword [eax + 0x120]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0x124]
maxss xmm0, xmm2
movss dword [eax + 0x120], xmm1
movss dword [eax + 0x124], xmm0
lea eax, [ebp - 0x60]
movaps xmm0, xmmword [0x469c10]
push eax
lea eax, [ebp - 0x3c]
push eax
push ecx
lea eax, [ebp - 0x24]
push eax
movups xmmword [ebp - 0x60], xmm0
lea eax, [ebp - 0x2c]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x3c], xmm0
call fcn.0043de10
add esp, 0x14
test al, al
je 0x402bcd
cmp byte [0x470c0d], 0
sete byte [0x470c0d]
mov ecx, dword [0x470c10]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x48], 0x3f800000
mov dword [ebp - 0x44], 0x3f800000
mov dword [ebp - 0x1c], 0
mov eax, dword [ecx + 0x3f04]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x24], 0x430c0000
mov dword [ebp - 0x20], 0x42600000
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
movss xmm0, dword [eax + 0x40]
subss xmm0, dword [eax + 0x90]
movss xmm2, dword [eax + 0x44]
subss xmm2, dword [eax + 0x94]
addss xmm0, dword [0x4697a8]
addss xmm2, dword [0x4697e4]
movss dword [eax + 0x108], xmm0
movss dword [eax + 0x10c], xmm2
movss xmm1, dword [eax + 0x120]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0x124]
maxss xmm0, xmm2
movss dword [eax + 0x120], xmm1
movss dword [eax + 0x124], xmm0
lea eax, [ebp - 0x3c]
movaps xmm0, xmmword [0x469c10]
push eax
lea eax, [ebp - 0x60]
push eax
push ecx
lea eax, [ebp - 0x48]
push eax
movups xmmword [ebp - 0x3c], xmm0
lea eax, [ebp - 0x1c]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x60], xmm0
call fcn.0043de10
add esp, 0x14
test al, al
je 0x402cb8
push 0
push str.testx
push str.test
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov ecx, dword [0x470c10]
push str.READY_TO_START_
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
movss xmm0, dword [eax + 0x40]
subss xmm0, dword [eax + 0x90]
movss xmm2, dword [eax + 0x44]
subss xmm2, dword [eax + 0x94]
addss xmm0, dword [0x46979c]
addss xmm2, dword [0x4697e8]
movss dword [eax + 0x108], xmm0
movss dword [eax + 0x10c], xmm2
movss xmm1, dword [eax + 0x120]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0x124]
maxss xmm0, xmm2
movss dword [eax + 0x120], xmm1
movss dword [eax + 0x124], xmm0
lea eax, [ebp - 0x3c]
movaps xmm0, xmmword [0x469af0]
push eax
mov dword [ecx + 0x3c98], 0x41b00000
movups xmmword [ebp - 0x3c], xmm0
call fcn.0043bd00
mov esi, dword [0x470c10]
add esp, 8
mov dword [ebp - 0x40], 0x2a
mov eax, dword [esi + 0x3f04]
lea ecx, [esi + 0x4074]
mov byte [eax + 0xc5], 1
mov eax, dword [esi + 0x3f04]
movss xmm0, dword [eax + 0x40]
subss xmm0, dword [eax + 0x90]
movss xmm2, dword [eax + 0x44]
subss xmm2, dword [eax + 0x94]
addss xmm0, dword [0x46979c]
addss xmm2, dword [0x4697ec]
movss dword [eax + 0x108], xmm0
movss dword [eax + 0x10c], xmm2
movss xmm1, dword [eax + 0x120]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0x124]
maxss xmm0, xmm2
movss dword [eax + 0x120], xmm1
movss dword [eax + 0x124], xmm0
lea eax, [ebp - 0x40]
movups xmm0, xmmword [esi + 0x3bbc]
push eax
movups xmmword [ebp - 0x3c], xmm0
call fcn.00425f50
movaps xmm0, xmmword [0x469b90]
lea eax, [ebp - 0x40]
movups xmmword [esi + 0x3bbc], xmm0
mov esi, dword [0x470c10]
push eax
mov dword [ebp - 0x40], 7
movups xmm0, xmmword [esi + 0x398c]
lea ecx, [esi + 0x4074]
movups xmmword [ebp - 0x3c], xmm0
call fcn.00425f50
movaps xmm0, xmmword [0x469af0]
lea eax, [ebp - 0x40]
movups xmmword [esi + 0x398c], xmm0
mov esi, dword [0x470c10]
push eax
mov dword [ebp - 0x40], 8
movups xmm0, xmmword [esi + 0x399c]
lea ecx, [esi + 0x4074]
movups xmmword [ebp - 0x3c], xmm0
call fcn.00425f50
movaps xmm0, xmmword [0x469b10]
lea eax, [ebp - 0x40]
movups xmmword [esi + 0x399c], xmm0
mov esi, dword [0x470c10]
push eax
mov dword [ebp - 0x40], 9
movups xmm0, xmmword [esi + 0x39ac]
lea ecx, [esi + 0x4074]
movups xmmword [ebp - 0x3c], xmm0
call fcn.00425f50
movaps xmm0, xmmword [0x469b50]
lea ecx, [ebp - 0x48]
movups xmmword [esi + 0x39ac], xmm0
mov dword [ebp - 0x48], 0x44200000
movss xmm0, dword [0x469728]
mov dword [ebp - 0x44], 0x41000000
call fcn.0043ded0
mov edi, dword [0x470c10]
mov eax, dword [edi + 0x4074]
lea esi, [edi + 0x4074]
mov ecx, dword [esi + 8]
mov dword [ebp - 0x40], 0x2a
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 - 0x14]
movups xmm0, xmmword [ecx + edx*4 - 0x10]
add eax, eax
movups xmmword [edi + eax*8 + 0x391c], xmm0
dec dword [esi]
mov eax, dword [esi]
mov ecx, dword [edi + 0x407c]
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 - 0x14]
movups xmm0, xmmword [ecx + edx*4 - 0x10]
add eax, eax
movups xmmword [edi + eax*8 + 0x391c], xmm0
dec dword [esi]
mov eax, dword [esi]
mov ecx, dword [edi + 0x407c]
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 - 0x14]
movups xmm0, xmmword [ecx + edx*4 - 0x10]
add eax, eax
mov ecx, esi
movups xmmword [edi + eax*8 + 0x391c], xmm0
dec dword [esi]
mov eax, dword [edi + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [edi + 0x3f04]
movss xmm0, dword [eax + 0x40]
subss xmm0, dword [eax + 0x90]
movss xmm2, dword [eax + 0x44]
subss xmm2, dword [eax + 0x94]
addss xmm0, dword [0x46979c]
addss xmm2, dword [0x4697f0]
movss dword [eax + 0x108], xmm0
movss dword [eax + 0x10c], xmm2
movss xmm1, dword [eax + 0x120]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0x124]
maxss xmm0, xmm2
movss dword [eax + 0x120], xmm1
movss dword [eax + 0x124], xmm0
lea eax, [ebp - 0x40]
movups xmm0, xmmword [edi + 0x3bbc]
push eax
movups xmmword [ebp - 0x3c], xmm0
call fcn.00425f50
mov esi, dword [0x470c10]
lea eax, [ebp - 0x40]
movaps xmm0, xmmword [0x469a80]
movups xmmword [edi + 0x3bbc], xmm0
push eax
movups xmm0, xmmword [esi + 0x398c]
lea ecx, [esi + 0x4074]
mov dword [ebp - 0x40], 7
movups xmmword [ebp - 0x3c], xmm0
call fcn.00425f50
movaps xmm0, xmmword [0x469a50]
lea eax, [ebp - 0x40]
movups xmmword [esi + 0x398c], xmm0
mov esi, dword [0x470c10]
push eax
mov dword [ebp - 0x40], 8
movups xmm0, xmmword [esi + 0x399c]
lea ecx, [esi + 0x4074]
movups xmmword [ebp - 0x3c], xmm0
call fcn.00425f50
movaps xmm0, xmmword [0x469a60]
movups xmmword [esi + 0x399c], xmm0
mov esi, dword [0x470c10]
mov dword [ebp - 0x40], 9
movups xmm0, xmmword [esi + 0x39ac]
lea eax, [ebp - 0x40]
push eax
lea ecx, [esi + 0x4074]
movups xmmword [ebp - 0x3c], xmm0
call fcn.00425f50
movaps xmm0, xmmword [0x469a70]
lea ecx, [ebp - 0x48]
movups xmmword [esi + 0x39ac], xmm0
mov dword [ebp - 0x48], 0x44200000
movss xmm0, dword [0x469728]
mov dword [ebp - 0x44], 0x41000000
call fcn.0043ded0
mov esi, dword [0x470c10]
mov eax, dword [esi + 0x4074]
mov ecx, dword [esi + 0x407c]
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 - 0x14]
movups xmm0, xmmword [ecx + edx*4 - 0x10]
add eax, eax
movups xmmword [esi + eax*8 + 0x391c], xmm0
dec dword [esi + 0x4074]
mov eax, dword [esi + 0x4074]
mov ecx, dword [esi + 0x407c]
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 - 0x14]
movups xmm0, xmmword [ecx + edx*4 - 0x10]
add eax, eax
movups xmmword [esi + eax*8 + 0x391c], xmm0
dec dword [esi + 0x4074]
mov eax, dword [esi + 0x4074]
mov ecx, dword [esi + 0x407c]
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 - 0x14]
movups xmm0, xmmword [ecx + edx*4 - 0x10]
add eax, eax
movups xmmword [esi + eax*8 + 0x391c], xmm0
dec dword [esi + 0x4074]
call fcn.004135c0
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.0045ddbf
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret