Function at 0x411e10
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 [0x5d672c]
mov ecx, 0x5d675c
push 0x80e2
mov dword [eax + 0x20], 0
cmp dword [0x5d6770], 0xf
cmova ecx, dword [0x5d675c]
xor edx, edx
call fcn.00433760
add esp, 4
mov ecx, 0x476870
call fcn.0041cf00
test al, al
je 0x4129fa
mov ecx, dword [0x5d672c]
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.0042de50
mov eax, dword [0x5d672c]
add esp, 4
mov edx, 1
mov ecx, dword [eax + 0x47c4]
push str.Foreground
mov ecx, dword [ecx]
call fcn.0042de50
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 [0x54d47c]
addss xmm2, xmm0
addss xmm1, xmm0
push eax
movss dword [esp + 0x44], xmm2
movss dword [esp + 0x48], xmm1
call fcn.0044ca90
call fcn.00405930
mov esi, dword [0x5d672c]
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.00440c00
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.00430b20
add esp, 0xc
test al, al
je 0x4120d0
mov ecx, dword [0x5d672c]
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, 0x476894
movss xmm0, dword [eax + 0x14]
subss xmm0, dword [eax + 0x78]
mov byte [eax + 0x131], 1
addss xmm0, dword [0x54d42c]
movss dword [eax + 0xf0], xmm0
call fcn.00457b00
add esp, 4
test al, al
je 0x412010
mov dword [0x5540a0], 1
movss xmm1, dword [0x54d4c8]
xorps xmm0, xmm0
call fcn.00438f30
push ecx
lea edx, [esp + 0x14]
mov dword [esp + 0x14], 0x428c0000
mov ecx, 0x476898
mov dword [esp + 0x18], 0x420c0000
call fcn.00457b00
add esp, 4
test al, al
je 0x412050
mov dword [0x5540a0], 2
movss xmm1, dword [0x54d4c8]
xorps xmm0, xmm0
call fcn.00438f30
push ecx
lea edx, [esp + 0x14]
mov dword [esp + 0x14], 0x428c0000
mov ecx, 0x47689c
mov dword [esp + 0x18], 0x420c0000
call fcn.00457b00
add esp, 4
test al, al
je 0x412090
mov dword [0x5540a0], 5
movss xmm1, dword [0x54d4c8]
xorps xmm0, xmm0
call fcn.00438f30
push ecx
lea edx, [esp + 0x14]
mov dword [esp + 0x14], 0x428c0000
mov ecx, 0x4768a0
mov dword [esp + 0x18], 0x420c0000
call fcn.00457b00
add esp, 4
test al, al
je 0x4120d0
mov dword [0x5540a0], 6
call fcn.00430db0
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.00430b20
add esp, 0xc
test al, al
je 0x412686
mov ecx, dword [0x5d672c]
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 [0x5540a0]
cmp eax, 1
jne 0x41215e
call fcn.00419fd0
jmp 0x412686
cmp eax, 2
jne 0x41239c
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x4121b4
mov ecx, 0x473d5b
mov esi, ecx
cmp esi, 0xffffffff
jae 0x4121a6
nop
mov dl, byte [ecx]
test dl, dl
je 0x4121a6
cmp dl, 0x23
jne 0x4121a0
cmp byte [ecx + 1], dl
je 0x4121a6
inc ecx
cmp ecx, 0xffffffff
jb 0x412190
push ecx
xorps xmm3, xmm3
mov edx, esi
call fcn.00459910
add esp, 4
push 0x5d54c0
push str.Script
call fcn.0046ba10
cmp byte [0x5d54c0], 0
je 0x4121eb
push ecx
push 0x4b
push 0x5d5378
push 0x45a6d0
mov edx, 0x5d68b4
mov ecx, 0x4768ac
call fcn.0045a750
add esp, 0x10
mov ecx, dword [0x5d672c]
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x412244
mov ecx, 0x4768b0
mov esi, ecx
cmp esi, 0xffffffff
jae 0x412236
nop dword [eax]
mov dl, byte [ecx]
test dl, dl
je 0x412236
cmp dl, 0x23
jne 0x412230
cmp byte [ecx + 1], dl
je 0x412236
inc ecx
cmp ecx, 0xffffffff
jb 0x412220
push ecx
xorps xmm3, xmm3
mov edx, esi
call fcn.00459910
add esp, 4
lea edx, [esp + 0x10]
mov dword [esp + 0x10], 0x42be0000
mov ecx, 0x5d5874
mov dword [esp + 0x14], 0x41e00000
call fcn.00407670
call fcn.00436470
mov ecx, dword [0x5d672c]
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x4122b9
mov ecx, 0x473d65
mov esi, ecx
cmp esi, 0xffffffff
jae 0x4122ab
mov dl, byte [ecx]
test dl, dl
je 0x4122ab
cmp dl, 0x23
jne 0x4122a5
cmp byte [ecx + 1], dl
je 0x4122ab
inc ecx
cmp ecx, 0xffffffff
jb 0x412295
push ecx
xorps xmm3, xmm3
mov edx, esi
call fcn.00459910
add esp, 4
push 0x5d68c9
push str.Run_Script
call fcn.0046ba10
cmp byte [0x5d68c9], 0
je 0x4122d8
mov byte [0x5d68c0], 0
push 0x5d68c0
push str.Run_Bot
call fcn.0046ba10
cmp byte [0x5d68c0], 0
je 0x4122f7
mov byte [0x5d68c9], 0
mov esi, dword [0x5d672c]
mov edx, dword [esi + 0x46a0]
dec dword [esi + 0x4788]
dec word [esi + 0x5a04]
mov ecx, dword [esi + 0x4788]
mov eax, dword [esi + 0x4790]
shr edx, 2
mov eax, dword [eax + ecx*4 - 4]
mov dword [esi + 0x46a0], eax
test dl, 1
je 0x41233e
test al, 4
jne 0x41233e
mov eax, dword [esi + 0x5a00]
mov dword [esi + 0x3788], eax
mov eax, dword [esi + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [esi + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x412686
mov eax, 0x473d66
mov esi, eax
cmp esi, 0xffffffff
jae 0x412389
nop word [eax + eax]
mov dl, byte [eax]
test dl, dl
je 0x412389
lea ecx, [eax + 1]
cmp dl, 0x23
jne 0x412382
cmp byte [ecx], dl
je 0x412389
mov eax, ecx
cmp eax, 0xffffffff
jb 0x412370
push eax
xorps xmm3, xmm3
mov edx, esi
call fcn.00459910
add esp, 4
jmp 0x412686
cmp eax, 5
jne 0x41267c
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x4123f4
mov ecx, str.Controls
mov esi, ecx
cmp esi, 0xffffffff
jae 0x4123e6
nop dword [eax]
mov dl, byte [ecx]
test dl, dl
je 0x4123e6
cmp dl, 0x23
jne 0x4123e0
cmp byte [ecx + 1], dl
je 0x4123e6
inc ecx
cmp ecx, 0xffffffff
jb 0x4123d0
push ecx
xorps xmm3, xmm3
mov edx, esi
call fcn.00459910
add esp, 4
call dword [sym.imp.WINMM.dll_joyGetNumDevs]
mov edi, eax
xor esi, esi
test edi, edi
je 0x4124d3
mov ebx, 0x473d67
nop dword [eax + eax]
push 0x2d8
lea eax, [esp + 0x3c]
push eax
push esi
call dword [sym.imp.WINMM.dll_joyGetDevCapsW]
test eax, eax
jne 0x4124ca
push esi
push str.Game_Device__d:
call fcn.004570b0
lea eax, [esp + 0x44]
push eax
push str.Name:__s
call fcn.004570b0
lea eax, [esp + 0x118]
push eax
push str.Manufacturer:__s
call fcn.004570b0
push dword [esp + 0xac]
push str.Number_of_Buttons:__d
call fcn.004570b0
push dword [esp + 0xe0]
push str.Number_of_Axes:__d
call fcn.004570b0
mov ecx, dword [0x5d672c]
add esp, 0x28
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x4124ca
mov ecx, 0x473d67
cmp ebx, 0xffffffff
jae 0x4124bc
mov dl, byte [ecx]
test dl, dl
je 0x4124bc
cmp dl, 0x23
jne 0x4124b6
cmp byte [ecx + 1], dl
je 0x4124bc
inc ecx
cmp ecx, 0xffffffff
jb 0x4124a6
push ecx
xorps xmm3, xmm3
mov edx, ebx
call fcn.00459910
add esp, 4
inc esi
cmp esi, edi
jb 0x412410
xor esi, esi
mov edi, 0x473d71
nop word [eax + eax]
lea eax, [esp + 0x10]
xorps xmm0, xmm0
push eax
push esi
movaps xmmword [esp + 0x18], xmm0
call dword [sym.imp.XINPUT1_3.dll_Ordinal_2]
test eax, eax
jne 0x412564
push esi
push str.Device__d:
call fcn.004570b0
push str.Is_Connected:_Yes
call fcn.004570b0
mov ecx, dword [0x5d672c]
add esp, 0xc
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x412564
mov ecx, 0x473d71
cmp edi, 0xffffffff
jae 0x412556
nop dword [eax]
mov dl, byte [ecx]
test dl, dl
je 0x412556
cmp dl, 0x23
jne 0x412550
cmp byte [ecx + 1], dl
je 0x412556
inc ecx
cmp ecx, 0xffffffff
jb 0x412540
push ecx
xorps xmm3, xmm3
mov edx, edi
call fcn.00459910
add esp, 4
inc esi
cmp esi, 4
jb 0x4124e0
lea edx, [esp + 0x10]
mov dword [esp + 0x10], 0x42be0000
mov ecx, 0x5d586c
mov dword [esp + 0x14], 0x41e00000
call fcn.00407670
call fcn.00436470
push 0x5d68b9
push str.Record_keys
call fcn.0046ba10
mov esi, dword [0x5d672c]
mov edx, dword [esi + 0x46a0]
dec dword [esi + 0x4788]
dec word [esi + 0x5a04]
mov ecx, dword [esi + 0x4788]
mov eax, dword [esi + 0x4790]
shr edx, 2
mov eax, dword [eax + ecx*4 - 4]
mov dword [esi + 0x46a0], eax
test dl, 1
je 0x4125e7
test al, 4
jne 0x4125e7
mov eax, dword [esi + 0x5a00]
mov dword [esi + 0x3788], eax
mov eax, dword [esi + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [esi + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x41263a
mov ecx, 0x473d72
mov esi, ecx
cmp esi, 0xffffffff
jae 0x412626
nop
mov dl, byte [ecx]
test dl, dl
je 0x412626
cmp dl, 0x23
jne 0x412620
cmp byte [ecx + 1], dl
je 0x412626
inc ecx
cmp ecx, 0xffffffff
jb 0x412610
push ecx
xorps xmm3, xmm3
mov edx, esi
call fcn.00459910
mov esi, dword [0x5d672c]
add esp, 4
mov eax, dword [esi + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [esi + 0x3e48]
movss xmm0, dword [eax + 0x134]
subss xmm0, dword [esi + 0x37f4]
movss dword [eax + 0x134], xmm0
addss xmm0, dword [eax + 0x14]
addss xmm0, dword [eax + 0x138]
movss dword [eax + 0xf0], xmm0
jmp 0x412686
cmp eax, 6
jne 0x412686
call fcn.00418620
call fcn.00430db0
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.00430b20
add esp, 0xc
test al, al
je 0x4129e9
mov esi, dword [0x5d672c]
movss xmm3, dword [0x54d4a0]
push 0
push 0
mov eax, dword [esi + 0x3e48]
push 0x476960
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 [0x54d424]
mov byte [eax + 0xac], 1
mov eax, dword [esi + 0x3e48]
mulss xmm1, dword [0x54d310]
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.00450890
mov eax, dword [esi + 0x3e48]
movss xmm0, dword [esp + 0x10]
addss xmm0, dword [0x54d348]
push 0x4769a0
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 [0x54d310]
addss xmm1, xmm0
movaps xmm0, xmmword [0x54d650]
movups xmmword [esp + 0x18], xmm0
movss dword [ecx + 0xf0], xmm1
call fcn.00457170
movss xmm1, dword [0x54d4c8]
xorps xmm0, xmm0
call fcn.00438f30
push 0x4769ac
call fcn.004570b0
movss xmm1, dword [0x54d4c8]
add esp, 0xc
xorps xmm0, xmm0
call fcn.00438f30
movaps xmm0, xmmword [0x54d650]
lea eax, [esp + 0x10]
movups xmmword [esp + 0x10], xmm0
sub esp, 8
movss xmm0, dword [0x54d418]
divss xmm0, dword [esp + 0x34]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push 0x4769b0
push eax
call fcn.00457170
movss xmm1, dword [0x54d4c8]
xorps xmm0, xmm0
call fcn.00438f30
push 0x4769b8
call fcn.004570b0
movss xmm1, dword [0x54d4c8]
add esp, 0x14
xorps xmm0, xmm0
call fcn.00438f30
movaps xmm0, xmmword [0x54d650]
lea eax, [esp + 0x10]
sub esp, 8
movups xmmword [esp + 0x18], xmm0
movsd xmm0, qword [0x54d3b0]
movsd qword [esp], xmm0
push 0x4769bc
push eax
call fcn.00457170
movss xmm1, dword [0x54d4c8]
xorps xmm0, xmm0
call fcn.00438f30
push 0x4769c4
call fcn.004570b0
movss xmm1, dword [0x54d4c8]
add esp, 0x14
xorps xmm0, xmm0
call fcn.00438f30
push 0x4769c8
call fcn.004570b0
movss xmm1, dword [0x54d4c8]
add esp, 4
xorps xmm0, xmm0
call fcn.00438f30
movaps xmm0, xmmword [0x54d650]
lea eax, [esp + 0x10]
push 0x4769d0
push eax
movups xmmword [esp + 0x18], xmm0
call fcn.00457170
movss xmm1, dword [0x54d4c8]
xorps xmm0, xmm0
call fcn.00438f30
push 0x4769dc
call fcn.004570b0
movss xmm1, dword [0x54d4c8]
add esp, 0xc
xorps xmm0, xmm0
call fcn.00438f30
push 0x4769e0
call fcn.004570b0
movss xmm1, dword [0x54d4c8]
add esp, 4
xorps xmm0, xmm0
call fcn.00438f30
push 0x4769e4
call fcn.004570b0
movss xmm1, dword [0x54d4c8]
add esp, 4
xorps xmm0, xmm0
call fcn.00438f30
push 0x4769ec
call fcn.004570b0
mov ecx, dword [0x5d672c]
add esp, 4
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x4129ae
movss xmm1, dword [0x54d4c8]
lea ecx, [esp + 0x10]
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call fcn.00438ba0
push ecx
lea edx, [esp + 0x14]
mov dword [esp + 0x14], 0x42200000
mov ecx, 0x4769f0
mov dword [esp + 0x18], 0x41f00000
call fcn.00457b00
add esp, 4
test al, al
jne 0x4129fa
movss xmm1, dword [0x54d4c8]
xorps xmm0, xmm0
call fcn.00438f30
call fcn.004086b0
call fcn.00430db0
call fcn.00435c90
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00409360
int3