Function at 0x43641c
Capabilities:
Check for time delay via gettickcount

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 0x522b41
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x128
mov eax, dword [0x5640a8]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x124], esi
cmp dword [esi + 8], 0
mov eax, dword [ebx + 0x10]
mov edi, dword [ebx + 0xc]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebx + 0x14]
mov dword [ebp - 0x130], edi
mov dword [ebp - 0x118], eax
je 0x4387d0
nop
cmp dword [esi + 0x5fc], 0
jle 0x435e2e
mov eax, dword [esi + 0x5f8]
mov edx, dword [eax]
mov dword [ebp - 0x12c], edx
test edx, edx
je 0x435e2e
mov eax, dword [esi + 0x5fc]
test eax, eax
jle 0x435d45
dec eax
mov dword [esi + 0x5fc], eax
test eax, eax
jle 0x435d45
mov ecx, dword [esi + 0x5f8]
shl eax, 2
push eax
lea eax, [ecx + 4]
push eax
push ecx
call fcn.004fafb0
mov edx, dword [ebp - 0x12c]
add esp, 0xc
mov eax, dword [edx + 0x88]
test eax, eax
je 0x435d82
cmp dword [eax + 0x2c], 0
je 0x435d82
mov dword [ebp - 0x128], edx
mov ecx, dword [eax + 0x2c]
test ecx, ecx
je 0x435f72
mov eax, dword [ecx]
lea edx, [ebp - 0x128]
push edx
mov eax, dword [eax + 8]
call eax
test al, al
jne 0x435dfa
mov edx, dword [ebp - 0x12c]
cmp dword [esi + 0x5b4], 0
mov dword [ebp - 0x128], 0
jle 0x435dc3
mov edi, dword [ebp - 0x128]
nop dword [eax + eax]
mov eax, dword [esi + 0x5b0]
push edx
mov ecx, dword [eax + edi*4]
mov eax, dword [ecx]
call dword [eax]
mov edx, dword [ebp - 0x12c]
inc edi
cmp edi, dword [esi + 0x5b4]
jl 0x435da0
mov edi, dword [ebp - 0x130]
mov eax, dword [ebp - 0x12c]
mov ecx, dword [eax + 4]
mov dword [eax], vtable.ui::CDuiString.0
add eax, 8
cmp ecx, eax
je 0x435de2
push ecx
call fcn.004fe1ff
add esp, 4
push 0xa0
push dword [ebp - 0x12c]
call fcn.004e22e6
add esp, 8
jmp 0x435cf0
mov esi, dword [ebp - 0x12c]
mov ecx, dword [esi + 4]
lea eax, [esi + 8]
mov dword [esi], vtable.ui::CDuiString.0
cmp ecx, eax
je 0x435e19
push ecx
call fcn.004fe1ff
add esp, 4
push 0xa0
push esi
call fcn.004e22e6
add esp, 8
mov al, 1
jmp 0x4387d2
xor ecx, ecx
mov dword [ebp - 0x12c], ecx
cmp dword [esi + 0x5d8], ecx
jle 0x435e89
nop
mov eax, dword [esi + 0x5d4]
lea edx, [ebp - 0x111]
mov byte [ebp - 0x111], 0
push edx
push dword [ebp - 0x11c]
mov ecx, dword [eax + ecx*4]
push edi
push dword [ebx + 8]
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
cmp byte [ebp - 0x111], 0
jne 0x435f9a
mov ecx, dword [ebp - 0x12c]
inc ecx
mov dword [ebp - 0x12c], ecx
cmp ecx, dword [esi + 0x5d8]
jl 0x435e40
lea ecx, [ebx + 8]
push ecx
lea ecx, [ebp - 0x128]
push ecx
lea ecx, [esi + 0x780]
call fcn.0043ff90
mov eax, dword [esi + 0x784]
cmp dword [ebp - 0x128], eax
je 0x435fa9
lea eax, [ebx + 8]
push eax
lea eax, [ebp - 0x128]
push eax
lea ecx, [esi + 0x780]
call fcn.0043ff90
mov eax, dword [ebp - 0x128]
lea ecx, [esi + 0x780]
cmp eax, dword [ecx + 4]
jne 0x435f50
lea eax, [ebx + 8]
mov dword [ebp - 0x128], eax
mov eax, dword [ecx + 4]
push ecx
lea ecx, [ebp - 0x128]
push ecx
mov eax, dword [eax]
push ecx
mov dword [ebp - 0x12c], eax
push dword [eax + 4]
push eax
call fcn.00442f90
mov ecx, 0x4924923
mov edx, eax
sub ecx, dword [esi + 0x788]
cmp ecx, 1
jae 0x435f1a
push str.list_T__too_long
call fcn.004dec14
inc dword [esi + 0x788]
lea ecx, [esi + 0x780]
mov eax, dword [ebp - 0x12c]
mov dword [eax + 4], edx
mov eax, dword [edx + 4]
mov dword [eax], edx
mov edx, dword [ecx + 4]
mov eax, dword [edx]
push eax
add eax, 8
push eax
lea eax, [ebp - 0xc8]
push eax
call fcn.00441f10
mov eax, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0x11c]
mov dword [ebp - 0x128], ecx
mov ecx, dword [ebx + 8]
mov dword [ebp - 0x120], ecx
mov ecx, dword [eax + 0x34]
mov dword [ebp - 0x12c], edi
test ecx, ecx
jne 0x435f77
call fcn.004debf7
mov eax, dword [ecx]
lea edx, [ebp - 0x128]
push edx
lea edx, [ebp - 0x12c]
push edx
mov eax, dword [eax + 8]
lea edx, [ebp - 0x120]
push edx
call eax
test al, al
je 0x435fa9
movzx eax, al
mov ecx, dword [ebp - 0x118]
mov dword [ecx], eax
mov al, 1
jmp 0x4387d2
mov edx, dword [ebx + 8]
cmp edx, 0x100
ja 0x436e8f
je 0x436e0a
lea eax, [edx - 3]
cmp eax, 0x9f
ja case.default.0x438320
movzx eax, byte [eax + 0x438834]
jmp dword [eax*4 + 0x4387f4]
mov ecx, dword [esi + 0x414]
test ecx, ecx
jne 0x435ff6
push dword [esi + 0x418]
mov ecx, esi
call fcn.0043a320
jmp case.default.0x438320
mov eax, dword [ecx]
push str.Edit
mov eax, dword [eax + 0x10]
call eax
test eax, eax
jne 0x436036
mov ecx, dword [esi + 0x414]
push str.ComboBox
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
call eax
test eax, eax
jne 0x436036
mov ecx, dword [esi + 0x414]
push str.RichEdit
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
call eax
test eax, eax
je case.default.0x438320
mov eax, dword [esi + 0x414]
xorps xmm0, xmm0
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xf4], 0x16
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xec], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi + 0x414]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x19c]
push ecx
push 0
push 0
push str.setfocus
push dword [esi + 0x414]
mov ecx, esi
call fcn.0043b0b0
jmp case.default.0x438320
cmp dword [esi + 0x414], 0
je case.default.0x438320
push 0
mov ecx, esi
call fcn.0043a320
jmp case.default.0x438320
movss xmm0, dword [0x548f5c]
comiss xmm0, dword [esi + 0x4e4]
jae 0x4360e5
comiss xmm0, dword [esi + 0x4e8]
jae 0x4360e5
push 0xfffffffffffffff0
push dword [esi + 8]
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, 0x10000
jne case.default.0x438320
push 2
push dword [esi + 8]
xorps xmm0, xmm0
movups xmmword [ebp - 0x24], xmm0
call dword [sym.imp.USER32.dll_MonitorFromWindow]
lea ecx, [ebp - 0xf8]
mov dword [ebp - 0xd4], 0
xorps xmm0, xmm0
mov dword [ebp - 0xf8], 0x28
push ecx
push eax
movups xmmword [ebp - 0xf4], xmm0
movups xmmword [ebp - 0xe4], xmm0
call dword [sym.imp.USER32.dll_GetMonitorInfoW]
test eax, eax
je 0x436139
movups xmm0, xmmword [ebp - 0xf4]
movups xmmword [ebp - 0x24], xmm0
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
movss xmm4, dword [esi + 0x4e4]
movss xmm0, dword [0x548f5c]
sub edx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x20]
comiss xmm0, xmm4
movss xmm2, dword [esi + 0x4e8]
jb 0x43616b
movd xmm3, edx
cvtdq2ps xmm3, xmm3
jmp 0x436176
mov eax, dword [esi + 0x728]
movss xmm3, dword [eax + 4]
comiss xmm0, xmm2
movaps xmm1, xmm4
mulss xmm1, xmm3
jb 0x43618b
movd xmm5, ecx
cvtdq2ps xmm5, xmm5
jmp 0x436196
mov eax, dword [esi + 0x728]
movss xmm5, dword [eax + 4]
movd xmm0, edx
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jbe case.default.0x438320
movd xmm0, ecx
movaps xmm3, xmm2
cvtdq2ps xmm0, xmm0
mulss xmm3, xmm5
comiss xmm0, xmm3
jbe case.default.0x438320
push 1
movaps xmm1, xmm4
mov ecx, esi
call fcn.00435150
jmp case.default.0x438320
mov eax, dword [esi + 0x4b4]
xorps xmm0, xmm0
movups xmmword [ebp - 0xe4], xmm0
mov dword [ebp - 0xe4], eax
mov eax, dword [esi + 0x4b8]
movups xmmword [ebp - 0xf4], xmm0
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0xe0], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi + 0x420]
mov dword [ebp - 0xe8], eax
test ecx, ecx
je 0x436236
mov dword [ebp - 0xf4], 0xa
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xec], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x19c]
push 0
mov ecx, esi
call fcn.0043a320
push 4
push dword [esi + 8]
call dword [sym.imp.USER32.dll_GetWindow]
test eax, eax
je case.default.0x438320
push eax
call dword [sym.imp.USER32.dll_SetFocus]
jmp case.default.0x438320
mov ecx, dword [ebp - 0x118]
mov al, 1
mov dword [ecx], 1
jmp 0x4387d2
cmp byte [esi + 0x517], 0
je 0x43629d
push 0xffffffffffffffec
push dword [esi + 8]
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, 0x80000
jne 0x43629d
xor eax, 0x80000
push eax
push 0xffffffffffffffec
push dword [esi + 8]
call dword [sym.imp.USER32.dll_SetWindowLongW]
push 0
lea eax, [ebp - 0x34]
xorps xmm0, xmm0
push eax
push dword [esi + 8]
movups xmmword [ebp - 0x34], xmm0
call dword [sym.imp.USER32.dll_GetUpdateRect]
test eax, eax
je 0x435e27
cmp dword [esi + 0x410], 0
je 0x436311
lea eax, [ebp - 0x34]
push eax
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x436311
movd xmm0, dword [ebp - 0x34]
lea eax, [ebp - 0x24]
cvtdq2ps xmm0, xmm0
push eax
mov ecx, esi
movss dword [ebp - 0x24], xmm0
movd xmm0, dword [ebp - 0x30]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x20], xmm0
movd xmm0, dword [ebp - 0x2c]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1c], xmm0
movd xmm0, dword [ebp - 0x28]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x18], xmm0
call fcn.00438aa0
push 0x40
lea eax, [ebp - 0x110]
push 0
push eax
call fcn.004fb530
add esp, 0xc
lea eax, [ebp - 0x110]
push eax
push dword [esi + 8]
call dword [sym.imp.USER32.dll_BeginPaint]
lea eax, [ebp - 0x110]
push eax
push dword [esi + 8]
call dword [sym.imp.USER32.dll_EndPaint]
mov al, 1
jmp 0x4387d2
mov ecx, dword [esi + 0x4bc]
mov eax, dword [ebp - 0x11c]
test ecx, ecx
jle 0x43635e
mov dword [eax + 0x18], ecx
mov ecx, dword [esi + 0x4c0]
test ecx, ecx
jle 0x43636b
mov dword [eax + 0x1c], ecx
mov ecx, dword [esi + 0x4c4]
test ecx, ecx
jle 0x436378
mov dword [eax + 0x20], ecx
mov ecx, dword [esi + 0x4c8]
test ecx, ecx
jle case.default.0x438320
mov dword [eax + 0x24], ecx
jmp case.default.0x438320
mov eax, dword [esi + 0x5a8]
mov dword [ebp - 0x124], eax
test eax, eax
je case.default.0x438320
xorps xmm0, xmm0
mov dword [ebp - 0xf4], 0x17
movups xmmword [ebp - 0xf0], xmm0
movups xmmword [ebp - 0xe0], xmm0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi + 0x414]
mov dword [ebp - 0xe8], eax
test ecx, ecx
je 0x4363e2
mov eax, dword [ecx]
lea edx, [ebp - 0xf4]
push edx
call dword [eax + 0x19c]
xor edi, edi
cmp dword [ebp - 0x124], edi
jle case.default.0x438320
mov eax, dword [esi + 0x5a4]
lea edx, [ebp - 0xf4]
push edx
mov ecx, dword [eax + edi*4]
mov dword [ebp - 0xec], ecx
mov eax, dword [ecx]
call dword [eax + 0x19c]
inc edi
cmp edi, dword [ebp - 0x124]
jl 0x4363f0
jmp case.default.0x438320
lea eax, [ebp - 0xd0]
xorps xmm0, xmm0
push eax
push dword [esi + 8]
movups xmmword [ebp - 0xd0], xmm0
call dword [sym.imp.USER32.dll_GetClientRect]
movups xmm1, xmmword [ebp - 0xd0]
movaps xmm0, xmm1
movd eax, xmm1
psrldq xmm0, 8
movd ecx, xmm0
movaps xmm0, xmm1
movups xmmword [esi + 0x6e8], xmm1
sub ecx, eax
psrldq xmm0, 0xc
psrldq xmm1, 4
movd eax, xmm1
movd edi, xmm0
mov dword [ebp - 0x12c], ecx
sub edi, eax
lea eax, [ebp - 0xd0]
push eax
mov dword [ebp - 0x118], edi
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x435e27
cmp dword [esi + 0x410], eax
je 0x435e27
push dword [esi + 8]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x435e27
mov ecx, dword [esi + 0x410]
mov eax, dword [ecx]
mov eax, dword [eax + 0x4c]
cmp eax, method.ui::Control.virtual_76
jne 0x4364c5
add ecx, 0x2a8
jmp 0x4364c9
call eax
mov ecx, eax
movd xmm2, dword [ebp - 0x12c]
movss xmm0, dword [ecx + 8]
subss xmm0, dword [ecx]
movss xmm1, dword [ecx + 0xc]
cvtdq2ps xmm2, xmm2
ucomiss xmm0, xmm2
lahf
test ah, 0x44
jp 0x436504
subss xmm1, dword [ecx + 4]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jnp 0x435e27
mov eax, dword [esi + 0x5a8]
mov ecx, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x124], eax
test eax, eax
je 0x4365a3
xorps xmm0, xmm0
mov dword [ebp - 0xf4], 0x18
movups xmmword [ebp - 0xf0], xmm0
movups xmmword [ebp - 0xe0], xmm0
call ecx
mov ecx, dword [esi + 0x414]
mov dword [ebp - 0xe8], eax
test ecx, ecx
je 0x43655a
mov eax, dword [ecx]
lea edx, [ebp - 0xf4]
push edx
call dword [eax + 0x19c]
xor edi, edi
cmp dword [ebp - 0x124], edi
jle 0x436597
nop dword [eax]
nop dword [eax + eax]
mov eax, dword [esi + 0x5a4]
lea edx, [ebp - 0xf4]
push edx
mov ecx, dword [eax + edi*4]
mov dword [ebp - 0xec], ecx
mov eax, dword [ecx]
call dword [eax + 0x19c]
inc edi
cmp edi, dword [ebp - 0x124]
jl 0x436570
mov edi, dword [ebp - 0x118]
mov ecx, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov eax, dword [esi + 0x414]
test eax, eax
je 0x4365eb
xorps xmm0, xmm0
mov dword [ebp - 0xf4], 0x18
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xec], eax
movups xmmword [ebp - 0xe0], xmm0
call ecx
mov ecx, dword [esi + 0x414]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x19c]
mov ecx, dword [esi + 0x6e0]
test ecx, ecx
je 0x43662c
mov edx, dword [ebp - 0x12c]
sub esp, 0x10
mov eax, dword [ecx]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
movss dword [esp + 0xc], xmm0
movd xmm0, edx
cvtdq2ps xmm0, xmm0
movss dword [esp + 8], xmm0
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [eax + 0xc]
movups xmm1, xmmword [ebp - 0xd0]
sub esp, 0x10
mov byte [esi + 0x511], 0
mov ecx, esp
movd eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ecx], xmm0
movaps xmm0, xmm1
psrldq xmm0, 4
movd eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ecx + 4], xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
movd eax, xmm0
psrldq xmm1, 0xc
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movd eax, xmm1
movss dword [ecx + 8], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ecx + 0xc], xmm0
mov ecx, dword [esi + 0x410]
mov eax, dword [ecx]
call dword [eax + 0x50]
cmp byte [esi + 0x510], 0
mov ecx, esi
je 0x4366ef
mov byte [esi + 0x510], 0
call fcn.00435a60
test eax, eax
je 0x4366d1
mov eax, dword [esi]
test eax, eax
je 0x4366d1
push 0
push 0
push 0x8002
push dword [eax + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
push ecx
push 0
push 0
push 0x53db74
push dword [esi + 0x410]
mov ecx, esi
call fcn.0043b0b0
mov al, 1
jmp 0x4387d2
movd xmm0, dword [ebp - 0xd0]
lea eax, [ebp - 0x24]
cvtdq2ps xmm0, xmm0
push eax
movss dword [ebp - 0x24], xmm0
movd xmm0, dword [ebp - 0xcc]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x20], xmm0
movd xmm0, dword [ebp - 0xc8]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1c], xmm0
movd xmm0, dword [ebp - 0xc4]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x18], xmm0
call fcn.00438aa0
mov ecx, esi
call fcn.00439920
mov al, 1
jmp 0x4387d2
cmp byte [esi + 0x513], 0
jne 0x4367a6
mov eax, dword [esi + 8]
xorps xmm0, xmm0
movq qword [ebp - 0x30], xmm0
mov dword [ebp - 0x2c], eax
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x34], 0x10
mov dword [ebp - 0x30], 0x13
test eax, eax
jne 0x436782
mov dword [ebp - 0x28], 0x190
jmp 0x436795
push 0
push 3
push 0x415
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x34]
push eax
call dword [sym.imp.COMCTL32.dll__TrackMouseEvent]
mov byte [esi + 0x513], 1
mov ecx, dword [ebp - 0x11c]
movsx eax, cx
mov dword [ebp - 0xc8], eax
shr ecx, 0x10
movsx eax, cx
mov dword [ebp - 0xc4], eax
lea eax, [ebp - 0xc8]
push eax
push dword [esi + 8]
call dword [sym.imp.USER32.dll_ScreenToClient]
mov ecx, dword [ebp - 0xc8]
mov eax, dword [ebp - 0xc4]
cmp ecx, dword [esi + 0x4b4]
jne 0x4367f1
cmp eax, dword [esi + 0x4b8]
je case.default.0x438320
xorps xmm0, xmm0
mov dword [ebp - 0xd4], 0
movups xmmword [ebp - 0xe4], xmm0
mov dword [esi + 0x4b4], ecx
movups xmmword [ebp - 0xf4], xmm0
mov dword [esi + 0x4b8], eax
mov dword [ebp - 0xe4], ecx
mov dword [ebp - 0xe0], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi + 0x41c]
mov dword [ebp - 0xe8], eax
test ecx, ecx
je 0x43685e
mov dword [ebp - 0xf4], 9
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xec], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x19c]
jmp case.default.0x438320
push dword [ebp - 0xc4]
push dword [ebp - 0xc8]
mov ecx, esi
call fcn.0043cb70
mov edi, eax
test edi, edi
je 0x436897
mov ecx, dword [edi]
mov eax, dword [ecx + 0x1c]
cmp eax, method.ui::Control.virtual_28
jne 0x43688b
mov eax, dword [edi + 0x188]
jmp 0x43688f
mov ecx, edi
call eax
cmp eax, esi
jne case.default.0x438320
mov eax, dword [esi + 0x420]
cmp edi, eax
je 0x43696f
test edi, edi
je 0x436956
push edi
push eax
mov ecx, esi
mov byte [ebp - 0x111], 1
call fcn.0043d350
test al, al
jne 0x4368db
mov byte [ebp - 0x111], al
mov ecx, esi
lea eax, [ebp - 0xf4]
push eax
push dword [esi + 0x420]
call fcn.0043dce0
push dword [esi + 0x420]
mov ecx, esi
push edi
call fcn.0043d350
mov ecx, esi
test al, al
je 0x436906
push 1
lea eax, [ebp - 0xf4]
push eax
push edi
call fcn.0043dbd0
mov dword [esi + 0x420], edi
jmp 0x436977
lea eax, [ebp - 0x124]
mov dword [ebp - 0x124], 0
push eax
lea eax, [ebp - 0xf4]
push eax
push edi
call fcn.0043dd60
cmp byte [ebp - 0x111], 0
jne 0x43694e
mov eax, dword [ebp - 0x124]
test eax, eax
je 0x43694e
push 1
lea ecx, [ebp - 0xf4]
push ecx
push eax
push dword [esi + 0x420]
mov ecx, esi
call fcn.0043dc60
mov dword [esi + 0x420], edi
jmp 0x436977
lea ecx, [ebp - 0xf4]
push ecx
push eax
call fcn.0043dde0
mov dword [esi + 0x420], 0
jmp 0x436998
test edi, edi
je case.default.0x438320
mov dword [ebp - 0xf4], 9
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0xec], edi
mov eax, dword [edi]
push ecx
mov ecx, edi
call dword [eax + 0x19c]
mov ecx, dword [esi + 0x10]
test ecx, ecx
je 0x437af5
lea eax, [esi + 0x14]
push eax
mov eax, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0x411
push ecx
call eax
mov byte [esi + 0x513], 0
jmp case.default.0x438320
cmp edi, 9
jne 0x436b00
mov edi, dword [ebp - 0x11c]
movsx eax, di
mov dword [ebp - 0xc8], eax
mov eax, edi
shr eax, 0x10
cwde
mov dword [ebp - 0xc4], eax
lea eax, [ebp - 0xc8]
push eax
push dword [esi + 8]
call dword [sym.imp.USER32.dll_ScreenToClient]
mov eax, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0xc8]
push eax
mov dword [esi + 0x4b4], ecx
push ecx
mov ecx, esi
mov dword [esi + 0x4b8], eax
call fcn.0043cb70
mov edx, eax
mov dword [ebp - 0x118], edx
test edx, edx
je case.default.0x438320
mov ecx, dword [edx]
mov eax, dword [ecx + 0x1c]
cmp eax, method.ui::Control.virtual_28
jne 0x436a3b
mov eax, dword [edx + 0x188]
jmp 0x436a45
mov ecx, edx
call eax
mov edx, dword [ebp - 0x118]
cmp eax, esi
jne case.default.0x438320
mov dword [esi + 0x424], edx
mov ecx, edx
mov eax, dword [edx]
push 1
call dword [eax + 0x15c]
mov eax, dword [ebp - 0x118]
push dword [esi + 8]
mov dword [esi + 0x414], eax
call dword [sym.imp.USER32.dll_SetCapture]
push dword [ebp - 0x118]
mov ecx, esi
call fcn.0043aa00
mov eax, dword [ebp - 0xc8]
xorps xmm0, xmm0
mov esi, dword [ebp - 0x118]
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0xc4]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xe0], eax
mov eax, 9
mov dword [ebp - 0xf4], 0xd
mov dword [ebp - 0xec], esi
mov dword [ebp - 0xd8], 9
mov dword [ebp - 0xd4], edi
mov word [ebp - 0xda], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xe8], eax
lea ecx, [ebp - 0xf4]
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x19c]
mov al, 1
jmp 0x4387d2
mov ecx, dword [esi + 0x10]
test ecx, ecx
je case.default.0x438320
lea eax, [esi + 0x14]
push eax
push 0
push 0x411
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
jmp case.default.0x438320
cmp edi, 9
jne case.default.0x438320
mov edi, dword [ebp - 0x11c]
movsx eax, di
mov dword [ebp - 0xc8], eax
mov eax, edi
shr eax, 0x10
cwde
mov dword [ebp - 0xc4], eax
lea eax, [ebp - 0xc8]
push eax
push dword [esi + 8]
call dword [sym.imp.USER32.dll_ScreenToClient]
mov eax, dword [ebp - 0xc8]
mov ecx, esi
mov dword [esi + 0x4b4], eax
mov eax, dword [ebp - 0xc4]
mov dword [esi + 0x4b8], eax
call fcn.0043aa20
mov eax, dword [esi + 0x424]
test eax, eax
je case.default.0x438320
xorps xmm0, xmm0
mov dword [ebp - 0xf4], 0xe
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xc8]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0xe0], eax
mov eax, 9
mov dword [ebp - 0xd8], 9
mov dword [ebp - 0xd4], edi
mov word [ebp - 0xda], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi + 0x424]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x19c]
mov dword [esi + 0x424], 0
mov al, 1
jmp 0x4387d2
mov ecx, dword [ebp - 0x11c]
movsx eax, cx
mov dword [ebp - 0xc8], eax
shr ecx, 0x10
movsx eax, cx
mov dword [ebp - 0xc4], eax
lea eax, [ebp - 0xc8]
push eax
push dword [esi + 8]
call dword [sym.imp.USER32.dll_ScreenToClient]
cmp dword [esi + 0x424], 0
mov eax, dword [ebp - 0xc8]
mov dword [esi + 0x4b4], eax
mov eax, dword [ebp - 0xc4]
mov dword [esi + 0x4b8], eax
je case.default.0x438320
mov ecx, esi
call fcn.0043aa20
mov eax, dword [ebp - 0xc8]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x424]
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0xc4]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xf4], 0x12
mov dword [ebp - 0xec], ecx
mov dword [ebp - 0xe0], eax
mov word [ebp - 0xda], di
mov dword [ebp - 0xd4], ecx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi + 0x424]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x19c]
mov dword [esi + 0x424], 0
jmp case.default.0x438320
mov eax, dword [ebp - 0x11c]
cmp ax, 1
je 0x436cf3
cmp ax, 9
jne case.default.0x438320
cmp byte [esi + 0x514], 0
jne 0x435e27
lea eax, [ebp - 0xc8]
mov dword [ebp - 0xc8], 0
push eax
mov dword [ebp - 0xc4], 0
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0xc8]
push eax
push dword [esi + 8]
call dword [sym.imp.USER32.dll_ScreenToClient]
push dword [ebp - 0xc4]
mov ecx, esi
push dword [ebp - 0xc8]
call fcn.0043cb70
mov dword [ebp - 0x120], eax
test eax, eax
je case.default.0x438320
mov edx, dword [eax]
mov ecx, eax
mov edx, dword [edx + 0x14]
call edx
test al, 2
je case.default.0x438320
mov eax, dword [ebp - 0xc8]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x11c]
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0xc4]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xf4], 0x19
mov dword [ebp - 0xd8], edi
mov dword [ebp - 0xd4], ecx
mov dword [ebp - 0xe0], eax
call fcn.00443460
mov word [ebp - 0xda], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebp - 0x120]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x19c]
mov al, 1
jmp 0x4387d2
mov ecx, dword [ebp - 0x11c]
test ecx, ecx
je 0x435fa2
push ecx
push edi
lea eax, [edx + 0x2000]
push eax
push dword [ecx]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp - 0x118]
mov dword [ecx], eax
mov al, 1
jmp 0x4387d2
cmp dword [esi + 0x414], 0
je case.default.0x438320
mov eax, dword [esi + 0x4b4]
xorps xmm0, xmm0
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xe4], eax
mov eax, dword [esi + 0x4b8]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xf4], 3
mov word [ebp - 0xdc], di
mov dword [ebp - 0xe0], eax
call fcn.00443460
mov word [ebp - 0xda], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi + 0x414]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x19c]
mov eax, dword [esi + 0x414]
mov dword [esi + 0x428], eax
jmp case.default.0x438320
cmp edx, 0x111
ja 0x436fdc
je 0x436fb1
sub edx, 0x101
je 0x436f2e
sub edx, 1
jne case.default.0x438320
cmp dword [esi + 0x414], edx
je case.default.0x438320
mov eax, dword [esi + 0x4b4]
xorps xmm0, xmm0
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xe4], eax
mov eax, dword [esi + 0x4b8]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xf4], 5
mov word [ebp - 0xdc], di
mov dword [ebp - 0xe0], eax
call fcn.00443460
mov word [ebp - 0xda], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi + 0x414]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x19c]
jmp case.default.0x438320
cmp dword [esi + 0x428], 0
je case.default.0x438320
mov eax, dword [esi + 0x4b4]
xorps xmm0, xmm0
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xe4], eax
mov eax, dword [esi + 0x4b8]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xf4], 4
mov word [ebp - 0xdc], di
mov dword [ebp - 0xe0], eax
call fcn.00443460
mov word [ebp - 0xda], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi + 0x428]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x19c]
mov dword [esi + 0x428], 0
jmp case.default.0x438320
mov eax, dword [ebp - 0x11c]
test eax, eax
je case.default.0x438320
push eax
push edi
push 0x2111
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp - 0x118]
mov dword [ecx], eax
mov al, 1
jmp 0x4387d2
cmp edx, 0x231
ja 0x4377bf
je 0x437794
add edx, 0xfffffeed
cmp edx, 0xf7
ja case.default.0x438320
movzx eax, byte [edx + 0x4388fc]
jmp dword [eax*4 + 0x4388d4]
cmp edi, 0xbfa
jne 0x437022
call fcn.00439370
mov al, 1
jmp 0x4387d2
xor edx, edx
cmp dword [esi + 0x5c0], edx
jle case.default.0x438320
mov ecx, dword [esi + 0x5bc]
mov eax, dword [esi + 8]
mov dword [ebp - 0x124], ecx
nop
mov ecx, dword [ecx]
mov dword [ebp - 0x120], ecx
cmp dword [ecx + 8], eax
jne 0x43705e
movzx eax, di
cmp dword [ecx + 0xc], eax
jne 0x43705b
cmp byte [ecx + 0x10], 0
je 0x43707b
mov eax, dword [esi + 8]
mov ecx, dword [ebp - 0x124]
inc edx
add ecx, 4
mov dword [ebp - 0x124], ecx
cmp edx, dword [esi + 0x5c0]
jl 0x437040
jmp case.default.0x438320
mov eax, dword [ecx]
xorps xmm0, xmm0
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xec], eax
mov eax, dword [ecx + 4]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xf4], 0x1a
mov dword [ebp - 0xd8], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebp - 0x120]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov ecx, dword [ecx]
mov eax, dword [ecx]
call dword [eax + 0x19c]
jmp case.default.0x438320
cmp byte [esi + 0x513], 0
jne 0x43712f
mov eax, dword [esi + 8]
xorps xmm0, xmm0
movq qword [ebp - 0x30], xmm0
mov dword [ebp - 0x2c], eax
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x34], 0x10
mov dword [ebp - 0x30], 3
test eax, eax
jne 0x43710b
mov dword [ebp - 0x28], 0x190
jmp 0x43711e
push 0
push 3
push 0x415
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x34]
push eax
call dword [sym.imp.COMCTL32.dll__TrackMouseEvent]
mov byte [esi + 0x513], 1
mov eax, dword [ebp - 0x11c]
movsx ecx, ax
shr eax, 0x10
mov dword [ebp - 0x120], ecx
movsx edi, ax
cmp ecx, dword [esi + 0x4b4]
jne 0x437158
cmp edi, dword [esi + 0x4b8]
je case.default.0x438320
xorps xmm0, xmm0
mov dword [ebp - 0xd4], 0
movups xmmword [ebp - 0xe4], xmm0
mov dword [esi + 0x4b4], ecx
movups xmmword [ebp - 0xf4], xmm0
mov dword [esi + 0x4b8], edi
mov dword [ebp - 0xe4], ecx
mov dword [ebp - 0xe0], edi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi + 0x41c]
mov dword [ebp - 0xe8], eax
test ecx, ecx
jne 0x43683a
push edi
push dword [ebp - 0x120]
jmp 0x43686a
mov eax, dword [ebp - 0x11c]
movsx ecx, ax
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x120], ecx
mov dword [esi + 0x4b4], ecx
push ecx
mov ecx, esi
mov dword [ebp - 0x128], eax
mov dword [esi + 0x4b8], eax
call fcn.0043cb70
mov edx, eax
mov dword [ebp - 0x118], edx
test edx, edx
je case.default.0x438320
mov ecx, dword [edx]
mov eax, dword [ecx + 0x1c]
cmp eax, method.ui::Control.virtual_28
jne 0x437203
mov eax, dword [edx + 0x188]
jmp 0x43720d
mov ecx, edx
call eax
mov edx, dword [ebp - 0x118]
cmp eax, esi
jne case.default.0x438320
mov dword [esi + 0x424], edx
mov ecx, edx
mov eax, dword [edx]
push 1
call dword [eax + 0x15c]
mov eax, dword [ebp - 0x118]
push dword [esi + 8]
mov dword [esi + 0x414], eax
call dword [sym.imp.USER32.dll_SetCapture]
mov edx, dword [ebp - 0x118]
mov ecx, esi
push edx
call fcn.0043aa00
mov eax, dword [ebp - 0x120]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x11c]
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0x128]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xf4], 0xd
mov dword [ebp - 0xec], edx
mov dword [ebp - 0xd8], edi
mov dword [ebp - 0xd4], ecx
mov dword [ebp - 0xe0], eax
mov word [ebp - 0xda], di
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebp - 0x118]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x19c]
jmp case.default.0x438320
push dword [esi + 8]
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, dword [ebp - 0x11c]
movsx ecx, ax
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x120], ecx
mov dword [esi + 0x4b4], ecx
push ecx
mov ecx, esi
mov dword [ebp - 0x128], eax
mov dword [esi + 0x4b8], eax
call fcn.0043cb70
mov dword [ebp - 0x124], eax
test eax, eax
je case.default.0x438320
mov ecx, dword [eax]
mov edx, dword [ecx + 0x1c]
cmp edx, method.ui::Control.virtual_28
jne 0x43731c
mov eax, dword [eax + 0x188]
jmp 0x437320
mov ecx, eax
call edx
cmp eax, esi
jne case.default.0x438320
push dword [esi + 8]
call dword [sym.imp.USER32.dll_SetCapture]
mov edx, dword [ebp - 0x124]
mov ecx, esi
push edx
call fcn.0043aa00
mov eax, dword [ebp - 0x120]
xorps xmm0, xmm0
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0x128]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xf4], 0x11
mov dword [ebp - 0xec], edx
mov dword [ebp - 0xe0], eax
mov word [ebp - 0xda], di
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, dword [ebp - 0x124]
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push ecx
mov ecx, edi
mov eax, dword [edi]
call dword [eax + 0x19c]
mov dword [esi + 0x424], edi
jmp case.default.0x438320
mov eax, dword [ebp - 0x11c]
movsx ecx, ax
shr eax, 0x10
cwde
mov dword [ebp - 0x120], ecx
mov dword [esi + 0x4b4], ecx
mov ecx, esi
mov dword [ebp - 0x128], eax
mov dword [esi + 0x4b8], eax
call fcn.0043aa20
mov eax, dword [esi + 0x424]
test eax, eax
je case.default.0x438320
mov ecx, dword [ebp - 0x11c]
xorps xmm0, xmm0
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0x120]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0x128]
mov dword [ebp - 0xf4], 0xe
mov dword [ebp - 0xd8], edi
mov dword [ebp - 0xd4], ecx
mov dword [ebp - 0xe0], eax
mov word [ebp - 0xda], di
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi + 0x424]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x19c]
mov dword [esi + 0x424], 0
jmp case.default.0x438320
push dword [esi + 8]
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, dword [ebp - 0x11c]
movsx ecx, ax
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x120], ecx
mov dword [esi + 0x4b4], ecx
push ecx
mov ecx, esi
mov dword [ebp - 0x128], eax
mov dword [esi + 0x4b8], eax
call fcn.0043cb70
mov edx, eax
mov dword [ebp - 0x118], edx
test edx, edx
je case.default.0x438320
mov ecx, dword [edx]
mov eax, dword [ecx + 0x1c]
cmp eax, method.ui::Control.virtual_28
jne 0x4374c4
mov eax, dword [edx + 0x188]
jmp 0x4374ce
mov ecx, edx
call eax
mov edx, dword [ebp - 0x118]
cmp eax, esi
jne case.default.0x438320
mov eax, dword [edx]
mov ecx, edx
push 1
call dword [eax + 0x15c]
push dword [esi + 8]
call dword [sym.imp.USER32.dll_SetCapture]
mov edx, dword [ebp - 0x118]
mov ecx, esi
push edx
call fcn.0043aa00
mov eax, dword [ebp - 0x120]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x11c]
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0x128]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xf4], 0xf
mov dword [ebp - 0xec], edx
mov dword [ebp - 0xd8], edi
mov dword [ebp - 0xd4], ecx
mov dword [ebp - 0xe0], eax
mov word [ebp - 0xda], di
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, dword [ebp - 0x118]
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push ecx
mov ecx, edi
mov eax, dword [edi]
call dword [eax + 0x19c]
mov dword [esi + 0x424], edi
jmp case.default.0x438320
mov eax, dword [ebp - 0x11c]
movsx ecx, ax
shr eax, 0x10
cmp dword [esi + 0x424], 0
cwde
mov dword [ebp - 0x120], ecx
mov dword [ebp - 0x128], eax
mov dword [esi + 0x4b4], ecx
mov dword [esi + 0x4b8], eax
je case.default.0x438320
mov ecx, esi
call fcn.0043aa20
mov eax, dword [esi + 0x424]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x11c]
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0x120]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0x128]
mov dword [ebp - 0xf4], 0x10
mov dword [ebp - 0xd8], edi
mov dword [ebp - 0xd4], ecx
mov dword [ebp - 0xe0], eax
mov word [ebp - 0xda], di
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi + 0x424]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x19c]
jmp case.default.0x438320
mov ecx, dword [ebp - 0x11c]
movsx eax, cx
mov dword [ebp - 0xc8], eax
mov eax, ecx
shr eax, 0x10
cwde
mov dword [ebp - 0xc4], eax
lea eax, [ebp - 0xc8]
push eax
push dword [esi + 8]
call dword [sym.imp.USER32.dll_ScreenToClient]
mov eax, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0xc8]
push eax
mov dword [esi + 0x4b4], ecx
push ecx
mov ecx, esi
mov dword [esi + 0x4b8], eax
call fcn.0043cb70
mov dword [ebp - 0x124], eax
test eax, eax
je case.default.0x438320
mov ecx, dword [eax]
mov edx, dword [ecx + 0x1c]
cmp edx, method.ui::Control.virtual_28
jne 0x43769f
mov ecx, dword [eax + 0x188]
jmp 0x4376ab
mov ecx, eax
call edx
mov ecx, eax
mov eax, dword [ebp - 0x124]
cmp ecx, esi
jne case.default.0x438320
shr edi, 0x10
xorps xmm0, xmm0
movsx edx, di
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xec], eax
xor eax, eax
movzx ecx, dx
shl ecx, 0x10
test edx, edx
movups xmmword [ebp - 0xe0], xmm0
sets al
mov dword [ebp - 0xf4], 0x13
or ecx, eax
mov dword [ebp - 0xd8], ecx
mov ecx, dword [ebp - 0x11c]
mov dword [ebp - 0xd4], ecx
call fcn.00443460
mov word [ebp - 0xda], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebp - 0x124]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x19c]
movzx ecx, word [esi + 0x4b8]
movzx eax, word [esi + 0x4b4]
shl ecx, 0x10
or ecx, eax
push ecx
push 0
push 0x200
push dword [esi + 8]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp case.default.0x438320
cmp dword [ebp - 0x11c], 0
je case.default.0x438320
mov esi, dword [ebp - 0x11c]
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x435fa2
mov eax, dword [ebx + 8]
push esi
push edi
add eax, 0x2000
push eax
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp - 0x118]
mov dword [ecx], eax
mov al, 1
jmp 0x4387d2
cmp byte [esi + 0x519], 0
jne case.default.0x438320
push 0
push 0xf
push 0xbfa
push dword [esi + 8]
call dword [sym.imp.USER32.dll_SetTimer]
mov byte [esi + 0x519], 1
jmp case.default.0x438320
cmp edx, 0x2e0
ja 0x438311
je 0x437d6f
add edx, 0xfffffdce
cmp edx, 0x71
ja case.default.0x438320
movzx eax, byte [edx + 0x438a0c]
jmp dword [eax*4 + 0x4389f4]
cmp byte [esi + 0x519], 0
je case.default.0x438320
push 0xbfa
push dword [esi + 8]
call dword [sym.imp.USER32.dll_KillTimer]
mov byte [esi + 0x519], 0
jmp case.default.0x438320
mov eax, dword [ebp - 0x11c]
movsx ecx, ax
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x120], ecx
push ecx
mov ecx, esi
mov byte [esi + 0x513], 1
mov dword [ebp - 0x128], eax
call fcn.0043cb70
mov edi, eax
test edi, edi
je case.default.0x438320
mov eax, dword [ebp - 0x120]
xorps xmm0, xmm0
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0x128]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0xf4], 0xc
mov dword [ebp - 0xec], edi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xe8], eax
lea ecx, [ebp - 0xf4]
mov eax, dword [edi]
push ecx
mov ecx, edi
call dword [eax + 0x19c]
lea eax, [ebp - 0xc0]
mov ecx, edi
push eax
mov eax, dword [edi]
call dword [eax + 0xb4]
mov dword [ebp - 4], 1
mov eax, dword [ebp - 0xbc]
cmp word [eax], 0
je 0x4379fa
push 0x30
lea eax, [esi + 0x14]
push 0
push eax
call fcn.004fb530
mov eax, dword [esi + 8]
add esp, 0xc
mov edx, dword [0x56e914]
mov dword [esi + 0x1c], eax
mov dword [esi + 0x20], eax
mov eax, dword [ebp - 0xbc]
mov dword [esi + 0x38], eax
mov dword [esi + 0x14], 0x30
mov dword [esi + 0x18], 1
mov dword [esi + 0x34], edx
mov eax, dword [edi]
mov eax, dword [eax + 0x4c]
cmp eax, method.ui::Control.virtual_76
jne 0x437913
lea eax, [edi + 0x2a8]
jmp 0x43791d
mov ecx, edi
call eax
mov edx, dword [0x56e914]
cmp dword [esi + 0x10], 0
cvttss2si ecx, dword [eax]
mov dword [ebp - 0x24], ecx
cvttss2si ecx, dword [eax + 4]
mov dword [ebp - 0x20], ecx
cvttss2si ecx, dword [eax + 8]
cvttss2si eax, dword [eax + 0xc]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], eax
movups xmm0, xmmword [ebp - 0x24]
movups xmmword [esi + 0x24], xmm0
jne 0x43798f
push 0
push edx
push 0
push dword [esi + 8]
push SysReAllocString
push SysReAllocString
push SysReAllocString
push SysReAllocString
push SysStringLen
push 0
push str.Tooltips_class32
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
lea ecx, [esi + 0x14]
mov dword [esi + 0x10], eax
push ecx
push 0
push 0x432
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [edi]
mov eax, dword [eax + 0xc0]
cmp eax, method.ui::Control.virtual_192
jne 0x4379c0
mov eax, dword [edi + 0x188]
movd xmm0, dword [edi + 0x81c]
cvtdq2ps xmm0, xmm0
mov eax, dword [eax + 0x728]
mulss xmm0, dword [eax + 4]
cvttss2si eax, xmm0
jmp 0x4379c4
mov ecx, edi
call eax
push eax
push 0
push 0x418
push dword [esi + 0x10]
call dword [sym.imp.USER32.dll_SendMessageW]
lea edi, [esi + 0x14]
push edi
push 0
push 0x436
push dword [esi + 0x10]
call dword [sym.imp.USER32.dll_SendMessageW]
push edi
push 1
push 0x411
push dword [esi + 0x10]
call dword [sym.imp.USER32.dll_SendMessageW]
lea ecx, [ebp - 0xc0]
call fcn.00434090
mov al, 1
jmp 0x4387d2
lea eax, [ebp - 0xc8]
mov dword [ebp - 0xc8], 0
push eax
mov dword [ebp - 0xc4], 0
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x24]
xorps xmm0, xmm0
push eax
push dword [esi + 8]
movups xmmword [ebp - 0x24], xmm0
call dword [sym.imp.USER32.dll_GetWindowRect]
push 0xffffffffffffffff
push 0xffffffffffffffff
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_InflateRect]
mov ecx, dword [esi + 0x10]
test ecx, ecx
je 0x437a68
lea eax, [esi + 0x14]
push eax
push 0
push 0x411
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
push dword [ebp - 0xc4]
lea eax, [ebp - 0x24]
push dword [ebp - 0xc8]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
jne 0x437af5
mov eax, dword [ebp - 0x11c]
xorps xmm0, xmm0
movsx ecx, ax
shr eax, 0x10
cwde
movups xmmword [ebp - 0xe4], xmm0
mov dword [ebp - 0xe0], eax
lea eax, [ebp - 0xf4]
push eax
push dword [esi + 0x420]
movups xmmword [ebp - 0xf4], xmm0
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0xe4], ecx
call fcn.0043dde0
cmp dword [esi + 0x424], 0
mov dword [esi + 0x420], 0
je 0x437ae5
mov dword [esi + 0x424], 0
cmp dword [esi + 0x41c], 0
jne 0x437af5
mov byte [esi + 0x514], 0
mov byte [esi + 0x513], 0
jmp case.default.0x438320
lea eax, [ebp - 0xc8]
mov dword [ebp - 0xc8], 0
push eax
mov dword [ebp - 0xc4], 0
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x24]
xorps xmm0, xmm0
push eax
push dword [esi + 8]
movups xmmword [ebp - 0x24], xmm0
call dword [sym.imp.USER32.dll_GetWindowRect]
push 0xffffffffffffffff
push 0xffffffffffffffff
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_InflateRect]
push dword [ebp - 0xc4]
lea eax, [ebp - 0x24]
push dword [ebp - 0xc8]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
jne 0x437af5
mov ecx, dword [esi + 0x10]
test ecx, ecx
je 0x437a82
lea eax, [esi + 0x14]
push eax
push 0
push 0x411
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x437a82
mov ecx, dword [ebp - 0x11c]
movsx eax, cx
mov dword [ebp - 0xc8], eax
shr ecx, 0x10
movsx eax, cx
mov dword [ebp - 0xc4], eax
lea eax, [ebp - 0xc8]
push eax
push dword [esi + 8]
mov byte [esi + 0x513], 1
call dword [sym.imp.USER32.dll_ScreenToClient]
push dword [ebp - 0xc4]
mov ecx, esi
push dword [ebp - 0xc8]
call fcn.0043cb70
mov edi, eax
test edi, edi
je case.default.0x438320
mov ecx, dword [ebp - 0xc8]
xorps xmm0, xmm0
mov eax, dword [ebp - 0xc4]
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xe4], ecx
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0xf4], 0xc
mov dword [ebp - 0xec], edi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xe8], eax
lea ecx, [ebp - 0xf4]
mov eax, dword [edi]
push ecx
mov ecx, edi
call dword [eax + 0x19c]
lea eax, [ebp - 0xc0]
mov ecx, edi
push eax
mov eax, dword [edi]
call dword [eax + 0xb4]
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0xbc]
cmp word [eax], 0
je 0x4379fa
push 0x30
lea eax, [esi + 0x14]
push 0
push eax
call fcn.004fb530
mov eax, dword [esi + 8]
add esp, 0xc
mov edx, dword [0x56e914]
mov dword [esi + 0x1c], eax
mov dword [esi + 0x20], eax
mov eax, dword [ebp - 0xbc]
mov dword [esi + 0x38], eax
mov dword [esi + 0x14], 0x30
mov dword [esi + 0x18], 1
mov dword [esi + 0x34], edx
mov eax, dword [edi]
mov eax, dword [eax + 0x4c]
cmp eax, method.ui::Control.virtual_76
jne 0x437c9a
lea eax, [edi + 0x2a8]
jmp 0x437ca4
mov ecx, edi
call eax
mov edx, dword [0x56e914]
cmp dword [esi + 0x10], 0
cvttss2si ecx, dword [eax]
mov dword [ebp - 0x24], ecx
cvttss2si ecx, dword [eax + 4]
mov dword [ebp - 0x20], ecx
cvttss2si ecx, dword [eax + 8]
cvttss2si eax, dword [eax + 0xc]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], eax
movups xmm0, xmmword [ebp - 0x24]
movups xmmword [esi + 0x24], xmm0
jne 0x437d16
push 0
push edx
push 0
push dword [esi + 8]
push SysReAllocString
push SysReAllocString
push SysReAllocString
push SysReAllocString
push SysStringLen
push 0
push str.Tooltips_class32
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
lea ecx, [esi + 0x14]
mov dword [esi + 0x10], eax
push ecx
push 0
push 0x432
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0xc0]
call eax
push eax
push 0
push 0x418
push dword [esi + 0x10]
call dword [sym.imp.USER32.dll_SendMessageW]
lea edi, [esi + 0x14]
push edi
push 0
push 0x436
push dword [esi + 0x10]
call dword [sym.imp.USER32.dll_SendMessageW]
push edi
push 1
push 0x411
push dword [esi + 0x10]
call dword [sym.imp.USER32.dll_SendMessageW]
lea ecx, [ebp - 0xc0]
mov dword [ebp - 4], 0xffffffff
call fcn.00434090
jmp case.default.0x438320
mov ecx, dword [esi + 0x728]
test ecx, ecx
je 0x435e27
shr edi, 0x10
mov eax, edi
mov dword [ecx], edi
shr eax, 0x1f
push 0xfffffffffffffff0
movd xmm0, edi
cvtdq2pd xmm0, xmm0
mov dword [ebp - 0x130], edi
addsd xmm0, qword [eax*8 + 0x5491a0]
cvtpd2ps xmm0, xmm0
divss xmm0, dword [0x549064]
movss dword [ecx + 4], xmm0
push dword [esi + 8]
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, 0x10000
jne 0x437fbb
push 2
push dword [esi + 8]
xorps xmm0, xmm0
movups xmmword [ebp - 0x34], xmm0
call dword [sym.imp.USER32.dll_MonitorFromWindow]
lea ecx, [ebp - 0xf8]
mov dword [ebp - 0xd4], 0
xorps xmm0, xmm0
mov dword [ebp - 0xf8], 0x28
push ecx
push eax
movups xmmword [ebp - 0xf4], xmm0
movups xmmword [ebp - 0xe4], xmm0
call dword [sym.imp.USER32.dll_GetMonitorInfoW]
test eax, eax
je 0x437e19
movups xmm0, xmmword [ebp - 0xf4]
movups xmmword [ebp - 0x34], xmm0
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
movss xmm1, dword [esi + 0x4e4]
movss xmm2, dword [0x548f5c]
sub edx, dword [ebp - 0x34]
sub ecx, dword [ebp - 0x30]
comiss xmm2, xmm1
movss xmm4, dword [esi + 0x4e8]
jb 0x437e4b
movd xmm0, edx
cvtdq2ps xmm0, xmm0
jmp 0x437e56
mov eax, dword [esi + 0x728]
movss xmm0, dword [eax + 4]
comiss xmm2, xmm4
mulss xmm1, xmm0
jb 0x437e68
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
jmp 0x437e73
mov eax, dword [esi + 0x728]
movss xmm0, dword [eax + 4]
movd xmm3, edx
cvtdq2ps xmm3, xmm3
mulss xmm4, xmm0
comiss xmm3, xmm1
jbe 0x437fbb
movd xmm2, ecx
cvtdq2ps xmm2, xmm2
comiss xmm2, xmm1
jbe 0x437fbb
mov ecx, dword [ebp - 0x11c]
mov eax, dword [ecx + 8]
sub eax, dword [ecx]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
ja 0x437ec4
mov eax, dword [ecx + 0xc]
sub eax, dword [ecx + 4]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm4, xmm0
jbe 0x437fbb
mov edx, dword [esi + 0x4cc]
xorps xmm0, xmm0
movss xmm5, dword [0x548f2c]
movq qword [ebp - 0x20], xmm0
mov dword [ebp - 0x18], 0
test edx, edx
jle 0x437ef9
mov eax, dword [esi + 0x728]
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [eax + 4]
jmp 0x437f04
movaps xmm0, xmm3
subss xmm0, xmm1
mulss xmm0, xmm5
mov edx, dword [esi + 0x4d0]
cvttss2si eax, xmm0
mov dword [ebp - 0x118], eax
test edx, edx
jle 0x437f2c
mov eax, dword [esi + 0x728]
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [eax + 4]
jmp 0x437f37
movaps xmm0, xmm2
subss xmm0, xmm4
mulss xmm0, xmm5
cvttss2si edx, xmm0
movss xmm0, dword [esi + 0x4dc]
xorps xmm5, xmm5
ucomiss xmm0, xmm5
lahf
test ah, 0x44
jnp 0x437f61
subss xmm3, xmm1
mulss xmm3, xmm0
cvttss2si eax, xmm3
mov dword [ebp - 0x118], eax
movss xmm0, dword [esi + 0x4e0]
ucomiss xmm0, xmm5
lahf
test ah, 0x44
jnp 0x437f7e
subss xmm2, xmm4
mulss xmm2, xmm0
cvttss2si edx, xmm2
mov eax, dword [ebp - 0x118]
add eax, dword [ebp - 0x34]
add edx, dword [ebp - 0x30]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1c], eax
addss xmm0, xmm4
cvttss2si eax, xmm0
mov dword [ebp - 0x18], eax
movups xmm0, xmmword [ebp - 0x24]
movups xmmword [ecx], xmm0
call fcn.00434ba0
mov ecx, esi
call fcn.0043b600
push ecx
push dword [esi + 0x410]
mov ecx, esi
call fcn.0043cb90
mov ecx, eax
xor eax, eax
mov dword [ebp - 0x120], ecx
mov dword [ebp - 0x118], eax
cmp dword [ecx + 4], eax
jle 0x43802e
nop word [eax + eax]
mov ecx, dword [ecx]
mov esi, dword [ecx + eax*4]
mov ecx, esi
mov edi, dword [esi]
mov eax, dword [edi + 0xcc]
call eax
push eax
mov ecx, esi
call dword [edi + 0xd0]
mov eax, dword [ebp - 0x118]
mov ecx, dword [ebp - 0x120]
inc eax
mov dword [ebp - 0x118], eax
cmp eax, dword [ecx + 4]
jl 0x437ff0
mov esi, dword [ebp - 0x124]
mov edi, dword [ebp - 0x130]
mov edx, dword [ebp - 0x11c]
mov eax, dword [edx + 8]
sub eax, dword [edx]
mov dword [ebp - 0x120], eax
cmp dword [esi + 0x6f0], eax
jne 0x43805c
mov eax, dword [edx + 0xc]
sub eax, dword [edx + 4]
mov byte [ebp - 0x111], 1
cmp dword [esi + 0x6f4], eax
je 0x438063
mov byte [ebp - 0x111], 0
mov ecx, dword [edx + 4]
mov eax, dword [edx + 0xc]
push 0x14
sub eax, ecx
push eax
push dword [ebp - 0x120]
push ecx
push dword [edx]
push 0
push dword [esi + 8]
call dword [sym.imp.USER32.dll_SetWindowPos]
lea eax, [ebp - 0xd0]
xorps xmm0, xmm0
push eax
push dword [esi + 8]
movups xmmword [ebp - 0xd0], xmm0
call dword [sym.imp.USER32.dll_GetClientRect]
movups xmm1, xmmword [ebp - 0xd0]
movaps xmm0, xmm1
movd eax, xmm1
psrldq xmm0, 8
movd ecx, xmm0
movaps xmm0, xmm1
movups xmmword [esi + 0x6e8], xmm1
sub ecx, eax
psrldq xmm0, 0xc
mov dword [ebp - 0x128], ecx
psrldq xmm1, 4
movd eax, xmm1
movd ecx, xmm0
sub ecx, eax
lea eax, [ebp - 0xd0]
push eax
mov dword [ebp - 0x120], ecx
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x438302
cmp dword [esi + 0x410], eax
je 0x438302
push dword [esi + 8]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x438302
cmp byte [ebp - 0x111], al
je 0x438302
mov eax, dword [esi + 0x5a8]
mov ecx, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x124], eax
test eax, eax
je 0x4381b3
xorps xmm0, xmm0
mov dword [ebp - 0xf4], 0x18
movups xmmword [ebp - 0xf0], xmm0
movups xmmword [ebp - 0xe0], xmm0
call ecx
mov ecx, dword [esi + 0x414]
mov dword [ebp - 0xe8], eax
test ecx, ecx
je 0x438173
mov eax, dword [ecx]
lea edx, [ebp - 0xf4]
push edx
call dword [eax + 0x19c]
cmp dword [ebp - 0x124], 0
jle 0x4381ad
xor edi, edi
nop
mov eax, dword [esi + 0x5a4]
lea edx, [ebp - 0xf4]
push edx
mov ecx, dword [eax + edi*4]
mov dword [ebp - 0xec], ecx
mov eax, dword [ecx]
call dword [eax + 0x19c]
inc edi
cmp edi, dword [ebp - 0x124]
jl 0x438180
mov edi, dword [ebp - 0x130]
mov ecx, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov eax, dword [esi + 0x414]
test eax, eax
je 0x4381fb
xorps xmm0, xmm0
mov dword [ebp - 0xf4], 0x18
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xec], eax
movups xmmword [ebp - 0xe0], xmm0
call ecx
mov ecx, dword [esi + 0x414]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x19c]
mov ecx, dword [esi + 0x6e0]
test ecx, ecx
je 0x43823e
movd xmm0, dword [ebp - 0x120]
sub esp, 0x10
mov eax, dword [ecx]
cvtdq2ps xmm0, xmm0
movss dword [esp + 0xc], xmm0
movd xmm0, dword [ebp - 0x128]
cvtdq2ps xmm0, xmm0
movss dword [esp + 8], xmm0
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [eax + 0xc]
movups xmm1, xmmword [ebp - 0xd0]
sub esp, 0x10
mov byte [esi + 0x511], 0
mov ecx, esp
movd eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ecx], xmm0
movaps xmm0, xmm1
psrldq xmm0, 4
movd eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ecx + 4], xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
movd eax, xmm0
psrldq xmm1, 0xc
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movd eax, xmm1
movss dword [ecx + 8], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ecx + 0xc], xmm0
mov ecx, dword [esi + 0x410]
mov eax, dword [ecx]
call dword [eax + 0x50]
movd xmm0, dword [ebp - 0xd0]
lea eax, [ebp - 0x24]
cvtdq2ps xmm0, xmm0
push eax
mov ecx, esi
movss dword [ebp - 0x24], xmm0
movd xmm0, dword [ebp - 0xcc]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x20], xmm0
movd xmm0, dword [ebp - 0xc8]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1c], xmm0
movd xmm0, dword [ebp - 0xc4]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x18], xmm0
call fcn.00438aa0
mov ecx, esi
call fcn.00439920
mov ecx, dword [esi]
push edi
mov eax, dword [ecx]
call dword [eax + 0xc]
mov al, 1
jmp 0x4387d2
add edx, 0xffff7fff
cmp edx, 4
ja case.default.0x438320
jmp dword [edx*4 + 0x438a80]
xor edi, edi
cmp dword [esi + 0x5f0], edi
jle 0x43834d
mov eax, dword [esi + 0x5ec]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x438344
mov eax, dword [ecx]
push 1
call dword [eax]
inc edi
cmp edi, dword [esi + 0x5f0]
jl 0x438331
mov eax, dword [esi + 0x5ec]
test eax, eax
je 0x438360
push eax
call fcn.004fe1ff
add esp, 4
mov dword [esi + 0x5ec], 0
mov dword [esi + 0x5f4], 0
mov dword [esi + 0x5f0], 0
jmp case.default.0x438320
mov ecx, dword [esi + 0x414]
test ecx, ecx
jne 0x43839f
push dword [esi + 0x418]
mov ecx, esi
call fcn.0043a320
jmp case.default.0x438320
mov eax, dword [ecx]
push str.Edit
mov eax, dword [eax + 0x10]
call eax
test eax, eax
jne 0x4383c9
mov ecx, dword [esi + 0x414]
push str.ComboBox
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
call eax
test eax, eax
je case.default.0x438320
mov eax, dword [esi + 0x414]
xorps xmm0, xmm0
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xf4], 0x16
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xec], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi + 0x414]
lea edx, [ebp - 0xf4]
mov dword [ebp - 0xe8], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x19c]
push ecx
push 0
push 0
push str.setfocus
push dword [esi + 0x414]
mov ecx, esi
call fcn.0043b0b0
jmp case.default.0x438320
mov eax, dword [esi + 0x720]
mov ecx, dword [eax]
mov dword [ebp - 0x118], ecx
cmp ecx, eax
je 0x43850a
add ecx, 0x10
cmp dword [edi + 0x14], 8
jb 0x438450
mov eax, dword [edi]
jmp 0x438452
mov eax, edi
cmp dword [ecx + 0x14], 8
lea edx, [ecx + 0x10]
jb 0x43845d
mov ecx, dword [ecx]
push dword [edi + 0x10]
push eax
push dword [edx]
push ecx
call fcn.00403590
add esp, 0x10
test eax, eax
jne 0x4384ed
mov edi, dword [edi + 0x18]
test edi, edi
je 0x435e27
movzx eax, byte [edi + 0x40]
push ecx
push eax
push dword [edi + 0xc]
lea eax, [edi + 0x48]
mov ecx, esi
push dword [edi + 8]
push eax
call fcn.0043c050
test eax, eax
je 0x4384e7
mov eax, dword [edi + 8]
test eax, eax
je 0x4384b1
push eax
call fcn.004e2516
add esp, 4
mov dword [edi + 8], 0
cmp dword [edi + 0x34], 0
mov byte [edi + 0x21], 1
mov dword [ebp - 0x120], 0
jle 0x4384e7
mov esi, dword [ebp - 0x120]
nop dword [eax + eax]
mov ecx, dword [edi + 0x30]
mov ecx, dword [ecx + esi*4]
call fcn.00449200
inc esi
cmp esi, dword [edi + 0x34]
jl 0x4384d0
mov esi, dword [ebp - 0x124]
mov edi, dword [ebp - 0x130]
lea ecx, [ebp - 0x118]
call fcn.004306e0
mov ecx, dword [ebp - 0x118]
cmp ecx, dword [esi + 0x720]
jne 0x438443
mov ecx, dword [esi + 0x734]
test ecx, ecx
je 0x435e27
push edi
call fcn.0046d760
mov al, 1
jmp 0x4387d2
mov eax, dword [esi + 0x720]
mov eax, dword [eax]
mov dword [ebp - 0x12c], eax
cmp eax, dword [esi + 0x720]
je 0x43850a
nop dword [eax + eax]
add eax, 0x10
cmp dword [edi + 0x14], 8
jb 0x43854d
mov ecx, dword [edi]
jmp 0x43854f
mov ecx, edi
cmp dword [eax + 0x14], 8
lea edx, [eax + 0x10]
jb 0x43855a
mov eax, dword [eax]
push dword [edi + 0x10]
push ecx
push dword [edx]
push eax
call fcn.00403590
add esp, 0x10
test eax, eax
jne 0x438672
mov eax, dword [edi + 0x18]
mov dword [ebp - 0x120], eax
test eax, eax
je 0x435e27
xor ecx, ecx
mov dword [ebp - 0x118], ecx
cmp dword [eax + 0x34], ecx
jle 0x438672
cmp dword [ebp - 0x11c], 1
mov esi, eax
sete al
mov byte [ebp - 0x128], al
lea edx, [esi + 0x54]
nop dword [eax + eax]
mov eax, dword [esi + 0x30]
sub esp, 0x18
mov dword [ebp - 0x134], esp
mov eax, dword [eax + ecx*4]
mov ecx, esp
mov dword [ebp - 0x120], eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
mov dword [ecx + 0x14], 7
cmp dword [ecx + 0x14], 8
mov dword [ecx + 0x10], 0
jb 0x4385ed
mov eax, dword [ecx]
jmp 0x4385ef
mov eax, ecx
push 0xffffffffffffffff
xor edi, edi
push edi
push edx
mov word [eax], di
call fcn.00402670
sub esp, 0x18
mov dword [ebp - 4], edi
mov ecx, esp
mov dword [ecx + 0x10], edi
mov dword [ecx + 0x14], edi
mov dword [ecx + 0x14], 7
cmp dword [ecx + 0x14], 8
mov dword [ecx + 0x10], edi
jb 0x43861f
mov eax, dword [ecx]
jmp 0x438621
mov eax, ecx
mov edi, dword [ebp - 0x130]
xor edx, edx
push 0xffffffffffffffff
push edx
push edi
mov word [eax], dx
call fcn.00402670
mov ecx, dword [ebp - 0x120]
push dword [esi + 0x2c]
push dword [ebp - 0x128]
mov eax, dword [ecx]
mov dword [ebp - 4], 0xffffffff
call dword [eax + 0x188]
mov ecx, dword [ebp - 0x118]
lea edx, [esi + 0x54]
inc ecx
mov dword [ebp - 0x118], ecx
cmp ecx, dword [esi + 0x34]
jl 0x4385b0
mov esi, dword [ebp - 0x124]
lea ecx, [ebp - 0x12c]
call fcn.004306e0
mov eax, dword [ebp - 0x12c]
cmp eax, dword [esi + 0x720]
jne 0x438540
jmp 0x43850a
test edi, edi
je case.default.0x438320
mov ecx, dword [edi + 0x24]
test ecx, ecx
jne 0x4386a4
call fcn.004debf7
mov eax, dword [ecx]
call dword [eax + 8]
push edi
mov ecx, esi
call fcn.00434dc0
cmp dword [esi + 0x5fc], 0
jle 0x4387d0
mov eax, dword [esi + 0x5f8]
mov edx, dword [eax]
mov dword [ebp - 0x118], edx
test edx, edx
je 0x4387d0
mov eax, dword [esi + 0x5fc]
test eax, eax
jle 0x438706
dec eax
mov dword [esi + 0x5fc], eax
test eax, eax
jle 0x438706
mov ecx, dword [esi + 0x5f8]
shl eax, 2
push eax
lea eax, [ecx + 4]
push eax
push ecx
call fcn.004fafb0
mov edx, dword [ebp - 0x118]
add esp, 0xc
mov eax, dword [edx + 0x88]
test eax, eax
je 0x43873f
cmp dword [eax + 0x2c], 0
je 0x43873f
mov dword [ebp - 0x130], edx
mov ecx, dword [eax + 0x2c]
test ecx, ecx
je 0x435f72
mov eax, dword [ecx]
lea edx, [ebp - 0x130]
push edx
mov eax, dword [eax + 8]
call eax
test al, al
jne 0x43879f
mov edx, dword [ebp - 0x118]
xor edi, edi
cmp dword [esi + 0x5b4], edi
jle 0x43876d
nop dword [eax]
mov eax, dword [esi + 0x5b0]
push edx
mov ecx, dword [eax + edi*4]
mov eax, dword [ecx]
call dword [eax]
mov edx, dword [ebp - 0x118]
inc edi
cmp edi, dword [esi + 0x5b4]
jl 0x438750
mov edi, dword [ebp - 0x118]
mov ecx, dword [edi + 4]
lea eax, [edi + 8]
mov dword [edi], vtable.ui::CDuiString.0
cmp ecx, eax
je 0x43878c
push ecx
call fcn.004fe1ff
add esp, 4
push 0xa0
push edi
call fcn.004e22e6
add esp, 8
jmp case.default.0x438320
mov edi, dword [ebp - 0x118]
mov ecx, dword [edi + 4]
lea eax, [edi + 8]
mov dword [edi], vtable.ui::CDuiString.0
cmp ecx, eax
je 0x4387be
push ecx
call fcn.004fe1ff
add esp, 4
push 0xa0
push edi
call fcn.004e22e6
add esp, 8
mov al, 1
jmp 0x4387d2
xor al, al
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.004e1de4
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0x10