Function at 0x410400
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x304
push ebx
push esi
push edi
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x5f94c8]
mov ecx, 0x5f9578
push 0x80e2
mov dword [eax + 0x20], 0
cmp dword [0x5f958c], 0xf
cmova ecx, dword [0x5f9578]
xor edx, edx
call fcn.00431180
add esp, 4
mov ecx, str.EternalReturn.exe
call fcn.0041a820
test al, al
je 0x410fcf
mov ecx, dword [0x5f94c8]
xor edx, edx
push str.Background
mov eax, dword [ecx + 0x3e48]
movss xmm0, dword [eax + 0x14]
movss dword [esp + 0x38], xmm0
movss xmm0, dword [eax + 0x18]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
mov ecx, dword [ecx + 0x47c4]
movss dword [esp + 0x30], xmm0
mov esi, dword [eax + 0x264]
mov ecx, dword [ecx]
call fcn.0042b920
mov eax, dword [0x5f94c8]
add esp, 4
mov edx, 1
mov ecx, dword [eax + 0x47c4]
push str.Foreground
mov ecx, dword [ecx]
call fcn.0042b920
movss xmm2, dword [esp + 0x38]
lea eax, [esp + 0x30]
movss xmm1, dword [esp + 0x30]
movaps xmm0, xmm2
xorps xmm3, xmm3
add esp, 4
addss xmm0, xmm3
mov ecx, esi
push 0xff000000
push 0xff221114
movss dword [esp + 0x18], xmm0
movaps xmm0, xmm1
addss xmm0, xmm3
push 0xff882044
push 0xff000000
push eax
lea eax, [esp + 0x24]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [0x56ff74]
addss xmm2, xmm0
addss xmm1, xmm0
push eax
movss dword [esp + 0x44], xmm2
movss dword [esp + 0x48], xmm1
call fcn.0044a250
call fcn.00405600
mov esi, dword [0x5f94c8]
lea eax, [esp + 0x10]
push eax
mov dword [esp + 0x14], 0
movss xmm0, dword [esi + 0x3788]
lea ecx, [esi + 0x4764]
movss dword [esp + 0x18], xmm0
call fcn.0043e5c0
push 0
push ecx
lea eax, [esp + 0x18]
mov dword [esi + 0x3788], 0x3f4ccccd
push eax
mov edx, 1
mov dword [esp + 0x1c], 0x43eb0000
xor ecx, ecx
mov dword [esp + 0x20], 0x43c80000
call fcn.0042e6c0
add esp, 0xc
test al, al
je 0x4106c0
mov ecx, dword [0x5f94c8]
lea edx, [esp + 0x10]
push ecx
mov dword [esp + 0x14], 0x428c0000
mov dword [esp + 0x18], 0x420c0000
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
mov ecx, 0x46f5dc
movss xmm0, dword [eax + 0x14]
subss xmm0, dword [eax + 0x78]
mov byte [eax + 0x131], 1
addss xmm0, dword [0x56ff24]
movss dword [eax + 0xf0], xmm0
call fcn.00454380
add esp, 4
test al, al
je 0x410600
mov dword [0x577428], 1
movss xmm1, dword [0x56ffb8]
xorps xmm0, xmm0
call fcn.00436920
push ecx
lea edx, [esp + 0x14]
mov dword [esp + 0x14], 0x428c0000
mov ecx, 0x46f5e0
mov dword [esp + 0x18], 0x420c0000
call fcn.00454380
add esp, 4
test al, al
je 0x410640
mov dword [0x577428], 2
movss xmm1, dword [0x56ffb8]
xorps xmm0, xmm0
call fcn.00436920
push ecx
lea edx, [esp + 0x14]
mov dword [esp + 0x14], 0x428c0000
mov ecx, 0x46f5ec
mov dword [esp + 0x18], 0x420c0000
call fcn.00454380
add esp, 4
test al, al
je 0x410680
mov dword [0x577428], 5
movss xmm1, dword [0x56ffb8]
xorps xmm0, xmm0
call fcn.00436920
push ecx
lea edx, [esp + 0x14]
mov dword [esp + 0x14], 0x428c0000
mov ecx, 0x46f5f0
mov dword [esp + 0x18], 0x420c0000
call fcn.00454380
add esp, 4
test al, al
je 0x4106c0
mov dword [0x577428], 6
call fcn.0042e950
push 0
push ecx
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0x43eb0000
push eax
mov edx, 1
mov dword [esp + 0x20], 0x43c80000
xor ecx, ecx
call fcn.0042e6c0
add esp, 0xc
test al, al
je 0x410c5b
mov ecx, dword [0x5f94c8]
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
movss xmm0, dword [ecx + 0x37f4]
addss xmm0, dword [eax + 0x134]
movss dword [eax + 0x134], xmm0
addss xmm0, dword [eax + 0x14]
addss xmm0, dword [eax + 0x138]
movss dword [eax + 0xf0], xmm0
mov eax, dword [0x577428]
cmp eax, 1
jne 0x41074e
call fcn.00416810
jmp 0x410c5b
cmp eax, 2
jne 0x410982
mov eax, dword [ecx + 0x3e48]
mov esi, 0x46e79a
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x4107a4
mov ecx, esi
cmp esi, 0xffffffff
jae 0x410796
nop
mov dl, byte [ecx]
test dl, dl
je 0x410796
cmp dl, 0x23
jne 0x410790
cmp byte [ecx + 1], dl
je 0x410796
inc ecx
cmp ecx, 0xffffffff
jb 0x410780
push ecx
xorps xmm3, xmm3
mov edx, esi
call fcn.00456190
add esp, 4
push 0x5772d0
push str.Script
call fcn.00467bd0
cmp byte [0x5772d0], 0
je 0x4107db
push ecx
push 0x43
push 0x5771b0
push 0x456f50
mov edx, 0x5f9618
mov ecx, 0x46f2ac
call fcn.00456fd0
add esp, 0x10
mov ecx, dword [0x5f94c8]
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x410834
mov ecx, str.Combo
mov edi, ecx
cmp edi, 0xffffffff
jae 0x410826
nop dword [eax]
mov dl, byte [ecx]
test dl, dl
je 0x410826
cmp dl, 0x23
jne 0x410820
cmp byte [ecx + 1], dl
je 0x410826
inc ecx
cmp ecx, 0xffffffff
jb 0x410810
push ecx
xorps xmm3, xmm3
mov edx, edi
call fcn.00456190
add esp, 4
lea edx, [esp + 0x10]
mov dword [esp + 0x10], 0x42be0000
mov ecx, 0x5f8590
mov dword [esp + 0x14], 0x41e00000
call fcn.00405fc0
call fcn.00433e60
mov ecx, dword [0x5f94c8]
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x4108a7
mov ecx, 0x46e79a
cmp esi, 0xffffffff
jae 0x410899
mov dl, byte [ecx]
test dl, dl
je 0x410899
cmp dl, 0x23
jne 0x410893
cmp byte [ecx + 1], dl
je 0x410899
inc ecx
cmp ecx, 0xffffffff
jb 0x410883
push ecx
xorps xmm3, xmm3
mov edx, esi
call fcn.00456190
add esp, 4
push 0x5f95f5
push str.Run_Script
call fcn.00467bd0
cmp byte [0x5f95f5], 0
je 0x4108c6
mov byte [0x5f95f6], 0
push 0x5f95f6
push str.Run_Bot
call fcn.00467bd0
cmp byte [0x5f95f6], 0
je 0x4108e5
mov byte [0x5f95f5], 0
mov edi, dword [0x5f94c8]
mov edx, dword [edi + 0x46a0]
dec dword [edi + 0x4788]
dec word [edi + 0x5a04]
mov ecx, dword [edi + 0x4788]
mov eax, dword [edi + 0x4790]
shr edx, 2
mov eax, dword [eax + ecx*4 - 4]
mov dword [edi + 0x46a0], eax
test dl, 1
je 0x41092c
test al, 4
jne 0x41092c
mov eax, dword [edi + 0x5a00]
mov dword [edi + 0x3788], eax
mov eax, dword [edi + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [edi + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x410c5b
mov eax, 0x46e79a
cmp esi, 0xffffffff
jae 0x41096f
mov dl, byte [eax]
test dl, dl
je 0x41096f
lea ecx, [eax + 1]
cmp dl, 0x23
jne 0x410968
cmp byte [ecx], dl
je 0x41096f
mov eax, ecx
cmp eax, 0xffffffff
jb 0x410956
push eax
xorps xmm3, xmm3
mov edx, esi
call fcn.00456190
add esp, 4
jmp 0x410c5b
cmp eax, 5
jne 0x410c51
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x4109d7
mov ecx, str.Controls
mov esi, ecx
cmp esi, 0xffffffff
jae 0x4109c9
mov dl, byte [ecx]
test dl, dl
je 0x4109c9
cmp dl, 0x23
jne 0x4109c3
cmp byte [ecx + 1], dl
je 0x4109c9
inc ecx
cmp ecx, 0xffffffff
jb 0x4109b3
push ecx
xorps xmm3, xmm3
mov edx, esi
call fcn.00456190
add esp, 4
call dword [sym.imp.WINMM.dll_joyGetNumDevs]
mov ebx, eax
xor edi, edi
mov esi, 0x46e79a
test ebx, ebx
je 0x410ab3
nop
push 0x2d8
lea eax, [esp + 0x3c]
push eax
push edi
call dword [sym.imp.WINMM.dll_joyGetDevCapsW]
test eax, eax
jne 0x410aaa
push edi
push str.Game_Device__d:
call fcn.00453930
lea eax, [esp + 0x44]
push eax
push str.Name:__s
call fcn.00453930
lea eax, [esp + 0x118]
push eax
push str.Manufacturer:__s
call fcn.00453930
push dword [esp + 0xac]
push str.Number_of_Buttons:__d
call fcn.00453930
push dword [esp + 0xe0]
push str.Number_of_Axes:__d
call fcn.00453930
mov ecx, dword [0x5f94c8]
add esp, 0x28
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x410aaa
mov ecx, 0x46e79a
cmp esi, 0xffffffff
jae 0x410a9c
mov dl, byte [ecx]
test dl, dl
je 0x410a9c
cmp dl, 0x23
jne 0x410a96
cmp byte [ecx + 1], dl
je 0x410a9c
inc ecx
cmp ecx, 0xffffffff
jb 0x410a86
push ecx
xorps xmm3, xmm3
mov edx, esi
call fcn.00456190
add esp, 4
inc edi
cmp edi, ebx
jb 0x4109f0
mov ebx, dword [sym.imp.XINPUT1_3.dll_Ordinal_2]
xor edi, edi
nop dword [eax + eax]
lea eax, [esp + 0x10]
xorps xmm0, xmm0
push eax
push edi
movaps xmmword [esp + 0x18], xmm0
call ebx
test eax, eax
jne 0x410b3c
push edi
push str.Device__d:
call fcn.00453930
push str.Is_Connected:_Yes
call fcn.00453930
mov ecx, dword [0x5f94c8]
add esp, 0xc
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x410b3c
mov ecx, 0x46e79a
cmp esi, 0xffffffff
jae 0x410b2e
mov dl, byte [ecx]
test dl, dl
je 0x410b2e
cmp dl, 0x23
jne 0x410b28
cmp byte [ecx + 1], dl
je 0x410b2e
inc ecx
cmp ecx, 0xffffffff
jb 0x410b18
push ecx
xorps xmm3, xmm3
mov edx, esi
call fcn.00456190
add esp, 4
inc edi
cmp edi, 4
jb 0x410ac0
lea edx, [esp + 0x10]
mov dword [esp + 0x10], 0x42be0000
mov ecx, 0x5f8588
mov dword [esp + 0x14], 0x41e00000
call fcn.00405fc0
call fcn.00433e60
push 0x5f9620
push str.Record_keys
call fcn.00467bd0
mov edi, dword [0x5f94c8]
mov edx, dword [edi + 0x46a0]
dec dword [edi + 0x4788]
dec word [edi + 0x5a04]
mov ecx, dword [edi + 0x4788]
mov eax, dword [edi + 0x4790]
shr edx, 2
mov eax, dword [eax + ecx*4 - 4]
mov dword [edi + 0x46a0], eax
test dl, 1
je 0x410bbf
test al, 4
jne 0x410bbf
mov eax, dword [edi + 0x5a00]
mov dword [edi + 0x3788], eax
mov eax, dword [edi + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [edi + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x410c0f
mov ecx, 0x46e79a
cmp esi, 0xffffffff
jae 0x410bfb
mov dl, byte [ecx]
test dl, dl
je 0x410bfb
cmp dl, 0x23
jne 0x410bf5
cmp byte [ecx + 1], dl
je 0x410bfb
inc ecx
cmp ecx, 0xffffffff
jb 0x410be5
push ecx
xorps xmm3, xmm3
mov edx, esi
call fcn.00456190
mov edi, dword [0x5f94c8]
add esp, 4
mov eax, dword [edi + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [edi + 0x3e48]
movss xmm0, dword [eax + 0x134]
subss xmm0, dword [edi + 0x37f4]
movss dword [eax + 0x134], xmm0
addss xmm0, dword [eax + 0x14]
addss xmm0, dword [eax + 0x138]
movss dword [eax + 0xf0], xmm0
jmp 0x410c5b
cmp eax, 6
jne 0x410c5b
call fcn.00415500
call fcn.0042e950
push 0
push ecx
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0x43eb0000
push eax
mov edx, 3
mov dword [esp + 0x20], 0x42a00000
xor ecx, ecx
call fcn.0042e6c0
add esp, 0xc
test al, al
je 0x410fbe
mov esi, dword [0x5f94c8]
movss xmm3, dword [0x56ff94]
push 0
push 0
mov eax, dword [esi + 0x3e48]
push str.License:N_A_____.f_MS_____.f_FPS_____HideMenu______PGDN___
push ecx
mov dword [esp], 0xbf800000
movss xmm0, dword [eax + 0xf4]
movss xmm1, dword [eax + 0x22c]
movaps xmm2, xmm0
subss xmm2, dword [eax + 0x18]
subss xmm1, xmm0
addss xmm2, dword [eax + 0x7c]
subss xmm1, dword [0x56ff1c]
mov byte [eax + 0xac], 1
mov eax, dword [esi + 0x3e48]
mulss xmm1, dword [0x56fe18]
mov byte [eax + 0x131], 1
movss xmm0, dword [eax + 0x18]
subss xmm0, dword [eax + 0x7c]
addss xmm2, xmm1
addss xmm0, xmm2
movss dword [eax + 0xf4], xmm0
lea eax, [esp + 0x20]
movss xmm0, dword [esi + 0xa0]
movss xmm2, dword [esi + 0x3bb8]
mov ecx, dword [esi + 0x3bb4]
push eax
movss dword [esp + 0x40], xmm0
call fcn.0044e0a0
mov eax, dword [esi + 0x3e48]
movss xmm0, dword [esp + 0x10]
addss xmm0, dword [0x56fe50]
push str.License:
movss xmm1, dword [eax + 0x1c]
mov byte [eax + 0xac], 1
mov ecx, dword [esi + 0x3e48]
cvttss2si eax, xmm0
mov byte [ecx + 0x131], 1
movd xmm0, eax
lea eax, [esp + 0x14]
cvtdq2ps xmm0, xmm0
push eax
subss xmm1, xmm0
movss xmm0, dword [ecx + 0x14]
subss xmm0, dword [ecx + 0x78]
mulss xmm1, dword [0x56fe18]
addss xmm1, xmm0
movaps xmm0, xmmword [0x570120]
movups xmmword [esp + 0x18], xmm0
movss dword [ecx + 0xf0], xmm1
call fcn.004539f0
movss xmm1, dword [0x56ffb8]
xorps xmm0, xmm0
call fcn.00436920
push 0x46f94c
call fcn.00453930
movss xmm1, dword [0x56ffb8]
add esp, 0xc
xorps xmm0, xmm0
call fcn.00436920
movaps xmm0, xmmword [0x570120]
lea eax, [esp + 0x10]
movups xmmword [esp + 0x10], xmm0
sub esp, 8
movss xmm0, dword [0x56ff10]
divss xmm0, dword [esp + 0x34]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str.____.0f
push eax
call fcn.004539f0
movss xmm1, dword [0x56ffb8]
xorps xmm0, xmm0
call fcn.00436920
push 0x46f958
call fcn.00453930
movss xmm1, dword [0x56ffb8]
add esp, 0x14
xorps xmm0, xmm0
call fcn.00436920
movaps xmm0, xmmword [0x570120]
lea eax, [esp + 0x10]
sub esp, 8
movups xmmword [esp + 0x18], xmm0
movsd xmm0, qword [0x56feb0]
movsd qword [esp], xmm0
push str.____.f
push eax
call fcn.004539f0
movss xmm1, dword [0x56ffb8]
xorps xmm0, xmm0
call fcn.00436920
push 0x46f964
call fcn.00453930
movss xmm1, dword [0x56ffb8]
add esp, 0x14
xorps xmm0, xmm0
call fcn.00436920
push 0x46f968
call fcn.00453930
movss xmm1, dword [0x56ffb8]
add esp, 4
xorps xmm0, xmm0
call fcn.00436920
movaps xmm0, xmmword [0x570120]
lea eax, [esp + 0x10]
push str.HideMenu
push eax
movups xmmword [esp + 0x18], xmm0
call fcn.004539f0
movss xmm1, dword [0x56ffb8]
xorps xmm0, xmm0
call fcn.00436920
push 0x46f97c
call fcn.00453930
movss xmm1, dword [0x56ffb8]
add esp, 0xc
xorps xmm0, xmm0
call fcn.00436920
push 0x46f980
call fcn.00453930
movss xmm1, dword [0x56ffb8]
add esp, 4
xorps xmm0, xmm0
call fcn.00436920
push str.PGDN
call fcn.00453930
movss xmm1, dword [0x56ffb8]
add esp, 4
xorps xmm0, xmm0
call fcn.00436920
push 0x46f98c
call fcn.00453930
mov ecx, dword [0x5f94c8]
add esp, 4
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x410f83
movss xmm1, dword [0x56ffb8]
lea ecx, [esp + 0x10]
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call fcn.00436590
push ecx
lea edx, [esp + 0x14]
mov dword [esp + 0x14], 0x42200000
mov ecx, 0x46f990
mov dword [esp + 0x18], 0x41f00000
call fcn.00454380
add esp, 4
test al, al
jne 0x410fcf
movss xmm1, dword [0x56ffb8]
xorps xmm0, xmm0
call fcn.00436920
call fcn.00407150
call fcn.0042e950
call fcn.004336b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00407a00
int3