Function at 0x10074a70
Capabilities:
Terminate process

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xa0
mov eax, dword [0x1025ad40]
xor eax, esp
mov dword [esp + 0x9c], eax
mov eax, dword [0x1025afd0]
mov ecx, dword [eax + 0x19e4]
mov byte [ecx + 0x7c], 1
mov esi, dword [eax + 0x19e4]
cmp byte [esi + 0x7f], 0
jne 0x10074c64
mov edi, dword [esp + 0xb4]
movss xmm0, dword [esi + 0x14]
addss xmm0, dword [0x101b0bb0]
sub esp, 8
movss dword [esp], xmm0
mov dword [esp + 4], 0xbf800000
call fcn.1004bf70
add esp, 8
mov ebp, dword [0x1025afd0]
mov ecx, esi
push 0
push edi
call fcn.1004b380
mov ebx, eax
call fcn.1004d690
mov dword [esp], eax
mov eax, dword [eax + 0x8c]
cmp dword [eax + 0x34], 2
jle 0x100750e3
mov edi, dword [esp + 0xb8]
mov eax, dword [eax + 0x3c]
push dword [eax + 8]
call fcn.1005a990
add esp, 4
mov eax, dword [edi]
lea ecx, [esp + 0x54]
push 0xbf800000
push 0
push 0
push dword [eax*4 + 0x10202bb4]
push ecx
call fcn.10049fb0
add esp, 0x14
call fcn.1005ab30
movss xmm2, dword [esp + 0x54]
movsd xmm1, qword [esi + 0xc8]
movd xmm0, dword [esp + 0x58]
movq xmm0, xmm0
xorps xmm3, xmm3
shufps xmm0, xmm3, 0xe2
addps xmm0, xmm1
movaps xmm3, xmm1
subss xmm3, xmm2
movss dword [esp + 0x44], xmm3
movaps xmm4, xmm1
shufps xmm4, xmm1, 0x55
movss dword [esp + 0x48], xmm4
movlps qword [esp + 0x4c], xmm0
movss xmm5, dword [esi + 0xc]
addss xmm5, dword [esi + 0x14]
subss xmm5, xmm1
subss xmm5, xmm2
addss xmm5, xmm1
movss dword [esp + 0x34], xmm3
movss dword [esp + 0x38], xmm4
movss dword [esp + 0x3c], xmm5
shufps xmm0, xmm0, 0x55
movss dword [esp + 0x40], xmm0
movss xmm0, dword [ebp + 0x153c]
sub esp, 8
movss dword [esp + 4], xmm0
lea edi, [esp + 0x3c]
mov dword [esp], edi
call fcn.1004c030
add esp, 8
lea eax, [esp + 0x44]
push eax
mov dword [esp + 8], ebx
push ebx
push edi
call fcn.1004c080
add esp, 0xc
test al, al
je 0x10074c64
push 0
call fcn.1004c590
add esp, 4
mov ecx, dword [esp]
cmp byte [ecx + 0x3c9], 0
movzx ecx, byte [ecx + 0x3c8]
sete bl
mov bh, al
xor bh, 1
jne 0x10074c81
test cl, cl
je 0x10074c81
mov edi, dword [esp + 4]
cmp dword [ebp + 0x1a04], edi
je 0x10074c4f
mov eax, dword [esp]
mov byte [eax + 0xe4], 0
mov dword [eax + 0xe0], 0
add eax, 0xf4
push 0x200
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov eax, dword [esp + 0xb8]
mov dword [eax], 0
push esi
push edi
call fcn.1004bb70
add esp, 8
push esi
call fcn.1004d840
add esp, 4
jmp 0x10074c9b
xor ebx, ebx
mov ecx, dword [esp + 0x9c]
xor ecx, esp
call fcn.10157981
mov eax, ebx
add esp, 0xa0
pop esi
pop edi
pop ebx
pop ebp
ret
test cl, cl
sete cl
or al, cl
mov edi, dword [esp + 4]
jne 0x10074c9b
cmp dword [ebp + 0x1a04], edi
jne 0x10074c9b
call fcn.1004bd00
cmp dword [ebp + 0x1a04], edi
jne 0x10074cc4
mov eax, dword [esp]
cmp byte [eax + 0xe0], 0
je 0x10074e3a
call fcn.1004bd00
mov al, 1
mov edi, 1
jmp 0x10074e45
cmp dword [esp + 0xbc], 0
je 0x10074fb4
or bh, bl
push edi
call fcn.1005ba60
add esp, 4
mov bl, al
or bh, al
jne 0x10074cec
push edi
call fcn.1005bb40
add esp, 4
test bl, bl
je 0x10074fb4
movsd xmm0, qword [0x101b0bc0]
movsd qword [esp + 0x5c], xmm0
lea edi, [esp + 0x5c]
push 0
push edi
call fcn.100515a0
add esp, 8
push dword [ebp + 0x1a7c]
push str.Combo__02d
push 0x10
push edi
call fcn.100486b0
add esp, 0x10
push edi
call fcn.10059760
add esp, 4
test eax, eax
je 0x10074db8
mov ebx, eax
cmp byte [eax + 0x7b], 0
je 0x10074db8
lea eax, [esp + 0x2c]
push ebx
push eax
call fcn.10059820
add esp, 8
lea eax, [esp + 0x1c]
push ebx
push eax
call fcn.1005c6b0
add esp, 8
add ebx, 0xa0
movss xmm0, dword [esp + 0x44]
movss xmm1, dword [esp + 0x50]
movss dword [esp + 0xc], xmm0
movss dword [esp + 0x10], xmm1
lea edx, [esp + 0xc]
lea ecx, [esp + 0x14]
push 1
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x24]
push eax
push ebx
lea eax, [esp + 0x3c]
push eax
push edx
mov ebx, ecx
push ecx
call fcn.1005c700
add esp, 0x1c
xorps xmm0, xmm0
movlps qword [esp + 0xc], xmm0
lea eax, [esp + 0xc]
push eax
push 0
push ebx
call fcn.1005ad70
add esp, 0xc
movss xmm0, dword [ebp + 0x150c]
movss xmm1, dword [ebp + 0x1538]
movss dword [esp + 0x1c], xmm1
movss dword [esp + 0x20], xmm0
lea ebx, [esp + 0x1c]
push ebx
push 1
call fcn.100594b0
add esp, 8
push 0x4000143
push 0
push edi
call fcn.10051620
add esp, 0xc
push 1
call fcn.10059600
add esp, 4
xorps xmm0, xmm0
movlps qword [esp + 0x1c], xmm0
xor eax, eax
mov edi, dword [esp + 0xbc]
cmp dword [edi], 0
sete al
push ebx
push 0
push eax
push str.always_on
call fcn.100750f0
add esp, 0x10
test al, al
je 0x10074efc
mov dword [edi], 0
xor eax, eax
jmp 0x10074f02
mov eax, dword [esp + 0xb8]
mov edi, dword [eax]
xor eax, eax
mov ecx, dword [esp]
cmp byte [ecx + 0xe1], 0
je 0x10074e5d
call fcn.1004bd00
mov al, 1
mov edi, 2
mov ecx, dword [esp]
cmp byte [ecx + 0xe2], 0
je 0x10074e75
call fcn.1004bd00
mov al, 1
mov edi, 4
mov dword [esp + 8], ebp
mov ecx, dword [esp]
cmp byte [ecx + 0xe3], 0
je 0x10074e91
call fcn.1004bd00
mov al, 1
mov edi, 5
mov ecx, dword [esp]
cmp byte [ecx + 0xe4], 0
je 0x10074eab
call fcn.1004bd00
mov bl, 1
mov edi, 6
jmp 0x10074eb5
mov bl, 1
test al, al
je 0x100750ae
mov eax, dword [0x1025afd0]
mov eax, dword [eax + 0x6c]
test eax, eax
js 0x10074ee6
push 1
push eax
call fcn.100587d0
add esp, 8
test al, al
je 0x10074ee6
mov edi, dword [esp + 0xb8]
mov dword [edi], 0
call fcn.1004bd00
mov eax, edi
jmp 0x10074eef
mov eax, dword [esp + 0xb8]
mov dword [eax], edi
mov ebp, dword [esp + 8]
mov edi, dword [esp + 4]
jmp 0x10074fbd
cmp dword [edi], 1
sete al
mov edi, dword [esp + 4]
xorps xmm0, xmm0
movlps qword [esp + 0x1c], xmm0
movzx eax, al
push ebx
push 0
push eax
push str.on_hotkey
call fcn.100750f0
add esp, 0x10
test al, al
je 0x10074f37
mov eax, dword [esp + 0xbc]
mov dword [eax], 1
xor eax, eax
jmp 0x10074f44
mov eax, dword [esp + 0xbc]
cmp dword [eax], 2
sete al
xorps xmm0, xmm0
movlps qword [esp + 0x1c], xmm0
movzx eax, al
push ebx
push 0
push eax
push str.toggle
call fcn.100750f0
add esp, 0x10
test al, al
je 0x10074f75
mov eax, dword [esp + 0xbc]
mov dword [eax], 2
xor eax, eax
jmp 0x10074f82
mov eax, dword [esp + 0xbc]
cmp dword [eax], 3
sete al
xorps xmm0, xmm0
movlps qword [esp + 0x1c], xmm0
movzx eax, al
push ebx
push 0
push eax
push str.off_hotkey
call fcn.100750f0
add esp, 0x10
test al, al
je 0x10074faf
mov eax, dword [esp + 0xbc]
mov dword [eax], 3
call fcn.1005c330
xor ebx, ebx
mov eax, dword [esp + 0xb8]
xorps xmm0, xmm0
movups xmmword [esp + 0x8c], xmm0
movups xmmword [esp + 0x7f], xmm0
movups xmmword [esp + 0x6f], xmm0
movups xmmword [esp + 0x5f], xmm0
mov word [esp + 0x5c], 0x2d5b
mov byte [esp + 0x5e], 0x5d
mov eax, dword [eax]
mov ecx, dword [ebp + 0x1a04]
test eax, eax
je 0x10075003
cmp ecx, edi
je 0x10075007
lea ecx, [esp + 0x5c]
push dword [eax*4 + 0x10202bb4]
push 0x40
push ecx
jmp 0x10075013
cmp ecx, edi
jne 0x1007501c
lea eax, [esp + 0x5c]
push 0x101f05fa
push 0x40
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
add esp, 0xc
mov eax, dword [esp]
mov eax, dword [eax + 0x8c]
cmp dword [eax + 0x34], 2
jle 0x100750e3
mov eax, dword [eax + 0x3c]
push dword [eax + 8]
call fcn.1005a990
add esp, 4
mov esi, dword [esi + 0x274]
xor eax, eax
cmp dword [ebp + 0x1a04], edi
sete al
movss xmm0, dword [eax*4 + 0x101b0bd0]
movss xmm1, dword [eax*4 + 0x101b0bd8]
movss xmm2, dword [ebp + 0x1500]
movss dword [esp + 0x1c], xmm0
movss dword [esp + 0x20], xmm1
movss dword [esp + 0x24], xmm1
movss dword [esp + 0x28], xmm2
lea eax, [esp + 0x1c]
push eax
call fcn.10048e20
add esp, 4
lea edx, [esp + 0x5c]
mov ecx, esi
push 0
push edx
push eax
lea eax, [esp + 0x50]
push eax
call fcn.10062eb0
call fcn.1005ab30
and bl, 1
jmp 0x10074c66
mov ebp, 0xffffff62
xor ebx, ebx
jmp 0x100750c7
inc ebp
je 0x10074eb5
mov eax, dword [esp]
cmp byte [eax + ebp + 0x19a], 0
je 0x100750c0
lea edi, [ebp + 0xa6]
call fcn.1004bd00
mov bl, 1
jmp 0x100750c0
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3