Function at 0x489e10
Capabilities:
Log keystrokes

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
push 0xffffffffffffffff
push 0x607305
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xc8
mov eax, dword [0x7f206c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x4c], edi
mov ecx, dword [ebx + 8]
mov esi, dword [ebx + 0x10]
mov edx, dword [ebx + 0x14]
mov dword [ebp - 0x5c], ecx
mov ecx, dword [ebx + 0xc]
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x44], edx
cmp ecx, 0x100
ja 0x48a28e
je case.0x48a2b6.260
add ecx, 0xfffffffa
cmp ecx, 0xa1
ja case.default.0x48abab
movzx eax, byte [ecx + 0x48aca8]
jmp dword [eax*4 + 0x48ac48]
mov eax, dword [edi + 8]
test al, 4
je 0x489ec9
or eax, 0xffffffff
jmp 0x489f0a
mov ecx, edi
call fcn.00486b70
xor eax, eax
jmp 0x489f0a
mov ecx, edi
call fcn.00486b70
mov eax, dword [edi + 8]
shr eax, 3
test al, 1
jne 0x489ef9
xor eax, eax
jmp 0x489f0a
mov eax, dword [edi + 8]
shr eax, 3
test al, 1
jne case.default.0x48abab
mov eax, 1
jmp 0x489f0a
push edx
mov ecx, edi
call fcn.00488f90
jmp 0x489f0a
mov eax, dword [edx + 0x18]
and eax, 3
cmp al, 3
jne 0x489f2a
push 0x64
lea ecx, [edi + 0x60]
call fcn.00533320
mov edi, dword [ebp - 0x44]
push edi
push esi
push dword [ebx + 0xc]
push dword [ebp - 0x5c]
call dword [sym.imp.USER32.dll_DefWindowProcW]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004a7e5e
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0x10
mov ecx, edi
call fcn.00489380
jmp 0x48a7cb
call fcn.00485450
mov ecx, edi
call fcn.0058cf60
jmp 0x489ef9
cmp byte [edi + 0x93], 0
je 0x489f5a
mov byte [edi + 0x93], 0
call dword [sym.imp.USER32.dll_DestroyCaret]
mov ecx, dword [edi + 4]
mov edx, dword [0x800f94]
cmp edx, ecx
je 0x489f7f
mov eax, edx
test eax, eax
je 0x489f7b
nop dword [eax]
mov eax, dword [eax + 0x18]
cmp eax, ecx
je 0x489f7f
test eax, eax
jne 0x489f70
xor al, al
jmp 0x489f81
mov al, 1
test al, al
je 0x48a066
lea ecx, [ebp - 0x6c]
call fcn.00494d70
mov edx, dword [edi + 0x44]
mov ecx, dword [eax]
mov dword [edi + 0x44], ecx
mov dword [eax], edx
mov ecx, dword [ebp - 0x6c]
test ecx, ecx
je 0x489fb9
lea eax, [ecx + 4]
or edx, 0xffffffff
lock xadd dword [eax], edx
lea eax, [edx - 1]
test eax, eax
jne 0x489fb9
mov eax, dword [ecx]
push 1
call dword [eax]
mov eax, dword [edi + 0x44]
test eax, eax
je 0x48a066
cmp dword [eax + 8], 0
je 0x48a066
mov eax, dword [0x800f98]
mov dword [0x800f94], 0
mov dword [ebp - 0x4c], eax
test eax, eax
jne 0x48a011
push 0xe8
call fcn.004a7e6f
add esp, 4
mov dword [ebp - 0x54], eax
mov ecx, eax
mov dword [ebp - 4], 2
call fcn.005e6ad0
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x4c], eax
mov dword [0x800f98], eax
mov eax, dword [eax + 0x14]
lea ecx, [ebp - 0x54]
push 5
push 5
push 1
add eax, 0xc
mov dword [ebp - 0x54], 0
push ecx
push eax
call fcn.0040f9c0
add esp, 0x14
test eax, eax
je 0x48a051
mov ecx, dword [ebp - 0x4c]
mov ecx, dword [ecx + 0x14]
call fcn.00533680
test al, al
jne 0x48a051
mov eax, dword [ebp - 0x4c]
xor ecx, ecx
mov eax, dword [eax + 0x14]
add eax, 0xc
xchg dword [eax], ecx
mov ecx, dword [edi + 0x44]
test ecx, ecx
je 0x48a05d
mov ecx, dword [ecx + 8]
jmp 0x48a05f
xor ecx, ecx
push 0
call fcn.005e99d0
call fcn.005ed440
test eax, eax
je 0x489ef9
mov ecx, eax
call fcn.005ef5c0
test eax, eax
je 0x489ef9
test byte [eax + 8], 2
je 0x489ef9
mov ecx, edi
call fcn.0048af10
jmp 0x489ef9
test esi, esi
je 0x48a0a6
call fcn.004ff8a0
jmp 0x48a15a
call fcn.005f3580
mov esi, eax
cmp byte [esi + 0x98], 0
lea edi, [esi + 0x98]
jne 0x48a15a
mov dword [ebp - 0xb0], edi
mov byte [ebp - 0xac], 0
mov byte [edi], 1
mov dword [ebp - 4], 3
mov eax, dword [esi + 0x84]
mov dword [ebp - 0x54], eax
test eax, eax
je 0x48a157
push 0
push 0x7f5fb8
push 0x7f4060
push 0
push eax
mov dword [esi + 0x84], 0
call fcn.004bf54d
add esp, 0x14
test eax, eax
je 0x48a112
push 1
mov ecx, eax
call fcn.005f2210
movups xmm1, xmmword [esi + 0x88]
mov ecx, dword [ebp - 0x54]
movaps xmm0, xmm1
psrldq xmm0, 0xc
movd eax, xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
push eax
movd eax, xmm0
movaps xmm0, xmm1
psrldq xmm0, 4
push eax
movd eax, xmm0
push eax
movd eax, xmm1
push eax
call fcn.005fb170
mov dword [esi + 0x84], 0
mov byte [edi], 0
mov ecx, dword [0x801144]
test ecx, ecx
je 0x48a16b
push 0xa
call fcn.00533320
mov dword [0x801178], 0xffffffff
xor eax, eax
jmp 0x489f0a
movzx eax, si
cmp eax, 1
je 0x48a18d
cmp eax, 2
jne case.default.0x48abab
push esi
mov ecx, edi
call fcn.00489790
xor eax, eax
jmp 0x489f0a
test esi, esi
jne case.default.0x48abab
cmp byte [0x7f2ca4], 0
mov edi, edx
jne 0x489efc
mov esi, 1
jmp 0x489efc
test esi, esi
je case.default.0x48abab
mov ecx, dword [edi + 4]
push 1
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov ecx, dword [edi + 4]
call fcn.005e9b90
jmp 0x489ef9
mov ecx, dword [edi + 4]
call fcn.005ed590
test al, al
jne case.0x489e93.136
mov ecx, dword [edi + 4]
mov eax, dword [ecx]
call dword [eax + 0x38]
xor eax, eax
jmp 0x489f0a
mov ecx, dword [0x800f78]
test ecx, ecx
je 0x489ed4
mov eax, dword [ecx]
call dword [eax + 0x1c]
call fcn.005321d0
mov ecx, dword [eax + 4]
xor eax, eax
test ecx, ecx
setne al
jmp 0x489f0a
push 0
push 0
push dword [ebp - 0x5c]
call dword [sym.imp.USER32.dll_InvalidateRect]
mov ecx, edi
call fcn.004899a0
jmp 0x489ef9
mov eax, 4
jmp 0x489f0a
cmp edx, 0xffffffe7
jne case.default.0x48abab
mov ecx, dword [edi + 4]
call fcn.005e8970
test eax, eax
je 0x489ef9
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x58], 0
push ecx
push 0xffffffffffffffe7
mov edx, esi
mov ecx, eax
call fcn.00584d70
add esp, 8
test al, al
je 0x489ef9
mov eax, dword [ebp - 0x58]
mov byte [edi + 0xe0], 1
jmp 0x489f0a
cmp ecx, 0x200
ja 0x48a78c
je 0x48a768
add ecx, 0xfffffeff
cmp ecx, 0x1f
ja case.default.0x48abab
movzx eax, byte [ecx + 0x48ad78]
jmp dword [eax*4 + 0x48ad4c]
push edx
mov ecx, edi
call fcn.00487be0
jmp 0x48a7cb
push esi
mov ecx, edi
call fcn.00488810
test al, al
jne case.0x489e93.136
push dword [edi + 0x70]
call dword [sym.imp.USER32.dll_GetParent]
mov edi, dword [ebp - 0x44]
test eax, eax
je 0x489efc
push edi
push esi
push dword [ebx + 0xc]
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x489efc
push esi
mov ecx, edi
call fcn.00488710
test al, al
jne case.0x489e93.136
push dword [ebp - 0x44]
mov ecx, edi
push esi
push dword [ebx + 0xc]
call fcn.00488a50
jmp 0x489ef9
mov dword [ebp - 0x4c], esi
call fcn.00485450
mov eax, dword [ebp - 0x44]
sar eax, 0x10
movzx ecx, al
lea eax, [esi - 0x30]
mov dword [ebp - 0x64], esi
cmp eax, 9
ja 0x48a35f
lea eax, [ecx - 0x47]
cmp eax, 0xb
ja case.0x48a34d.74
movzx eax, byte [eax + 0x48ada0]
jmp dword [eax*4 + 0x48ad98]
lea eax, [esi + 0x10030]
mov dword [ebp - 0x4c], eax
jmp case.0x48a34d.74
mov esi, dword [sym.imp.USER32.dll_MapVirtualKeyW]
push 1
push ecx
call esi
push 2
push eax
call esi
mov esi, dword [ebp - 0x4c]
movzx eax, ax
test eax, eax
cmovne esi, eax
mov dword [ebp - 0x4c], esi
mov esi, dword [ebp - 0x58]
cmp esi, 0x20
jae case.0x48a34d.74
test byte [0x801140], 6
mov eax, esi
mov ecx, 0
cmovne eax, ecx
mov dword [ebp - 0x64], eax
mov eax, dword [0x801140]
mov ecx, dword [ebp - 0x4c]
and eax, 0xffffff8f
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x94], eax
lea eax, [ebp - 0x9c]
mov dword [ebp - 0x9c], ecx
mov ecx, edi
push eax
call fcn.0058d6f0
test al, al
je 0x48a30f
xor eax, eax
jmp 0x489f0a
mov eax, 0x10000
jmp 0x489f0a
mov eax, dword [edi + 8]
shr eax, 3
test al, 1
jne case.default.0x48abab
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x40]
call eax
test al, al
je 0x48a41f
push 0
push 0xf120
push esi
mov esi, dword [sym.imp.USER32.dll_EnableMenuItem]
call esi
push 1
push 0xf010
push dword [ebp - 0x58]
call esi
mov esi, dword [ebp - 0x58]
jmp 0x489ef9
mov eax, dword [edi]
cmp eax, vtable.juce::HWNDComponentPeer.1.0
jne 0x48ac29
lea eax, [ebp - 0x40]
mov dword [ebp - 0x40], 0x2c
push eax
push dword [edi + 0x70]
call dword [sym.imp.USER32.dll_GetWindowPlacement]
cmp dword [ebp - 0x38], 2
sete al
test al, al
jne 0x489ef9
push 1
push 0xf030
push esi
call dword [sym.imp.USER32.dll_EnableMenuItem]
jmp 0x489ef9
mov eax, esi
and eax, 0xfff0
cmp eax, 0xf060
ja 0x48a505
je 0x48a4d2
sub eax, 0xf020
je 0x48a4a5
sub eax, 0x10
jne case.default.0x48abab
mov ecx, edi
call fcn.0048af10
test al, al
jne case.0x489e93.136
mov eax, dword [edi]
mov ecx, edi
push 1
call dword [eax + 0x3c]
xor eax, eax
jmp 0x489f0a
mov ecx, edi
call fcn.0048af10
test al, al
jne case.0x489e93.136
mov eax, dword [edi + 8]
shr eax, 3
test al, 1
jne 0x489ef9
mov eax, dword [edi]
mov ecx, edi
push 1
call dword [eax + 0x34]
xor eax, eax
jmp 0x489f0a
mov ecx, edi
call fcn.0048af10
test al, al
jne case.0x489e93.136
mov eax, dword [edi + 8]
shr eax, 3
test al, 1
je 0x489ef9
push 0
push 0
push 0x10
push dword [ebp - 0x5c]
call dword [sym.imp.USER32.dll_PostMessageW]
xor eax, eax
jmp 0x489f0a
sub eax, 0xf100
je 0x48a585
sub eax, 0x20
jne case.default.0x48abab
mov ecx, edi
call fcn.0048af10
test al, al
jne case.0x489e93.136
mov eax, dword [edi + 8]
mov ecx, edi
shr eax, 3
test al, 1
mov eax, dword [edi]
je 0x48a54f
mov eax, dword [eax + 0x40]
call eax
test al, al
je 0x489ef9
mov eax, dword [edi]
mov ecx, edi
push 0
call dword [eax + 0x3c]
xor eax, eax
jmp 0x489f0a
mov eax, dword [eax + 0x38]
call eax
test al, al
mov ecx, edi
mov eax, dword [edi]
je 0x48a568
push 0
call dword [eax + 0x34]
xor eax, eax
jmp 0x489f0a
mov eax, dword [eax + 0x40]
call eax
test al, al
je case.0x489e93.136
mov eax, dword [edi]
mov ecx, edi
push 0
call dword [eax + 0x3c]
xor eax, eax
jmp 0x489f0a
test edx, 0xffff0000
jle case.0x489e93.136
mov eax, dword [edi + 8]
shr eax, 3
test al, 1
je case.default.0x48abab
call dword [sym.imp.USER32.dll_GetCapture]
cmp dword [ebp - 0x5c], eax
jne 0x489ef9
call dword [sym.imp.USER32.dll_ReleaseCapture]
jmp 0x489ef9
mov ecx, edi
mov dword [edi + 0xf8], 0xffffffff
mov dword [edi + 0xfc], 0xffffffff
mov byte [edi + 0x100], 0
call fcn.0058d400
test eax, eax
je case.0x489e93.136
mov ecx, dword [eax]
mov dword [ebp - 0x64], 0x7a135c
mov edx, dword [ecx + 0x18]
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 4
push ecx
mov ecx, eax
call edx
mov ecx, dword [ebp - 0x64]
add ecx, 0xfffffff8
cmp ecx, 0x7a1354
je case.0x489e93.136
or eax, 0xffffffff
lock xadd dword [ecx], eax
test eax, eax
jne case.0x489e93.136
push ecx
call fcn.004a8172
add esp, 4
xor eax, eax
jmp 0x489f0a
cmp byte [edi + 0x100], 0
lea eax, [edi + 0xf8]
mov dword [ebp - 0x4c], eax
je 0x48a73b
mov ecx, edi
call fcn.0058d400
mov edi, eax
test edi, edi
je 0x48a710
mov ecx, dword [edi]
push dword [ebp - 0x4c]
mov edx, dword [ecx + 0xc]
mov ecx, edi
call edx
mov ecx, dword [edi]
mov dword [ebp - 0x74], 0x7a135c
mov eax, dword [ecx + 0x18]
lea ecx, [ebp - 0x74]
mov dword [ebp - 4], 5
push ecx
mov ecx, edi
call eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x74]
add ecx, 0xfffffff8
cmp ecx, 0x7a1354
je 0x48a6a6
or eax, 0xffffffff
lock xadd dword [ecx], eax
test eax, eax
jne 0x48a6a6
push ecx
call fcn.004a8172
add esp, 4
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax]
mov dword [eax + 4], ecx
mov eax, dword [edi]
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x84], ecx
lea ecx, [ebp - 0x88]
push ecx
mov ecx, edi
call dword [eax + 0xc]
xorps xmm0, xmm0
mov dword [ebp - 0x78], 0
movq qword [ebp - 0x80], xmm0
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 4], 6
lea ecx, [ebp - 0x80]
mov eax, dword [edi]
push ecx
mov ecx, edi
call dword [eax + 0x10]
push dword [ebp - 0x80]
mov dword [ebp - 0x78], 0
call fcn.004c2bdc
add esp, 4
mov edi, dword [ebp - 0x5c]
push edi
call dword [sym.imp.IMM32.dll_ImmGetContext]
mov dword [ebp - 0x54], eax
test eax, eax
je 0x48a738
push 0
push 0
push 0x11
push eax
call dword [sym.imp.IMM32.dll_ImmNotifyIME]
push dword [ebp - 0x54]
push edi
call dword [sym.imp.IMM32.dll_ImmReleaseContext]
mov eax, dword [ebp - 0x4c]
mov dword [eax], 0xffffffff
mov dword [eax + 4], 0xffffffff
mov byte [eax + 8], 0
jmp 0x489ef9
push edx
push dword [ebp - 0x5c]
lea ecx, [edi + 0xf8]
push edi
call fcn.0048b010
xor eax, eax
jmp 0x489f0a
push edx
lea eax, [ebp - 0xb8]
mov ecx, edi
push eax
call fcn.00489c70
mov ecx, edi
push dword [eax + 4]
push dword [eax]
push 0
call fcn.00487690
xor eax, eax
jmp 0x489f0a
cmp ecx, 0x319
ja case.default.0x48abab
je 0x48ab95
add ecx, 0xfffffdff
cmp ecx, 0xdf
ja case.default.0x48abab
movzx eax, byte [ecx + 0x48adf4]
jmp dword [eax*4 + 0x48adac]
push 0
push 0
push edx
push esi
mov ecx, edi
call fcn.00488220
test al, al
je 0x489ef9
xor eax, eax
jmp 0x489f0a
push 0
push 1
jmp 0x48a7c2
push 1
jmp 0x48a7c0
mov byte [edi + 0x92], 0
call fcn.004875f0
test al, al
jne case.0x489e93.136
mov esi, dword [0x801140]
mov dword [ebp - 4], 0
call dword [sym.imp.USER32.dll_GetMessagePos]
movsx edx, ax
shr eax, 0x10
movsx ecx, ax
mov eax, dword [edi]
push ecx
push edx
mov edx, dword [ebp - 0x4c]
lea ecx, [ebp - 0xc0]
mov edi, dword [eax + 0x30]
mov edx, dword [edx + 0x70]
call fcn.005846c0
mov ecx, dword [ebp - 0x4c]
add esp, 8
movd xmm1, dword [eax + 4]
movd xmm0, dword [eax]
lea eax, [ebp - 0x48]
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x5c], xmm1
push dword [ebp - 0x5c]
movss dword [ebp - 0x60], xmm0
push dword [ebp - 0x60]
push eax
call edi
mov dword [ebp - 4], 0xffffffff
xorps xmm0, xmm0
push dword [ebp - 0x44]
push dword [ebp - 0x48]
push 0
sub esp, 0xc
mov eax, esp
movq qword [eax], xmm0
mov dword [eax + 8], 0
call fcn.00584020
push edx
push eax
push ecx
mov ecx, dword [ebp - 0x4c]
xorps xmm3, xmm3
mov dword [esp], 0
push esi
push 0
call fcn.0058dc50
xor eax, eax
jmp 0x489f0a
push edx
lea eax, [ebp - 0xc8]
mov ecx, edi
push eax
call fcn.00489c70
cmp dword [0x80125c], 0
movss xmm0, dword [eax]
movss dword [ebp - 0x70], xmm0
movss xmm0, dword [eax + 4]
movss dword [ebp - 0x6c], xmm0
je 0x48a8dc
call dword [sym.imp.USER32.dll_GetMessageExtraInfo]
and eax, 0xffffff80
cmp eax, 0xff515780
je case.0x489e93.136
call fcn.004875f0
test al, al
jne case.0x489e93.136
mov eax, dword [edi + 0x70]
mov dword [ebp - 0x54], eax
call dword [sym.imp.USER32.dll_GetCapture]
mov ecx, dword [ebp - 0x54]
cmp eax, ecx
je 0x48a903
push ecx
call dword [sym.imp.USER32.dll_SetCapture]
push dword [ebp - 0x6c]
mov ecx, edi
push dword [ebp - 0x70]
push 1
call fcn.00487690
mov ecx, edi
call fcn.0058de60
test al, al
je case.0x489e93.136
mov ecx, esi
call fcn.004854d0
push dword [ebp - 0x6c]
xorps xmm0, xmm0
mov byte [edi + 0x91], 1
push dword [ebp - 0x70]
mov esi, dword [0x801140]
push 0
sub esp, 0xc
mov eax, esp
movq qword [eax], xmm0
mov dword [eax + 8], 0
call fcn.00584020
push edx
push eax
push ecx
mov dword [esp], 0
xorps xmm3, xmm3
push esi
push 0
mov ecx, edi
call fcn.0058dc50
xor eax, eax
jmp 0x489f0a
push edx
lea eax, [ebp - 0xd0]
mov ecx, edi
push eax
call fcn.00489c70
mov ecx, edi
push dword [eax + 4]
push dword [eax]
push esi
call fcn.004878d0
xor eax, eax
jmp 0x489f0a
push 1
push esi
mov ecx, edi
call fcn.00487a50
xor eax, eax
jmp 0x489f0a
push 0
push esi
mov ecx, edi
call fcn.00487a50
xor eax, eax
jmp 0x489f0a
cmp byte [edi + 0x94], 0
je 0x48a9d4
mov ecx, dword [edi + 0x1c]
test ecx, ecx
je 0x48a9cd
mov eax, dword [ecx]
call dword [eax + 0xc]
mov byte [edi + 0x94], 0
cmp byte [edi + 0x91], 0
je case.0x489e93.136
mov dword [ebp - 4], 1
call dword [sym.imp.USER32.dll_GetMessagePos]
movsx edx, ax
shr eax, 0x10
movsx ecx, ax
mov eax, dword [edi]
push ecx
push edx
mov edx, dword [edi + 0x70]
lea ecx, [ebp - 0xd8]
mov esi, dword [eax + 0x30]
call fcn.005846c0
add esp, 8
mov ecx, edi
movd xmm1, dword [eax + 4]
movd xmm0, dword [eax]
lea eax, [ebp - 0x90]
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x4c], xmm1
push dword [ebp - 0x4c]
movss dword [ebp - 0x50], xmm0
push dword [ebp - 0x50]
push eax
call esi
mov dword [ebp - 4], 0xffffffff
mov ecx, edi
push dword [ebp - 0x8c]
push dword [ebp - 0x90]
push 0
call fcn.004878d0
xor eax, eax
jmp 0x489f0a
mov eax, dword [edi + 8]
shr eax, 3
test al, 1
je case.0x489e93.136
mov edi, edx
jmp 0x489efc
cmp dword [0x801270], 0
je case.default.0x48abab
push edx
push esi
mov ecx, edi
call fcn.00487e00
jmp 0x489f0a
push esi
push edx
mov ecx, edi
call fcn.00488b60
jmp 0x489f0a
movups xmm0, xmmword [edx]
sub esp, 0x10
shr esi, 0x10
mov eax, esp
mov ecx, edi
push esi
movups xmmword [eax], xmm0
call fcn.004895d0
jmp 0x489f0a
mov eax, dword [edi + 4]
mov al, byte [eax + 0x81]
shr al, 1
not al
test al, 1
jne case.default.0x48abab
mov eax, 3
jmp 0x489f0a
mov ecx, dword [0x800f78]
test ecx, ecx
je case.default.0x48abab
lea eax, [esi - 2]
cmp eax, 0x10
ja case.default.0x48abab
movzx eax, byte [eax + 0x48aee0]
jmp dword [eax*4 + 0x48aed4]
mov eax, dword [ecx]
cmp eax, vtable.juce::CoolInstallerApplication.1.0
jne 0x48ac35
jmp case.default.0x48abab
mov eax, dword [ecx]
cmp eax, vtable.juce::CoolInstallerApplication.1.0
jne 0x48ac3d
jmp case.default.0x48abab
mov ecx, edi
call fcn.0048af10
test al, al
jne 0x489ef9
cmp esi, 4
je 0x48ab30
lea eax, [esi - 0xa]
cmp eax, 7
ja 0x489ef9
cmp dword [edi + 0x1c], 0
je 0x48ab51
mov eax, dword [edi + 8]
and eax, 0x18
cmp al, 0x18
jne 0x48ab51
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x44]
call eax
test al, al
jne 0x48ab51
mov al, 1
jmp 0x48ab53
xor al, al
test al, al
je 0x489ef9
mov ecx, dword [edi + 0x1c]
mov byte [edi + 0x94], 1
mov eax, dword [ecx]
call dword [eax + 8]
jmp 0x489ef9
cmp esi, 1
lea ecx, [edi + 0xf8]
sete al
movzx eax, al
push eax
push dword [ebp - 0x5c]
call fcn.0048afc0
mov edi, dword [ebp - 0x44]
and edi, 0x7fffffff
jmp 0x489efc
mov eax, edx
shr eax, 0x10
and eax, 0xfff
add eax, 0xfffffff5
cmp eax, 3
ja case.default.0x48abab
jmp dword [eax*4 + 0x48aef4]
mov dword [ebp - 0x4c], 0x30000
jmp 0x48abd4
mov dword [ebp - 0x4c], 0x30001
jmp 0x48abd4
mov dword [ebp - 0x4c], 0x30002
jmp 0x48abd4
mov dword [ebp - 0x4c], 0x30003
call fcn.00485450
call dword [sym.imp.USER32.dll_GetActiveWindow]
cmp dword [edi + 0x70], eax
jne 0x489ef9
mov eax, dword [0x801140]
mov ecx, dword [ebp - 0x4c]
and eax, 0xffffff8f
mov dword [ebp - 0xa4], eax
lea eax, [ebp - 0xa8]
mov dword [ebp - 0xa8], ecx
mov ecx, edi
push eax
mov dword [ebp - 0xa0], 0
call fcn.0058d6f0
test al, al
je 0x489ef9
mov eax, 1
jmp 0x489f0a
mov eax, dword [eax + 0x38]
mov ecx, edi
call eax
jmp 0x48a447
call dword [eax + 0x20]
jmp 0x489ef9
call dword [eax + 0x24]
jmp 0x489ef9