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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c934b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x6e0
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x1c], edi
mov esi, dword [edi + 0x10]
cmp esi, 0x2af8
jb 0x47a276
push 0x4d0335
push str.Too_many_controls.
mov ecx, 0x4e9a70
call fcn.004470d0
pop edi
pop esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [edi + 0x14]
cmp esi, eax
jb 0x47a2a2
add eax, 0x3e8
shl eax, 6
push eax
push dword [edi + 0x18]
call fcn.004b2c49
add esp, 8
test eax, eax
je 0x47a250
add dword [edi + 0x14], 0x3e8
mov esi, dword [edi + 0x10]
mov dword [edi + 0x18], eax
push 0x40
shl esi, 6
add esi, dword [edi + 0x18]
push 0
push esi
mov dword [ebp - 0x14], esi
call fcn.004afdf0
add esp, 0xc
lea eax, [ebp - 0x23c]
mov ecx, edi
push esi
push eax
call fcn.00481060
mov cl, byte [ebp + 8]
mov dword [ebp - 0x38], 0
cmp cl, 0x1a
jne 0x47a45b
mov ecx, dword [ebp + 0x10]
call fcn.00477a50
mov ecx, eax
mov dword [ebp - 0x38], ecx
test ecx, ecx
jne 0x47a322
mov ecx, dword [ebp + 0x10]
call fcn.00404660
mov edx, dword [0x4e7948]
xor ecx, ecx
test edx, edx
jle 0x47a31b
mov esi, dword [0x4e7944]
mov edi, dword [esi + ecx*4]
mov dword [ebp - 0x38], edi
cmp dword [edi + 4], eax
mov edi, dword [ebp - 0x1c]
je 0x47a366
inc ecx
cmp ecx, edx
jl 0x47a305
mov esi, dword [ebp - 0x14]
mov dword [ebp - 0x38], 0
mov cl, byte [ebp + 8]
mov al, cl
mov byte [ebp - 0x16], al
cmp cl, 0x13
jne 0x47a4be
cmp byte [edi + 0xc0], 0xff
jne 0x47a48d
push 0x4d0335
push str.Too_many_tab_controls.
mov ecx, 0x4e9a70
call fcn.004470d0
pop edi
pop esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0xc
mov esi, dword [ebp - 0x14]
mov byte [ebp - 0x16], 0x1a
mov al, byte [edi + 0xc1]
mov byte [esi + 6], al
mov al, byte [edi + 0xc2]
mov byte [esi + 7], al
cmp dword [edi + 0x10], 0
mov edx, dword [sym.imp.KERNEL32.dll_MulDiv]
jne 0x47a406
cmp dword [edi + 0x78], 0x80000000
jne 0x47a3c7
imul ecx, dword [edi + 0x50], 0x54
mov eax, dword [0x4e919c]
push 0x60
push dword [0x4e9a40]
movd xmm0, dword [ecx + eax + 0x44]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x4dd188]
cvttsd2si eax, xmm0
push eax
call edx
mov edx, dword [sym.imp.KERNEL32.dll_MulDiv]
mov dword [edi + 0x78], eax
cmp dword [edi + 0x7c], 0x80000000
jne 0x47a3fd
imul ecx, dword [edi + 0x50], 0x54
mov eax, dword [0x4e919c]
push 0x60
push dword [0x4e9a40]
movd xmm0, dword [ecx + eax + 0x44]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x4dd170]
cvttsd2si eax, xmm0
push eax
call edx
mov dword [edi + 0x7c], eax
mov eax, dword [edi + 0x78]
mov dword [edi + 0x80], eax
mov ah, byte [ebp + 8]
mov byte [esi + 4], ah
mov edx, dword [ebp - 0x23c]
mov al, byte [edi + 0x45]
or edx, 0x10000000
mov byte [ebp - 0xaa], al
mov ecx, edx
mov dword [ebp - 0x23c], ecx
cmp ah, 6
jne 0x47a4fc
or ecx, 0x4000
cmp byte [edi + 0x44], 0
mov dword [ebp - 0x23c], ecx
jne 0x47a522
mov ecx, edx
or ecx, 0x24000
mov dword [ebp - 0x23c], ecx
jmp 0x47a522
cmp cl, 0x14
jne 0x47a471
or byte [esi + 5], 0x80
mov byte [ebp + 8], 0x13
mov byte [ebp - 0x16], 0x13
jmp 0x47a333
cmp cl, 0x15
jne 0x47a325
mov cl, 0x13
mov word [ebp - 0xa8], 0x301
mov byte [ebp + 8], cl
jmp 0x47a325
mov byte [esi + 6], 0xff
mov ecx, edi
mov al, byte [edi + 0xc0]
mov byte [esi + 7], al
movzx eax, byte [edi + 0xc1]
push eax
call fcn.00486c30
test eax, eax
je 0x47a37f
push eax
mov ecx, edi
call fcn.00487110
jmp 0x47a37f
cmp cl, 0x19
jne 0x47a36d
cmp dword [edi + 8], 0
je 0x47a4f3
push 0x4d0335
push str.Too_many_status_bars.
mov ecx, 0x4e9a70
call fcn.004470d0
pop edi
pop esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0xc
mov byte [esi + 6], 0xff
jmp 0x47a37f
cmp byte [edi + 0x44], 0
je 0x47a50e
or ecx, 0x20000
mov dword [ebp - 0x23c], ecx
cmp ah, 2
je 0x47a546
cmp ah, 0x10
je 0x47a546
cmp ah, 0x11
je 0x47a546
cmp ah, 0x12
je 0x47a546
cmp byte [esi + 4], 0xa
mov byte [ebp - 0x33], 1
je 0x47a538
mov eax, dword [edi + 0x54]
mov dword [esi + 0x10], eax
mov ecx, dword [ebp - 0x23c]
mov eax, dword [edi + 0x54]
mov dword [ebp - 0x1e0], eax
mov ah, byte [ebp + 8]
jmp 0x47a55c
mov byte [ebp - 0x33], 0
cmp ah, 0x12
jne 0x47a55c
mov dword [esi + 0x10], 0xff000000
mov ecx, dword [ebp - 0x23c]
movzx eax, ah
mov dword [ebp - 0x6c], eax
add eax, 0xfffffffc
cmp eax, 0x16
ja case.0x47a56e.6
jmp dword [eax*4 + 0x47d630]
or ecx, 0x210000
mov dword [ebp - 0x23c], ecx
jmp case.0x47a56e.6
or ecx, 0x210042
mov dword [ebp - 0x23c], ecx
jmp case.0x47a56e.6
or ecx, 0x210080
or dword [ebp - 0x234], 0x200
mov dword [ebp - 0x23c], ecx
jmp case.0x47a56e.6
or dword [ebp - 0x22c], 0x30
or ecx, 0x10008
or dword [ebp - 0x234], 0x200
mov dword [ebp - 0x23c], ecx
mov dword [ebp - 0x228], 1
jmp case.0x47a56e.6
or ecx, 0x10027
or dword [ebp - 0x234], 0x200
mov dword [ebp - 0x23c], ecx
jmp case.0x47a56e.6
or ecx, 0x10000
or dword [ebp - 0x234], 0x200
mov dword [ebp - 0x23c], ecx
jmp case.0x47a56e.6
or ecx, 0x36
mov dword [ebp - 0x23c], ecx
jmp case.0x47a56e.6
or ecx, 0x1000c
mov dword [ebp - 0x23c], ecx
jmp case.0x47a56e.6
or ecx, 1
mov dword [ebp - 0x23c], ecx
jmp case.0x47a56e.6
movzx eax, byte [ebp - 0xaa]
xor edx, edx
cmp byte [ebp - 0xa8], dl
cmove eax, edx
or ecx, 0x10200
mov byte [ebp - 0xaa], al
mov dword [ebp - 0x23c], ecx
jmp case.0x47a56e.6
or ecx, 0x4000000
mov dword [ebp - 0x23c], ecx
jmp case.0x47a56e.6
test dword [edi + 0x3c], 0x40000
je 0x47a68a
or ecx, 0x100
or ecx, 0x800
mov dword [ebp - 0x23c], ecx
jmp case.0x47a56e.6
cmp byte [0x4ea24b], 0
je case.0x47a56e.6
or ecx, 0x10000
mov dword [ebp - 0x23c], ecx
jmp case.0x47a56e.6
mov eax, dword [ebp - 0x38]
test eax, eax
je case.0x47a56e.6
push dword [edi + 4]
push dword [eax + 4]
call dword [sym.imp.USER32.dll_SetParent]
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + 0x3c]
test eax, eax
jns 0x47a6d9
and eax, 0x3fffffff
or eax, 0x40000000
mov dword [ecx + 0x3c], eax
push eax
push 0xfffffffffffffff0
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov eax, dword [ebp - 0x38]
push dword [eax + 4]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne case.0x47a56e.6
mov ecx, dword [ebp - 0x38]
push 0x4d0335
push 0x4d0335
call fcn.00481480
push 0
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x23c]
mov ecx, edi
push eax
push dword [ebp + 0xc]
call fcn.0047e410
test eax, eax
jne 0x47a733
pop edi
pop esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0xc
mov dl, byte [ebp + 8]
mov eax, dword [ebp - 0x1e0]
cmp dl, 0xa
je 0x47a744
mov eax, dword [esi + 0x10]
cmp eax, 0xff000000
mov eax, dword [ebp - 0x1dc]
setne byte [ebp - 0xae]
cmp eax, 0xff000000
jne 0x47a76e
cmp dl, 0xb
je 0x47a78f
mov dword [ebp - 0x1dc], 0xffffffff
jmp 0x47a78f
cmp eax, 0xffffffff
jne 0x47a78f
mov ecx, dword [edi + 0x5c]
cmp ecx, 0xff000000
je 0x47a78f
cmp dl, 0x12
je 0x47a78f
cmp dl, 0x19
cmovne eax, ecx
mov dword [ebp - 0x1dc], eax
mov edx, dword [ebp - 0x214]
mov edi, dword [ebp - 0x238]
movss xmm0, dword [ebp - 0x20c]
movss xmm1, dword [0x4dd158]
cmp edx, 0x80000000
jne 0x47a804
cmp dword [ebp - 0x210], 0x80000000
jne 0x47a804
comiss xmm0, xmm1
ja 0x47a804
mov eax, dword [ebp + 0x10]
mov esi, eax
test eax, eax
je 0x47a7fa
mov dl, byte [eax]
test dl, dl
je 0x47a7f4
mov ecx, 0x4db7dc
mov al, 0xa
nop word [eax + eax]
cmp dl, al
je 0x47a7fe
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x47a7e0
mov dl, byte [esi + 1]
inc esi
test dl, dl
jne 0x47a7d3
mov edx, dword [ebp - 0x214]
xor esi, esi
jmp 0x47a80e
mov edx, dword [ebp - 0x214]
mov esi, edi
not esi
and esi, 0x2000
mov eax, dword [ebp - 0x230]
mov ecx, edi
not eax
mov dword [ebp - 0x250], esi
and eax, dword [ebp - 0x234]
not ecx
and ecx, dword [ebp - 0x23c]
mov dword [ebp - 0x30], eax
or ecx, 0x40000000
mov eax, dword [ebp - 0x6c]
add eax, 0xfffffffd
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x68], eax
cmp eax, 0x10
ja case.0x47a84d.10
movzx eax, byte [eax + 0x47d6b4]
jmp dword [eax*4 + 0x47d68c]
and ecx, 0xfffffff7
or ecx, 7
jmp 0x47a869
test cl, 1
je 0x47a8b1
and ecx, 0xfffffff1
or ecx, 1
or ecx, esi
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
cmp byte [ebp + 8], 4
jne 0x47aafa
cmp dword [edi + 0xc], 0
jne 0x47aafa
test byte [edi + 5], 1
jne 0x47aafa
mov ecx, dword [ecx]
cmp byte [ecx], 0x31
jne 0x47a9d5
cmp byte [ecx + 1], 0
jne 0x47a9d5
mov byte [ebp - 0x6ec], 0
jmp 0x47a9ed
and ecx, 0xfffffff0
jmp 0x47a867
mov eax, ecx
and eax, 6
cmp al, 6
jne 0x47a8c7
and ecx, 0xfffffff6
or ecx, 6
jmp 0x47a867
and ecx, 0xfffffff3
or ecx, 3
jmp 0x47a867
and ecx, 0xfffffff9
or ecx, 9
test ecx, 0x20000
je 0x47a867
test edi, 0x10000
jne 0x47a867
or ecx, 0x10000
jmp 0x47a867
or ecx, 3
jmp 0x47a869
mov edi, dword [ebp - 0x14]
test cl, 1
je 0x47a90e
and ecx, 0xfffffff1
or ecx, 1
mov dword [ebp - 0x10], ecx
jmp 0x47a86f
and ecx, 0xfffffff2
or ecx, 2
mov dword [ebp - 0x10], ecx
jmp 0x47a86f
or ecx, 1
jmp 0x47a869
comiss xmm0, xmm1
ja 0x47a943
push 0xa
push dword [ebp + 0x10]
call fcn.004b7be9
mov edi, dword [ebp - 0x238]
add esp, 8
mov ecx, dword [ebp - 0x10]
test eax, eax
je 0x47a94f
mov eax, edi
not eax
and eax, 4
or ecx, eax
mov dword [ebp - 0x10], ecx
test cl, 4
je case.0x47a84d.10
not edi
and edi, 0x201040
or ecx, edi
jmp 0x47a869
mov edi, dword [ebp - 0x14]
or ecx, 0x4000000
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x1c]
cmp dword [ecx + 0x60], 0
je 0x47a982
test byte [edi + 5], 0x20
je 0x47a98b
cmp dword [edi + 0x10], 0xff000000
je 0x47a99b
or dword [ebp - 0x10], 0x2000
mov byte [ebp - 0xaa], 0
jmp 0x47a9a2
and dword [ebp - 0x10], 0xffffdfff
mov al, byte [ebp - 0xa7]
cmp edx, 0x80000000
je 0x47a9b8
and al, 0xfe
mov byte [ebp - 0xa7], al
cmp dword [ebp - 0x210], 0x80000000
je 0x47a872
and al, 0xfd
mov byte [ebp - 0xa7], al
jmp 0x47a872
lea edx, [ebp - 0x6ec]
sub edx, ecx
nop dword [eax]
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [ecx + edx - 1], al
test al, al
jne 0x47a9e0
push dword [ebp + 0x10]
lea eax, [ebp - 0x6ec]
push str.Button_s
push 0x400
push eax
call fcn.0049a590
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push 0x4d0335
mov edx, 0x4db7ec
lea ecx, [ebp - 0x6ec]
call fcn.0049acc0
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push 0x4d0335
mov edx, 0x4daa28
lea ecx, [ebp - 0x6ec]
call fcn.0049acc0
add esp, 0x40
lea ecx, [ebp - 0x6ec]
mov edx, 0x4d0378
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push 0x4d0335
call fcn.0049acc0
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push 0x4d0335
mov edx, 0x4d9944
lea ecx, [ebp - 0x6ec]
call fcn.0049acc0
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push 0x4d0335
mov edx, 0x4db7f0
lea ecx, [ebp - 0x6ec]
call fcn.0049acc0
add esp, 0x48
lea ecx, [ebp - 0x6ec]
mov edx, 0x4db7f4
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push 0x4d0335
call fcn.0049acc0
add esp, 0x18
lea eax, [ebp - 0x6ec]
mov ecx, 0x4e9a70
push 4
push 0
push eax
call fcn.00430e80
mov esi, eax
test esi, esi
je 0x47aaea
mov ecx, dword [esi]
push esi
call dword [ecx + 4]
mov ecx, dword [edi + 0xc]
test ecx, ecx
je 0x47aaf7
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [edi + 0xc], esi
movzx eax, byte [edi + 6]
mov esi, dword [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.00486c30
mov ecx, eax
mov dword [ebp - 0x2e0], 0
mov dword [ebp - 0x40], ecx
mov dword [ebp - 4], 0
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x70], edi
test edi, edi
je 0x47ab3b
mov eax, dword [esi + 0x18]
mov ecx, edi
shl ecx, 6
add eax, 0xffffffc0
add eax, ecx
mov ecx, dword [ebp - 0x40]
jmp 0x47ab41
lea eax, [ebp - 0x2ec]
cmp dword [ebp - 0x21c], 0x80000000
mov dword [ebp - 0x44], eax
jne 0x47ac33
cmp dword [ebp - 0x218], 0x80000000
jne 0x47ac33
test ecx, ecx
je 0x47abca
xor edx, edx
test edi, edi
je 0x47aba7
mov ecx, dword [ebp - 0x14]
mov eax, dword [esi + 0x18]
mov esi, edi
mov edi, dword [ebp - 0x14]
mov cl, byte [ecx + 7]
mov byte [ebp + 0xf], cl
lea ecx, [eax + 6]
mov ah, byte [ebp + 0xf]
cmp byte [ecx + 1], ah
jne 0x47ab92
mov al, byte [ecx]
cmp al, byte [edi + 6]
jne 0x47ab92
inc edx
add ecx, 0x40
sub esi, 1
jne 0x47ab85
mov edi, dword [ebp - 0x70]
mov esi, dword [ebp - 0x1c]
test edx, edx
jne 0x47abca
mov ecx, dword [ebp - 0x40]
push ecx
lea eax, [ebp - 0x80]
mov ecx, esi
push eax
call fcn.00486e90
mov eax, dword [esi + 0x78]
add eax, dword [ebp - 0x80]
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x21c], eax
mov eax, dword [esi + 0x7c]
add eax, dword [ebp - 0x7c]
jmp 0x47abe5
mov eax, dword [esi + 0x80]
mov dword [ebp - 0x21c], eax
mov eax, dword [esi + 0x8c]
add eax, dword [esi + 0x84]
add eax, dword [esi + 0x7c]
mov dword [ebp - 0x218], eax
mov ah, byte [ebp + 8]
cmp ah, 1
je 0x47abf8
cmp ah, 0x17
jne 0x47ac36
test edi, edi
je 0x47ac36
mov edx, dword [ebp - 0x44]
mov al, byte [edx + 4]
cmp al, 1
je 0x47ac0a
cmp al, 0x17
jne 0x47ac36
mov ecx, dword [ebp - 0x14]
mov al, byte [edx + 6]
cmp al, byte [ecx + 6]
jne 0x47ac36
mov al, byte [edx + 7]
cmp al, byte [ecx + 7]
jne 0x47ac36
push 0x60
push dword [0x4e9a40]
push 8
call dword [sym.imp.KERNEL32.dll_MulDiv]
add dword [ebp - 0x218], eax
mov ah, byte [ebp + 8]
cmp ah, 0xe
je 0x47ac49
cmp ah, 0xa
je 0x47ac49
cmp ah, 0xb
je 0x47ac49
xor cl, cl
jmp 0x47ac4b
mov cl, 1
mov ch, cl
mov byte [ebp + 0xf], cl
xor ch, 1
cmp dword [ebp - 0x210], 0x80000000
mov byte [ebp - 0x15], ch
jne 0x47add8
movss xmm1, dword [0x4dd148]
comiss xmm1, dword [ebp - 0x20c]
jbe 0x47add8
mov edi, dword [ebp - 0x68]
cmp edi, 0x17
ja case.0x47ac8e.1
movzx eax, byte [edi + 0x47d6f8]
jmp dword [eax*4 + 0x47d6c8]
mov edx, dword [ebp - 0x10]
mov eax, edx
and al, 3
mov dword [ebp - 0x20c], 0x40400000
cmp al, 1
je 0x47ae17
test edx, 0x400
jne 0x47ae17
xor ch, ch
mov byte [ebp - 0x15], ch
jmp 0x47ae17
mov dword [ebp - 0x20c], 0x40000000
jmp 0x47ae17
mov eax, dword [ebp + 0x10]
cmp byte [eax], 0
jne case.0x47ac8e.1
test byte [ebp - 0x10], 4
je 0x47acf4
mov dword [ebp - 0x20c], 0x40400000
jmp 0x47ae17
mov dword [ebp - 0x20c], 0x3f800000
jmp case.0x47ac8e.1
mov dword [ebp - 0x20c], 0x3f800000
jmp 0x47ae17
test byte [ebp - 0x10], 0x40
je 0x47ad47
imul ecx, dword [esi + 0x50], 0x54
mov eax, dword [0x4e919c]
push 0x60
push dword [0x4e9a40]
mov eax, dword [ecx + eax + 0x44]
add eax, eax
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov cl, byte [ebp + 0xf]
mov ch, byte [ebp - 0x15]
mov dword [ebp - 0x210], eax
jmp case.0x47ac8e.1
mov dword [ebp - 0x20c], 0x40a00000
jmp case.0x47ac8e.1
mov edx, dword [ebp - 0x10]
test dl, 2
je 0x47ad6d
mov dword [ebp - 0x20c], 0x40a00000
jmp 0x47ae17
push dword [ebp - 0x1f0]
mov ecx, esi
push edx
call fcn.00486400
mov cl, byte [ebp + 0xf]
mov ch, byte [ebp - 0x15]
mov dword [ebp - 0x210], eax
jmp case.0x47ac8e.1
test byte [ebp - 0x10], 4
je 0x47ad18
mov dword [ebp - 0x20c], 0x40a00000
jmp 0x47ae17
mov dword [ebp - 0x20c], 0x41200000
jmp 0x47ae17
mov eax, dword [ebp - 0x38]
test eax, eax
je case.0x47ac8e.1
lea ecx, [ebp - 0x264]
push ecx
push dword [eax + 4]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x258]
sub eax, dword [ebp - 0x260]
mov cl, byte [ebp + 0xf]
mov ch, byte [ebp - 0x15]
mov dword [ebp - 0x210], eax
jmp case.0x47ac8e.1
mov al, byte [ebp + 8]
cmp al, 7
je 0x47ade3
cmp al, 8
jne 0x47adea
or dword [ebp - 0x10], 0x400
mov edi, dword [ebp - 0x68]
movss xmm0, dword [ebp - 0x20c]
xorps xmm1, xmm1
comiss xmm0, xmm1
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x3c], 0
jbe 0x47af97
movss xmm1, dword [0x4dd148]
cmp byte [ebp + 8], 3
je 0x47ae26
mov al, byte [ebp - 0x16]
sub al, 7
cmp al, 1
ja 0x47ae3a
movss xmm0, dword [ebp - 0x20c]
addss xmm0, xmm1
movss dword [ebp - 0x20c], xmm0
test ch, ch
je 0x47af61
push dword [esi + 4]
call dword [sym.imp.USER32.dll_GetDC]
imul edx, dword [esi + 0x50], 0x54
mov ecx, dword [0x4e919c]
mov dword [ebp - 0x28], eax
push dword [edx + ecx + 0x50]
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x29c]
push eax
push dword [ebp - 0x28]
call dword [sym.imp.GDI32.dll_GetTextMetricsA]
movss xmm2, dword [ebp - 0x20c]
cvtps2pd xmm0, xmm2
addsd xmm0, qword [0x4dd168]
cvttsd2si ecx, xmm0
movd xmm0, dword [ebp - 0x29c]
cvtdq2ps xmm0, xmm0
lea eax, [ecx - 1]
imul eax, dword [ebp - 0x28c]
mulss xmm0, xmm2
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
cvtps2pd xmm0, xmm1
addsd xmm0, qword [0x4dd168]
cvttsd2si edx, xmm0
mov dword [ebp - 0x210], edx
cmp edi, 0x15
ja case.0x47aed2.2
movzx eax, byte [edi + 0x47d724]
jmp dword [eax*4 + 0x47d710]
push 0x60
push dword [0x4e9a40]
push 8
call dword [sym.imp.KERNEL32.dll_MulDiv]
add dword [ebp - 0x210], eax
test dword [ebp - 0x10], 0x100000
mov edi, dword [sym.imp.USER32.dll_GetSystemMetrics]
je 0x47af08
push 3
call edi
add dword [ebp - 0x210], eax
mov ecx, dword [ebp - 0x28]
jmp 0x47af9f
imul ecx, dword [esi + 0x50], 0x54
mov eax, dword [0x4e919c]
push 0x60
push dword [0x4e9a40]
mov eax, dword [ecx + eax + 0x44]
add eax, 2
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
add dword [ebp - 0x210], eax
mov ecx, dword [ebp - 0x28]
jmp 0x47af99
mov eax, dword [esi + 0x7c]
imul eax, ecx
mov ecx, dword [ebp - 0x28]
add eax, edx
mov dword [ebp - 0x210], eax
jmp 0x47af99
lea eax, [ecx + 1]
mov ecx, dword [ebp - 0x28]
imul eax, dword [esi + 0x7c]
add eax, edx
mov dword [ebp - 0x210], eax
jmp 0x47af99
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x28], 0
test cl, cl
jne 0x47af97
push 0x60
push dword [0x4e9a40]
push 0x1e
call dword [sym.imp.KERNEL32.dll_MulDiv]
xor ecx, ecx
mov dword [ebp - 0x210], eax
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x28], ecx
jmp 0x47af99
xor ecx, ecx
mov edi, dword [sym.imp.USER32.dll_GetSystemMetrics]
cmp dword [ebp - 0x210], 0x80000000
mov edx, dword [ebp - 0x214]
mov byte [ebp - 0x31], 0
je 0x47afc1
cmp edx, 0x80000000
jne 0x47b5dd
xor eax, eax
mov esi, 0x400
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x6c]
dec eax
cmp eax, 0x16
ja case.0x47afe2.2
movzx eax, byte [eax + 0x47d748]
jmp dword [eax*4 + 0x47d73c]
mov eax, dword [ebp + 0x10]
cmp byte [eax], 0
je case.0x47afe2.2
test ecx, ecx
jne 0x47b024
mov esi, dword [ebp - 0x1c]
push dword [esi + 4]
call dword [sym.imp.USER32.dll_GetDC]
imul ecx, dword [esi + 0x50], 0x54
mov edx, eax
mov eax, dword [0x4e919c]
mov dword [ebp - 0x28], edx
push dword [ecx + eax + 0x50]
push edx
call dword [sym.imp.GDI32.dll_SelectObject]
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x29c]
push eax
push ecx
call dword [sym.imp.GDI32.dll_GetTextMetricsA]
mov esi, dword [ebp - 0x288]
add esi, 4
test dword [ebp - 0x10], 0x200000
mov dword [ebp - 0x24], esi
je 0x47b050
push 2
call edi
add esi, eax
mov dword [ebp - 0x24], esi
mov esi, dword [ebp + 0x10]
cmp byte [esi], 0
je 0x47b081
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47b060
sub ecx, edx
cmp byte [ecx + esi - 1], 0xa
jne 0x47b081
mov eax, dword [ebp - 0x28c]
mov ecx, dword [ebp - 0x29c]
add eax, ecx
mov dword [ebp - 0x78], eax
mov edx, dword [ebp - 0x214]
mov esi, 0x2c40
mov edi, dword [ebp - 0x28]
mov eax, esi
mov dword [ebp + 0xc], eax
test edi, edi
jne 0x47b0cb
mov edi, dword [ebp - 0x1c]
push dword [edi + 4]
call dword [sym.imp.USER32.dll_GetDC]
imul ecx, dword [edi + 0x50], 0x54
mov edx, eax
mov eax, dword [0x4e919c]
mov dword [ebp - 0x28], edx
push dword [ecx + eax + 0x50]
push edx
call dword [sym.imp.GDI32.dll_SelectObject]
mov edx, dword [ebp - 0x214]
mov edi, dword [ebp - 0x28]
mov dword [ebp - 0x3c], eax
mov eax, esi
mov cl, byte [ebp + 8]
cmp cl, 1
jne 0x47b170
mov esi, dword [ebp - 0x10]
and esi, 0x80
or esi, 4
shl esi, 4
or esi, eax
mov edi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x10]
test eax, 0x800000
je 0x47b124
cmp cl, 1
je 0x47b0ff
cmp cl, 0x17
jne 0x47b124
push 5
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov edi, eax
add edi, edi
push 6
mov dword [ebp - 0x24], edi
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov edx, dword [ebp - 0x214]
add eax, eax
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x10]
mov cl, byte [ebp + 8]
cmp edx, 0x80000000
je 0x47b148
cmp cl, 4
je 0x47b13e
cmp cl, 5
je 0x47b13e
cmp cl, 6
jne 0x47b145
test eax, 0x2000
je 0x47b148
or esi, 0x10
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x248], 0
cmp edx, 0x80000000
jne 0x47b1b3
mov dword [ebp - 0x244], 0
jmp 0x47b1bb
cmp cl, 5
je 0x47b17e
cmp cl, 6
jne 0x47b0e8
lea eax, [ebp - 0x29c]
push eax
push edi
call dword [sym.imp.GDI32.dll_GetTextMetricsA]
push 0x47
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov edi, dword [ebp - 0x24]
add eax, dword [ebp - 0x288]
add edi, 2
mov edx, dword [ebp - 0x214]
add edi, eax
mov cl, byte [ebp + 8]
mov dword [ebp - 0x24], edi
jmp 0x47b0eb
sub edx, edi
mov dword [ebp - 0x244], edx
mov eax, dword [ebp - 0x210]
xor edx, edx
cmp eax, 0x80000000
cmove eax, edx
mov dword [ebp - 0x240], eax
xor al, al
mov byte [ebp + 0xf], al
cmp cl, 0x17
jne 0x47b382
mov eax, dword [ebp - 0x10]
mov ecx, esi
or ecx, 0x800
and al, 4
cmove ecx, esi
mov dword [ebp - 0x58], ecx
mov ecx, dword [ebp + 0x10]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47b1f8
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.004ae7c0
mov edx, eax
add esp, 4
mov eax, dword [ebp + 0x10]
mov edi, edx
mov esi, eax
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x74], esi
mov dword [ebp - 0x20], edi
mov cl, byte [eax]
test cl, cl
je 0x47b324
nop dword [eax]
cmp cl, 0x3c
jne 0x47b305
mov cl, byte [esi + 1]
call fcn.00412890
cmp al, 0x41
jne 0x47b305
add esi, 2
nop dword [eax]
mov al, byte [esi]
cmp al, 0x20
je 0x47b25a
cmp al, 9
jne 0x47b25d
inc esi
jmp 0x47b250
cmp al, 0x3e
je 0x47b2b5
mov cl, byte [esi]
movzx eax, cl
test eax, 0xffffff80
jne 0x47b284
push 0x107
push eax
call fcn.004b47c1
mov cl, byte [esi]
add esp, 8
test eax, eax
je 0x47b284
inc esi
jmp 0x47b261
cmp cl, 0x3d
jne 0x47b305
cmp byte [esi + 1], 0x22
jne 0x47b305
lea eax, [esi + 2]
push 0x22
push eax
call fcn.004b7be9
add esp, 8
test eax, eax
je 0x47b305
lea esi, [eax + 1]
mov al, byte [esi]
cmp al, 0x20
je 0x47b2ae
cmp al, 9
jne 0x47b2b1
inc esi
jmp 0x47b2a4
cmp al, 0x3e
jne 0x47b261
add esi, 1
je 0x47b305
mov edx, 0x4db7f8
mov ecx, esi
call fcn.0049a8f0
mov edi, eax
mov dword [ebp - 0x254], edi
test edi, edi
je 0x47b302
mov edx, edi
xor eax, eax
sub edx, esi
xor ecx, ecx
cmp esi, edi
cmova edx, eax
test edx, edx
je 0x47b2fa
mov edi, dword [ebp - 0x20]
mov al, byte [ecx + esi]
inc ecx
mov byte [edi], al
inc edi
cmp ecx, edx
jb 0x47b2e6
mov dword [ebp - 0x20], edi
mov edi, dword [ebp - 0x254]
lea ecx, [edi + 3]
mov edi, dword [ebp - 0x20]
jmp 0x47b310
mov edi, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x74]
mov al, byte [ecx]
mov byte [edi], al
inc edi
mov dword [ebp - 0x20], edi
inc ecx
mov dword [ebp - 0x74], ecx
mov esi, dword [ebp - 0x74]
mov cl, byte [ecx]
test cl, cl
jne 0x47b230
mov edx, dword [ebp - 0x70]
mov byte [edi], 0
cmp edi, edx
jbe 0x47b331
mov al, byte [edi - 1]
mov byte [ebp + 0xf], al
push dword [ebp - 0x58]
cmp byte [edx], 0
lea eax, [ebp - 0x24c]
push eax
push 0xffffffffffffffff
mov eax, 0x4dabb4
cmovne eax, edx
push eax
push dword [ebp - 0x28]
call dword [sym.imp.USER32.dll_DrawTextA]
push dword [ebp - 0x70]
mov edi, eax
call fcn.004ae7c9
add esp, 4
mov cl, byte [ebp + 0xf]
mov esi, dword [ebp - 0x244]
mov eax, dword [ebp - 0x6c]
sub esi, dword [ebp - 0x24c]
sub eax, 1
je 0x47b3c8
sub eax, 3
je 0x47b3bf
sub eax, 8
je 0x47b3c8
jmp 0x47b3eb
push esi
mov esi, dword [ebp + 0x10]
lea eax, [ebp - 0x24c]
push eax
push 0xffffffffffffffff
mov eax, 0x4dabb4
cmp byte [esi], dl
cmovne eax, esi
push eax
push dword [ebp - 0x28]
call dword [sym.imp.USER32.dll_DrawTextA]
cmp byte [esi], 0
mov edi, eax
je 0x47b35f
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47b3b0
sub ecx, edx
mov cl, byte [ecx + esi - 1]
jmp 0x47b362
cmp dword [ebp - 0x250], 0
jne 0x47b3eb
test cl, cl
je 0x47b3eb
movsx eax, cl
lea ecx, [ebp - 0x60]
push ecx
push eax
push eax
push dword [ebp - 0x28]
call dword [sym.imp.GDI32.dll_GetCharABCWidthsA]
test eax, eax
je 0x47b3eb
mov eax, dword [ebp - 0x58]
test eax, eax
jns 0x47b3eb
sub esi, eax
mov eax, dword [ebp - 0x210]
mov cl, byte [ebp + 8]
cmp eax, 0x80000000
je 0x47b40c
cmp edi, eax
jle 0x47b51a
cmp cl, 0xc
je 0x47b51a
mov edx, dword [ebp - 0x78]
add edx, edi
mov dword [ebp - 0x210], edx
cmp cl, 0xc
jne 0x47b4f1
push 0x60
push dword [0x4e9a40]
push 8
call dword [sym.imp.KERNEL32.dll_MulDiv]
add dword [ebp - 0x210], eax
test dword [ebp - 0x10], 0x100000
je 0x47b44d
push 3
call dword [sym.imp.USER32.dll_GetSystemMetrics]
add dword [ebp - 0x210], eax
mov edi, dword [ebp - 0x1c]
mov cl, byte [ebp + 8]
mov edx, dword [ebp - 0x214]
cmp edx, 0x80000000
je 0x47b465
cmp esi, edx
jle case.0x47afe2.2
mov edx, dword [ebp - 0x24]
add edx, esi
mov byte [ebp - 0x31], 1
mov dword [ebp - 0x214], edx
cmp cl, 4
jne case.0x47afe2.2
push 0x2d
call dword [sym.imp.USER32.dll_GetSystemMetrics]
imul edx, dword [edi + 0x50], 0x54
add eax, eax
mov ecx, dword [0x4e919c]
mov ecx, dword [edx + ecx + 0x44]
mov edx, dword [ebp - 0x214]
add ecx, eax
add edx, ecx
mov dword [ebp - 0x214], edx
mov edi, dword [ebp - 0x1c]
mov esi, dword [sym.imp.KERNEL32.dll_MulDiv]
cmp edx, 0x80000000
jne case.0x47b4ea.1
imul ecx, dword [edi + 0x50], 0x54
mov eax, dword [0x4e919c]
push 0x60
push dword [0x4e9a40]
mov eax, dword [ecx + eax + 0x44]
mov ecx, eax
shl ecx, 4
sub ecx, eax
push ecx
call esi
mov edx, eax
mov eax, dword [ebp - 0x68]
cmp eax, 0x17
ja case.0x47b4ea.1
movzx ecx, byte [eax + 0x47d784]
jmp dword [ecx*4 + 0x47d760]
mov edi, dword [ebp - 0x1c]
cmp cl, 4
jne 0x47b453
imul ecx, dword [edi + 0x50], 0x54
mov eax, dword [0x4e919c]
mov eax, dword [ecx + eax + 0x44]
add eax, 2
add eax, edx
mov dword [ebp - 0x210], eax
jmp 0x47b450
mov edi, dword [ebp - 0x1c]
jmp 0x47b453
mov dword [ebp - 0x214], edx
jmp case.0x47b4ea.1
lea eax, [edx + edx]
mov dword [ebp - 0x214], eax
jmp case.0x47b4ea.1
mov eax, dword [ebp - 0x10]
test al, 0x40
je 0x47b571
mov dword [ebp - 0x214], edx
jmp 0x47b5e9
mov eax, dword [ebp - 0x10]
test al, 2
je 0x47b542
push dword [ebp - 0x1f0]
mov ecx, edi
push eax
call fcn.00486400
mov dword [ebp - 0x214], eax
jmp case.0x47b4ea.1
mov eax, dword [ebp - 0x10]
test al, 4
je 0x47b542
imul ecx, dword [edi + 0x50], 0x54
mov eax, dword [0x4e919c]
push 0x60
push dword [0x4e9a40]
mov eax, dword [ecx + eax + 0x44]
add eax, eax
push eax
call esi
mov dword [ebp - 0x214], eax
jmp case.0x47b4ea.1
mov eax, dword [edi + 0x78]
lea eax, [edx + eax*2]
mov dword [ebp - 0x214], eax
jmp case.0x47b4ea.1
mov eax, dword [edi + 0x78]
lea eax, [eax + eax*2]
lea eax, [eax + edx*2]
mov dword [ebp - 0x214], eax
jmp case.0x47b4ea.1
mov eax, dword [ebp - 0x38]
test eax, eax
je case.0x47b4ea.1
lea ecx, [ebp - 0x264]
push ecx
push dword [eax + 4]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x25c]
sub eax, dword [ebp - 0x264]
mov dword [ebp - 0x214], eax
jmp case.0x47b4ea.1
mov edi, dword [ebp - 0x1c]
mov esi, dword [sym.imp.KERNEL32.dll_MulDiv]
mov eax, dword [ebp - 0x10]
cmp byte [ebp + 8], 0xc
jne 0x47b6ec
test al, 4
jne 0x47b6ec
movss xmm0, dword [0x4dd148]
comiss xmm0, dword [ebp - 0x20c]
jbe 0x47b6ec
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x47b63f
push dword [edi + 4]
call dword [sym.imp.USER32.dll_GetDC]
imul ecx, dword [edi + 0x50], 0x54
mov edx, eax
mov eax, dword [0x4e919c]
mov dword [ebp - 0x28], edx
push dword [ecx + eax + 0x50]
push edx
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x29c]
push ecx
push eax
call dword [sym.imp.GDI32.dll_GetTextMetricsA]
push 0x60
push dword [0x4e9a40]
push 8
call esi
mov esi, dword [ebp - 0x210]
mov ecx, dword [ebp - 0x29c]
sub esi, eax
mov edx, dword [ebp - 0x10]
sub esi, ecx
test edx, 0x100000
je 0x47b687
push 3
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, dword [ebp - 0x29c]
sub esi, eax
mov edx, dword [ebp - 0x10]
test esi, esi
jle 0x47b6e2
mov eax, dword [ebp - 0x28c]
add eax, ecx
movd xmm1, esi
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
addss xmm1, dword [0x4dd148]
comiss xmm1, dword [0x4dd158]
movss dword [ebp - 0x20c], xmm1
jbe 0x47b6ec
mov ecx, dword [ebp - 0x238]
not ecx
mov eax, ecx
and eax, 4
or edx, eax
mov dword [ebp - 0x10], edx
test dl, 4
je 0x47b6ec
and ecx, 0x201040
or edx, ecx
mov dword [ebp - 0x10], edx
jmp 0x47b6ec
mov dword [ebp - 0x20c], 0x3f800000
cmp byte [ebp - 0xaa], 0
mov eax, dword [edi + 0x10]
sete byte [ebp - 0x32]
mov byte [ebp - 0x16], 0
add eax, 3
mov byte [ebp - 0x29], 0
mov dword [ebp - 0x24], eax
mov eax, dword [edi + 4]
push eax
mov dword [ebp - 0x20], eax
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x47b72a
push dword [edi + 4]
call dword [sym.imp.USER32.dll_IsIconic]
mov byte [ebp + 0xf], 1
test eax, eax
je 0x47b72e
mov byte [ebp + 0xf], 0
mov edx, dword [ebp - 0x14]
mov esi, dword [sym.imp.USER32.dll_GetWindowLongA]
mov byte [ebp - 0x34], 0
cmp byte [edx + 6], 0xff
jae 0x47b7cd
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x47b7e7
push str.ahk_dlg
push dword [eax]
call dword [sym.imp.USER32.dll_GetPropA]
test eax, eax
je 0x47b798
mov ecx, dword [ebp - 0x21c]
mov dword [ebp - 0x5c], ecx
mov ecx, dword [ebp - 0x218]
push 1
mov dword [ebp - 0x58], ecx
lea ecx, [ebp - 0x5c]
push ecx
push eax
push dword [edi + 4]
mov dword [ebp - 0x20], eax
call dword [sym.imp.USER32.dll_MapWindowPoints]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x218], eax
mov eax, dword [ebp - 0x40]
push 0xfffffffffffffff0
push dword [eax]
call esi
test eax, 0x10000000
je 0x47b7e4
mov eax, dword [ebp - 0x40]
push 0
push 0
push 0x130b
push dword [eax]
call dword [sym.imp.USER32.dll_SendMessageA]
mov edx, dword [ebp - 0x14]
movzx ecx, byte [edx + 7]
cmp eax, ecx
jne 0x47b7e7
mov al, byte [ebp + 0xf]
mov byte [ebp - 0x34], al
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x6c]
dec eax
cmp eax, 0x19
ja case.0x47b7dd.20
jmp dword [eax*4 + 0x47d79c]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
and ecx, 0xefffffff
mov dword [ebp - 0x10], ecx
jmp 0x47b7d0
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47b806
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47b808
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47b819
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47b81b
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push dword [ebp + 0x10]
push str.static
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov edx, dword [ebp - 0x14]
mov dword [edx], eax
jmp case.0x47b7dd.20
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47b876
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47b878
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47b889
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47b88b
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push dword [ebp + 0x10]
push str.SysLink
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
jmp case.0x47b7dd.20
mov eax, dword [ebp - 0x214]
xor ecx, ecx
mov edx, dword [ebp - 0x210]
cmp eax, 0x80000000
mov esi, dword [edi + 0xcc]
cmove eax, ecx
cmp edx, 0x80000000
mov dword [ebp - 0x214], eax
cmove edx, ecx
mov dword [ebp - 0x210], edx
test esi, esi
je 0x47b911
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x47b913
xor esi, esi
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47b924
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47b926
xor ecx, ecx
push 0
push dword [0x4e79b8]
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push edx
push eax
mov eax, dword [ebp - 0x218]
sub eax, esi
mov esi, dword [ebp + 0x10]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push esi
push str.static
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov edx, dword [ebp - 0x14]
mov edi, dword [ebp - 0x1c]
mov dword [edx], eax
test eax, eax
je case.0x47b7dd.20
push dword [ebp - 0x1cc]
mov ecx, edi
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push esi
push edx
call fcn.00481330
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
test eax, eax
je 0x47d0a9
mov byte [ebp - 0x16], 1
jmp 0x47d0a9
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47b9b0
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47b9b2
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47b9c3
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47b9c5
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push dword [ebp + 0x10]
push str.button
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
jmp case.0x47b7dd.20
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47ba20
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47ba22
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47ba33
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47ba35
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push dword [ebp + 0x10]
push str.button
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
test eax, eax
je case.0x47b7dd.20
test byte [ebp - 0x10], 1
je case.0x47b7dd.20
mov ecx, dword [edi + 0x1c]
mov eax, dword [edi + 0x10]
cmp ecx, eax
jae 0x47bac9
mov eax, dword [edi + 0x18]
push 1
shl ecx, 6
push 0xfffffffffffffff0
push dword [ecx + eax]
call esi
mov ecx, dword [edi + 0x1c]
and eax, 0xfffe
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push eax
mov eax, dword [edi + 0x18]
shl ecx, 6
push 0xf4
push dword [ecx + eax]
call esi
mov eax, dword [edi + 0x10]
jmp 0x47bacf
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push 0
mov dword [edi + 0x1c], eax
add eax, 3
push eax
push 0x401
push dword [edi + 4]
call esi
mov eax, dword [ebp - 0x10]
push 1
movzx eax, ax
push eax
mov eax, dword [ebp - 0x14]
push 0xf4
push dword [eax]
call esi
jmp 0x47d0a9
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47bb0d
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47bb0f
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47bb20
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47bb22
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push dword [ebp + 0x10]
push str.button
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
test eax, eax
je case.0x47b7dd.20
mov ecx, dword [ebp - 0x1d0]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
test ecx, ecx
je 0x47d0a9
push 0
push ecx
push 0xf1
push eax
call esi
jmp 0x47d0a9
cmp dword [ebp - 0x1d8], 0
je 0x47bba8
cmp byte [edx + 4], 8
jne 0x47bba8
and ecx, 0xffffffbf
mov dword [ebp - 0x10], ecx
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47bbb9
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47bbbb
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47bbcc
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47bbce
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push 0x4d0335
push str.Combobox
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
test eax, eax
je 0x47bd0a
imul edx, dword [edi + 0x50], 0x54
movzx ecx, byte [ebp + 0xf]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push ecx
mov ecx, dword [0x4e919c]
push dword [edx + ecx + 0x50]
push 0x30
push eax
call esi
cmp byte [ebp - 0x15], 0
je 0x47bd02
mov eax, dword [ebp - 0x14]
push 0
push 0
push 0x154
push dword [eax]
call esi
mov ecx, dword [ebp - 0x10]
mov edi, eax
xor eax, eax
and cl, 3
cmp cl, 1
push 0x60
push dword [0x4e9a40]
sete al
push 8
lea eax, [eax*2 + 2]
mov dword [ebp - 0x58], eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov esi, dword [ebp - 0x58]
add eax, esi
mov ecx, dword [ebp - 0x210]
lea eax, [eax + edi*2]
cmp ecx, eax
jge 0x47bcc9
mov ecx, eax
mov dword [ebp - 0x210], ecx
mov edi, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
push 1
push ecx
push dword [ebp - 0x214]
push dword [ebp - 0x218]
push dword [ebp - 0x21c]
push dword [eax]
call dword [sym.imp.USER32.dll_MoveWindow]
mov al, 1
mov byte [ebp - 0x16], al
mov byte [ebp - 0x29], al
jmp case.0x47b7dd.20
movss xmm0, dword [ebp - 0x20c]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x47bc99
push 0x60
push dword [0x4e9a40]
push 8
call dword [sym.imp.KERNEL32.dll_MulDiv]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ebp - 0x20c]
cvttss2si ecx, xmm0
add ecx, eax
add ecx, esi
jmp 0x47bc93
mov ecx, dword [ebp - 0x210]
jmp 0x47bc9c
mov al, byte [ebp - 0x16]
mov byte [ebp - 0x29], al
jmp case.0x47b7dd.20
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47bd26
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47bd28
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47bd39
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47bd3b
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push 0x4d0335
push str.Listbox
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov edx, eax
mov eax, dword [ebp - 0x14]
mov dword [eax], edx
test edx, edx
je 0x47bd0a
mov eax, dword [ebp - 0x100]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
test eax, eax
je 0x47bdad
lea ecx, [ebp - 0x1c8]
push ecx
push eax
push 0x192
push edx
call esi
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
imul ecx, dword [edi + 0x50], 0x54
movzx eax, byte [ebp + 0xf]
push eax
mov eax, dword [0x4e919c]
push dword [ecx + eax + 0x50]
push 0x30
push edx
call esi
mov eax, dword [ebp - 0x14]
push 0
push 0
push 0x1a1
push dword [eax]
call esi
push 0x60
push dword [0x4e9a40]
mov edi, eax
push 8
mov dword [ebp - 0x58], edi
call dword [sym.imp.KERNEL32.dll_MulDiv]
lea esi, [edi + eax]
mov edi, dword [ebp - 0x10]
and edi, 0x100000
je 0x47be01
push 3
call dword [sym.imp.USER32.dll_GetSystemMetrics]
add esi, eax
mov ecx, dword [ebp - 0x210]
cmp ecx, esi
jge 0x47be0f
mov ecx, esi
jmp 0x47be5f
movss xmm0, dword [ebp - 0x20c]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x47be65
push 0x60
push dword [0x4e9a40]
push 8
call dword [sym.imp.KERNEL32.dll_MulDiv]
movd xmm0, dword [ebp - 0x58]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ebp - 0x20c]
cvttss2si ecx, xmm0
add ecx, eax
mov dword [ebp - 0x210], ecx
test edi, edi
je 0x47be65
push 3
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, dword [ebp - 0x210]
add ecx, eax
mov dword [ebp - 0x210], ecx
mov eax, dword [ebp - 0x14]
push 1
push ecx
push dword [ebp - 0x214]
push dword [ebp - 0x218]
push dword [ebp - 0x21c]
push dword [eax]
call dword [sym.imp.USER32.dll_MoveWindow]
mov edi, dword [ebp - 0x1c]
mov al, 1
mov byte [ebp - 0x16], al
mov byte [ebp - 0x29], al
jmp case.0x47b7dd.20
mov eax, dword [ebp - 0x228]
cmp eax, 4
je 0x47bea8
and ecx, 0xfffffffc
or ecx, eax
mov dword [ebp - 0x10], ecx
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47beb9
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47bebb
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47becc
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47bece
xor ecx, ecx
mov eax, dword [ebp - 0x210]
mov esi, 0xc8
push 0
push dword [0x4e79b8]
cmp eax, 0x80000000
push dword [ebp - 0x24]
cmove eax, esi
push dword [ebp - 0x20]
push eax
push dword [ebp - 0x214]
mov eax, dword [ebp - 0x218]
sub eax, edx
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push 0x4d0335
push str.SysListView32
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov esi, dword [ebp - 0x14]
mov dword [esi], eax
test eax, eax
je case.0x47b7dd.20
push 0x3f8
call fcn.004b2c3e
add esp, 4
mov dword [esi + 0x10], eax
test eax, eax
jne 0x47bf52
push dword [esi]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov dword [esi], 0
jmp case.0x47b7dd.20
push 0x3f8
mov dword [edi + 0x48], esi
push 0
push dword [esi + 0x10]
call fcn.004afdf0
mov eax, dword [esi + 0x10]
add esp, 0xc
mov dword [eax], 0xffffffff
mov ecx, dword [esi + 0x10]
mov al, byte [ebp - 0xa9]
mov byte [ecx + 5], al
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x47bf87
or byte [eax + 5], 0x80
cmp dword [ebp - 0x228], 4
jne 0x47bfa5
push 0
push 4
push 0x108e
push dword [esi]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
call esi
jmp 0x47bfab
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [ebp - 0x22c]
test eax, eax
je 0x47bfc4
push eax
mov eax, dword [ebp - 0x14]
push 0
push 0x1036
push dword [eax]
call esi
lea eax, [ebp - 0x23c]
mov ecx, edi
push eax
push dword [ebp - 0x14]
call fcn.004865a0
cmp dword [ebp - 0x210], 0x80000000
jne case.0x47b7dd.20
imul ecx, dword [edi + 0x50], 0x54
movzx eax, byte [ebp + 0xf]
push eax
mov eax, dword [0x4e919c]
push dword [ecx + eax + 0x50]
mov eax, dword [ebp - 0x14]
push 0x30
push dword [eax]
call esi
mov eax, dword [ebp - 0x228]
mov byte [ebp - 0x29], 1
sub eax, 1
je 0x47c151
sub eax, 3
je 0x47c123
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x47c04b
push dword [edi + 4]
call dword [sym.imp.USER32.dll_GetDC]
imul ecx, dword [edi + 0x50], 0x54
mov edx, eax
mov eax, dword [0x4e919c]
mov dword [ebp - 0x28], edx
push dword [ecx + eax + 0x50]
push edx
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x29c]
push ecx
push eax
call dword [sym.imp.GDI32.dll_GetTextMetricsA]
cmp dword [ebp - 0x228], 0
jne 0x47c0e8
mov eax, dword [ebp - 0x14]
push 0
push 0
push 0x1033
push dword [eax]
call esi
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x4dd2c0]
cvtpd2ps xmm1, xmm0
movss xmm0, dword [ebp - 0x20c]
subss xmm0, dword [0x4dd148]
mulss xmm0, xmm1
call fcn.004c7d40
mov esi, eax
push 0xc
shr esi, 0x10
call dword [sym.imp.USER32.dll_GetSystemMetrics]
movd xmm1, esi
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
mov eax, dword [ebp - 0x29c]
cvtdq2ps xmm0, xmm0
add eax, 0x10
mulss xmm0, dword [ebp - 0x20c]
addss xmm0, xmm1
cvttss2si ecx, xmm0
add eax, ecx
jmp 0x47c174
push 0x32
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, dword [ebp - 0x29c]
cmp eax, ecx
movss xmm0, dword [ebp - 0x20c]
cmovg ecx, eax
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm0
subss xmm0, dword [0x4dd148]
addss xmm1, xmm0
cvttss2si eax, xmm1
add eax, 0xb
jmp 0x47c174
mov eax, dword [ebp - 0x14]
push 0
push 0
push 0x1033
push dword [eax]
call esi
shr eax, 0x10
sub eax, 3
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ebp - 0x20c]
cvttss2si eax, xmm0
add eax, 7
jmp 0x47c174
movss xmm0, dword [ebp - 0x20c]
push 0xffffffffffffffff
call fcn.004c7d40
dec eax
push eax
mov eax, dword [ebp - 0x14]
push 0x1040
push dword [eax]
call esi
shr eax, 0x10
add eax, 4
push 1
push eax
push dword [ebp - 0x214]
mov dword [ebp - 0x210], eax
push dword [ebp - 0x218]
mov eax, dword [ebp - 0x14]
push dword [ebp - 0x21c]
push dword [eax]
call dword [sym.imp.USER32.dll_MoveWindow]
jmp 0x47d0a9
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47c1b0
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47c1b2
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47c1c3
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47c1c5
xor ecx, ecx
mov eax, dword [ebp - 0x210]
mov esi, 0xc8
push 0
push dword [0x4e79b8]
cmp eax, 0x80000000
push dword [ebp - 0x24]
cmove eax, esi
push dword [ebp - 0x20]
push eax
push dword [ebp - 0x214]
mov eax, dword [ebp - 0x218]
sub eax, edx
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push 0x4d0335
push str.SysTreeView32
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov esi, dword [ebp - 0x14]
mov dword [esi], eax
test eax, eax
je case.0x47b7dd.20
cmp dword [ebp - 0x1d0], 0
mov dword [edi + 0x4c], esi
je 0x47c241
mov eax, dword [ebp - 0x10]
or eax, 0x100
push eax
push 0xfffffffffffffff0
push dword [esi]
call dword [sym.imp.USER32.dll_SetWindowLongA]
lea eax, [ebp - 0x23c]
mov ecx, edi
push eax
push esi
call fcn.00486650
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x47c26e
push eax
push 0
push 0x1109
push dword [esi]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
call esi
jmp 0x47c274
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
cmp dword [ebp - 0x210], 0x80000000
jne case.0x47b7dd.20
imul ecx, dword [edi + 0x50], 0x54
movzx eax, byte [ebp + 0xf]
push eax
mov eax, dword [0x4e919c]
push dword [ecx + eax + 0x50]
mov eax, dword [ebp - 0x14]
push 0x30
push dword [eax]
call esi
mov eax, dword [ebp - 0x14]
push 0
push 0
push 0x111c
push dword [eax]
mov byte [ebp - 0x29], 1
call esi
mov dword [ebp - 0x210], eax
cmp eax, 2
jge 0x47c2cd
imul ecx, dword [edi + 0x50], 0x54
mov eax, dword [0x4e919c]
mov eax, dword [ecx + eax + 0x44]
add eax, eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ebp - 0x20c]
cvttss2si eax, xmm0
jmp 0x47c171
test cl, 4
jne 0x47c30d
cmp dword [ebp - 0x1d8], 0
jge 0x47c2fb
and ecx, 0xffefff7f
jmp 0x47c30a
mov eax, dword [ebp - 0x238]
not eax
and eax, 0x80
or ecx, eax
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp + 0x10]
cmp byte [eax], 0
je 0x47c321
test cl, 4
je 0x47c321
mov ecx, eax
call fcn.0049b1f0
mov esi, eax
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47c334
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47c336
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47c347
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47c349
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
test esi, esi
push eax
push dword [ebp - 0x10]
mov eax, dword [ebp + 0x10]
cmovne eax, esi
push eax
push str.edit
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov edx, eax
mov eax, dword [ebp - 0x14]
mov dword [eax], edx
test edx, edx
je 0x47c403
test byte [ebp - 0x10], 0x20
je 0x47c3bc
mov cl, byte [ebp - 0xb0]
test cl, cl
je 0x47c3bc
push 0
movsx eax, cl
push eax
push 0xcc
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [ebp - 0x1d8]
xor ecx, ecx
test eax, eax
push ecx
cmovs eax, ecx
push eax
mov dword [ebp - 0x1d8], eax
mov eax, dword [ebp - 0x14]
push 0xc5
push dword [eax]
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [ebp - 0x100]
test eax, eax
je 0x47c403
lea ecx, [ebp - 0x1c8]
push ecx
push eax
mov eax, dword [ebp - 0x14]
push 0xcb
push dword [eax]
call dword [sym.imp.USER32.dll_SendMessageA]
test esi, esi
je case.0x47b7dd.20
cmp esi, dword [ebp + 0x10]
je case.0x47b7dd.20
push esi
call fcn.004b2343
add esp, 4
jmp case.0x47b7dd.20
mov esi, dword [ebp + 0x10]
mov byte [ebp - 0x15], 0
cmp byte [esi], 0
je 0x47c474
push str.LongDate
push esi
call fcn.004b218a
add esp, 8
test eax, eax
jne 0x47c44e
mov eax, dword [ebp - 0x10]
and eax, 0xfffffff6
or eax, 4
mov dword [ebp - 0x10], eax
jmp 0x47c477
push str.Time
push esi
call fcn.004b218a
add esp, 8
test eax, eax
mov eax, dword [ebp - 0x10]
jne 0x47c46e
and eax, 0xfffffffb
or eax, 9
mov dword [ebp - 0x10], eax
jmp 0x47c477
mov byte [ebp - 0x15], 1
jmp 0x47c477
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x208], 2
jne 0x47c486
or eax, 2
mov dword [ebp - 0x10], eax
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47c497
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47c499
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47c4aa
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47c4ac
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push 0x4d0335
push str.SysDateTimePick32
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov ecx, eax
mov eax, dword [ebp - 0x14]
mov dword [eax], ecx
test ecx, ecx
je case.0x47b7dd.20
cmp byte [ebp - 0x15], 0
je 0x47c51b
push esi
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0x1005
push ecx
call esi
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
jmp 0x47c521
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [ebp - 0xb8]
test eax, eax
je 0x47c540
lea edx, [ebp - 0xdc]
push edx
push eax
push 0x1004
push ecx
call esi
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x208]
test edx, edx
je 0x47c569
lea eax, [ebp - 0xfc]
push eax
xor eax, eax
cmp edx, 1
setne al
push eax
push 0x1002
push ecx
call esi
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx]
jmp 0x47c56c
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + 0x10]
cmp eax, 0xff000000
je 0x47d0a9
push eax
push 1
push 0x1006
push ecx
call esi
jmp 0x47d0a9
cmp dword [ebp - 0xbc], 0
jne 0x47c5b7
mov eax, dword [ebp + 0x10]
cmp byte [eax], 0
je 0x47c5b7
lea edx, [ebp - 0xfc]
mov ecx, eax
call fcn.00499f80
mov dword [ebp - 0xbc], eax
cmp eax, 3
jne 0x47c5b7
or dword [ebp - 0x10], 2
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47c5c8
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47c5ca
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47c5db
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47c5dd
xor ecx, ecx
mov eax, dword [ebp - 0x210]
mov esi, 0x64
push 0
push dword [0x4e79b8]
cmp eax, 0x80000000
push dword [ebp - 0x24]
cmove eax, esi
push dword [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x214]
test eax, eax
cmovs eax, esi
push eax
mov eax, dword [ebp - 0x218]
sub eax, edx
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push 0x4d0335
push str.SysMonthCal32
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
test eax, eax
je case.0x47b7dd.20
mov esi, dword [ebp - 0x10]
mov ecx, eax
and esi, 2
je 0x47c664
push 0
push 0x16e
push 0x1004
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx]
mov ecx, eax
mov edx, dword [ebp - 0xb8]
test edx, edx
je 0x47c689
lea ecx, [ebp - 0xdc]
push ecx
push edx
push 0x1012
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx]
mov ecx, eax
mov edx, dword [ebp - 0xbc]
test edx, edx
je 0x47c6e1
test esi, esi
je 0x47c6c8
cmp edx, 1
jne 0x47c6af
movups xmm0, xmmword [ebp - 0xfc]
mov eax, dword [ebp - 0x14]
movups xmmword [ebp - 0xec], xmm0
mov ecx, dword [eax]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
lea eax, [ebp - 0xfc]
push eax
push 0
push 0x1006
push ecx
call esi
jmp 0x47c6e7
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
lea ecx, [ebp - 0xfc]
push ecx
push 0
push 0x1002
push eax
call esi
jmp 0x47c6e7
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x10]
cmp eax, 0xff000000
je 0x47c700
push eax
push 1
push 0x100a
push dword [ecx]
call esi
imul ecx, dword [edi + 0x50], 0x54
movzx eax, byte [ebp + 0xf]
push eax
mov eax, dword [0x4e919c]
push dword [ecx + eax + 0x50]
mov eax, dword [ebp - 0x14]
push 0x30
push dword [eax]
call esi
cmp dword [ebp - 0x214], 0x80000000
mov byte [ebp - 0x29], 1
je 0x47c73b
cmp dword [ebp - 0x210], 0x80000000
jne 0x47d0a9
lea eax, [ebp - 0x54]
push eax
mov eax, dword [ebp - 0x14]
push 0
push 0x1009
push dword [eax]
call esi
test eax, eax
je 0x47d0a9
mov ecx, dword [ebp - 0x214]
test ecx, ecx
jns 0x47c7a6
test byte [ebp - 0x10], 0x10
je 0x47c76a
mov eax, dword [ebp - 0x4c]
jmp 0x47c787
mov eax, dword [ebp - 0x14]
push 0
push 0
push 0x1015
push dword [eax]
call esi
cmp eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x214]
cmovl eax, dword [ebp - 0x4c]
cmp ecx, 0x80000000
jne 0x47c793
mov ecx, eax
jmp 0x47c7a0
add eax, 6
imul eax, ecx
mov ecx, 0xfffffffa
sub ecx, eax
mov dword [ebp - 0x214], ecx
mov edx, dword [ebp - 0x210]
cmp edx, 0x80000000
jne 0x47c882
movss xmm0, dword [ebp - 0x20c]
xorps xmm1, xmm1
comiss xmm0, xmm1
mov edx, dword [ebp - 0x48]
mov dword [ebp - 0x210], edx
jbe 0x47c882
ucomiss xmm0, dword [0x4dd148]
lahf
test ah, 0x44
jnp 0x47c882
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x47c815
push dword [edi + 4]
call dword [sym.imp.USER32.dll_GetDC]
imul ecx, dword [edi + 0x50], 0x54
mov edx, eax
mov eax, dword [0x4e919c]
mov dword [ebp - 0x28], edx
push dword [ecx + eax + 0x50]
push edx
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x29c]
push ecx
push eax
call dword [sym.imp.GDI32.dll_GetTextMetricsA]
test byte [ebp - 0x10], 0x10
mov ecx, dword [ebp - 0x29c]
mov eax, dword [ebp - 0x210]
je 0x47c83a
add eax, 4
add eax, ecx
movss xmm2, dword [ebp - 0x20c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm2
subss xmm2, dword [0x4dd148]
cvttss2si eax, xmm0
movd xmm1, eax
lea eax, [ecx - 2]
mov ecx, dword [ebp - 0x214]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm2
subss xmm1, xmm0
cvttss2si edx, xmm1
mov dword [ebp - 0x210], edx
push 1
push edx
push ecx
jmp 0x47c183
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47c89c
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47c89e
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47c8af
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47c8b1
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push 0x4d0335
push str.msctls_hotkey32
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov esi, dword [ebp - 0x14]
mov dword [esi], eax
test eax, eax
je case.0x47b7dd.20
mov ecx, dword [ebp + 0x10]
cmp byte [ecx], 0
je 0x47c929
push 0
call fcn.00486150
movzx eax, ax
push eax
push 0x401
push dword [esi]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx]
jmp 0x47c92f
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [ebp - 0x1d8]
test ecx, ecx
jle 0x47d0a9
push 6
push ecx
push 0x403
push eax
call esi
jmp 0x47d0a9
test cl, 0x10
je 0x47c971
cmp dword [edi + 8], 0
jne 0x47c965
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x47c971
cmp byte [eax + 5], 0
jge 0x47c971
and ecx, 0xffffffef
mov byte [ebp - 0x15], 1
mov dword [ebp - 0x10], ecx
jmp 0x47c975
mov byte [ebp - 0x15], 0
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47c986
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47c988
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47c999
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47c99b
xor ecx, ecx
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push esi
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push 0x4d0335
push str.msctls_updown32
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
test eax, eax
je case.0x47b7dd.20
mov cl, byte [ebp - 0x15]
test cl, cl
je 0x47ca0d
mov ecx, dword [ebp - 0x44]
push 0
push dword [ecx]
push 0x469
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx]
mov cl, byte [ebp - 0x15]
cmp dword [edi + 0x10], 0
je 0x47cb64
test byte [ebp - 0x10], 0x10
jne 0x47ca25
test cl, cl
je 0x47cb64
lea ecx, [ebp - 0x54]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
push 2
lea eax, [ebp - 0x54]
push eax
push esi
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
mov ecx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x50]
sub eax, ecx
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x48]
sub eax, edx
mov dword [ebp - 0x21c], ecx
mov dword [ebp - 0x210], eax
lea eax, [ebp - 0x88]
push eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x218], edx
push dword [eax]
call dword [sym.imp.USER32.dll_GetWindowRect]
push 2
lea eax, [ebp - 0x88]
push eax
push esi
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
cmp byte [edi + 0xc7], 0
je 0x47cb03
mov esi, dword [ebp - 0x10]
and esi, 4
je 0x47cace
mov eax, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x21c]
add dword [ebp - 0x4c], eax
add ecx, eax
push 1
push dword [ebp - 0x210]
mov dword [ebp - 0x21c], ecx
push eax
push dword [ebp - 0x218]
mov eax, dword [ebp - 0x14]
push ecx
push dword [eax]
call dword [sym.imp.USER32.dll_MoveWindow]
mov edx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x84]
sub eax, ecx
add edx, dword [ebp - 0x214]
push 1
push eax
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x80], edx
sub edx, eax
push edx
push ecx
push eax
mov eax, dword [ebp - 0x44]
push dword [eax]
call dword [sym.imp.USER32.dll_MoveWindow]
mov edx, dword [ebp - 0x10]
jmp 0x47cb0b
mov edx, dword [ebp - 0x10]
mov esi, edx
and esi, 4
test esi, esi
je 0x47cb22
mov ecx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x21c], ecx
sub eax, ecx
jmp 0x47cb28
mov eax, dword [ebp - 0x80]
sub eax, dword [ebp - 0x54]
cmp byte [ebp - 0xaf], 0
mov dword [ebp - 0x214], eax
jne 0x47cb7e
mov eax, dword [ebp - 0x44]
cmp byte [eax + 4], 9
jne 0x47cb6d
mov byte [ebp - 0xaf], 1
test dl, 0x40
je 0x47cb58
mov dword [ebp - 0x200], 0x7fff
jmp 0x47cb7e
mov dword [ebp - 0x204], 0x7fff
jmp 0x47cb7e
cmp byte [ebp - 0xaf], 0
jne 0x47cb7e
mov byte [ebp - 0xaf], 1
mov dword [ebp - 0x200], 0x64
mov esi, dword [ebp - 0x14]
lea eax, [ebp - 0x23c]
push eax
push esi
mov ecx, edi
call fcn.00486390
mov ecx, dword [ebp + 0x10]
call fcn.00417810
push eax
movsx eax, byte [esi + 5]
sar eax, 0x1f
and eax, 0xa
push 0
add eax, 0x467
push eax
push dword [esi]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
call esi
jmp 0x47d0a9
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47cbcb
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47cbcd
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47cbde
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47cbe0
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push 0x4d0335
push str.msctls_trackbar32
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov edx, dword [ebp - 0x14]
mov dword [edx], eax
test eax, eax
je case.0x47b7dd.20
lea eax, [ebp - 0x23c]
mov ecx, edi
push eax
push edx
call fcn.00486490
mov eax, dword [ebp + 0x10]
cmp byte [eax], 0
je case.0x47b7dd.20
mov ecx, eax
call fcn.00417810
mov esi, dword [ebp - 0x14]
mov ecx, edi
push eax
push esi
call fcn.00486440
push eax
push 1
push 0x405
push dword [esi]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
call esi
jmp 0x47d0a9
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47cc85
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47cc87
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47cc98
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47cc9a
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push 0x4d0335
push str.msctls_progress32
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov edx, dword [ebp - 0x14]
mov dword [edx], eax
test eax, eax
je case.0x47b7dd.20
push dword [ebp - 0x10]
lea eax, [ebp - 0x23c]
mov ecx, edi
push eax
push edx
call fcn.004866b0
mov eax, dword [ebp + 0x10]
cmp byte [eax], 0
je 0x47cd28
push 0
mov ecx, eax
call fcn.00417810
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push eax
mov eax, dword [ebp - 0x14]
push 0x402
push dword [eax]
call esi
mov byte [ebp - 0x32], 0
jmp 0x47d0a9
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
mov byte [ebp - 0x32], 0
jmp 0x47d0a9
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47cd48
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47cd4a
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47cd5b
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47cd5d
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push 0x4d0335
push str.SysTabControl32
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov edx, dword [ebp - 0x14]
mov dword [edx], eax
test eax, eax
je case.0x47b7dd.20
cmp byte [ebp - 0xa8], 0
je 0x47cde1
lea eax, [ebp - 0x23c]
mov ecx, edi
push eax
push edx
call fcn.004873d0
test eax, eax
jne 0x47cdde
mov esi, dword [ebp - 0x14]
push dword [esi]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov dword [esi], 0
jmp case.0x47b7dd.20
mov edx, dword [ebp - 0x14]
mov al, byte [ebp - 0xa7]
test al, al
je 0x47cdfc
movsx eax, al
push eax
push str.ahk_autosize
push dword [edx]
call dword [sym.imp.USER32.dll_SetPropA]
mov al, byte [edi + 0xc0]
mov byte [edi + 0xc1], al
inc al
mov byte [edi + 0xc0], al
mov eax, dword [ebp - 0x14]
push 0x485c50
push 0xfffffffffffffffc
mov byte [edi + 0xc2], 0
push dword [eax]
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov dword [0x4e83c0], eax
jmp case.0x47b7dd.20
cmp byte [0x50b57c], 0
jne 0x47ce7b
push 0x4db4f4
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x47ce7b
push str.AtlAxWinInit
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x47ce6b
call eax
test eax, eax
setne al
mov byte [0x50b57c], al
jmp 0x47ce70
mov al, byte [0x50b57c]
test al, al
jne 0x47ce7b
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47ce8c
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47ce8e
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47ce9f
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47cea1
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
push dword [ebp + 0x10]
push str.AtlAxWin
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov esi, dword [ebp - 0x14]
mov dword [esi], eax
test eax, eax
je case.0x47b7dd.20
mov ecx, eax
call fcn.00473560
mov ecx, eax
test ecx, ecx
jne 0x47cf0e
push dword [esi]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov dword [esi], 0
jmp case.0x47b7dd.20
mov eax, dword [esi + 8]
push ecx
test eax, eax
je 0x47cf22
mov ecx, eax
call fcn.0049e9e0
jmp case.0x47b7dd.20
mov eax, dword [ecx]
call dword [eax + 8]
jmp case.0x47b7dd.20
mov si, word [ebp - 0xa6]
test si, si
jne 0x47cf53
push 0x4d0335
push str.A_window_class_is_required.
mov ecx, 0x4e9a70
call fcn.004470d0
mov esi, eax
jmp 0x47d60e
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x47cf64
mov edx, dword [eax + 0x14]
test edx, edx
jne 0x47cf66
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47cf77
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47cf79
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 0
push dword [0x4e79b8]
sub eax, edx
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
push dword [ebp - 0x10]
movzx eax, si
push dword [ebp + 0x10]
push eax
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
jmp case.0x47b7dd.20
push dword [ebp - 0x24]
push dword [edi + 4]
push dword [ebp + 0x10]
push ecx
call dword [sym.imp.COMCTL32.dll_CreateStatusWindowA]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
test eax, eax
je case.0x47b7dd.20
mov ecx, dword [ebp - 0x1dc]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
mov dword [edi + 8], eax
cmp ecx, 0xffffffff
je 0x47d0a9
push ecx
push 0
push 0x2001
push eax
call esi
jmp 0x47d0a9
mov ecx, dword [ebp - 0x38]
test ecx, ecx
je case.0x47b7dd.20
mov eax, dword [ecx + 4]
mov dword [edx], eax
cmp dword [ecx + 0xa8], 0
jne 0x47d02c
mov eax, dword [ebp - 0x214]
mov dword [ecx + 0xa8], eax
cmp dword [ecx + 0xac], 0
jne 0x47d041
mov eax, dword [ebp - 0x210]
mov dword [ecx + 0xac], eax
mov eax, dword [edi + 0x10]
add eax, 3
push eax
push 0xfffffffffffffff4
push dword [edx]
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov edx, dword [edi + 0xcc]
test edx, edx
je 0x47d063
mov edx, dword [edx + 0x14]
test edx, edx
jne 0x47d065
xor edx, edx
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47d076
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x47d078
xor ecx, ecx
mov eax, dword [ebp - 0x218]
push 1
push dword [ebp - 0x210]
sub eax, edx
push dword [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, ecx
push eax
mov eax, dword [ebp - 0x14]
push dword [eax]
call dword [sym.imp.USER32.dll_MoveWindow]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x47d0cc
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
je 0x47d0c2
push ecx
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
mov eax, dword [ebp - 0x28]
push eax
push dword [edi + 4]
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [ebp - 0x14]
cmp dword [eax], 0
jne 0x47d0ef
push 0x4d0335
push str.Cant_create_control.
mov ecx, 0x4e9a70
call fcn.004470d0
mov esi, eax
jmp 0x47d60e
mov al, byte [ebp - 0x31]
inc dword [edi + 0x10]
mov edx, dword [ebp - 0x8c]
mov byte [edi + 0xc7], al
mov eax, dword [ebp - 0x220]
test eax, eax
jne 0x47d10f
test edx, edx
je 0x47d18d
mov ecx, dword [edi + 0xd4]
test ecx, ecx
je 0x47d181
lea eax, [ebp - 0x24c]
mov dword [ebp - 0x24c], edx
mov dword [ebp - 0x80], eax
lea eax, [ebp - 0x64]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x14]
push 2
mov dword [ebp - 0x244], 0
mov dword [ebp - 0x248], 0xffffffff
mov eax, dword [eax]
cdq
mov dword [ebp - 0x60], edx
lea edx, [ebp - 0x80]
push edx
push 1
lea edx, [ebp - 0x264]
mov dword [ebp - 0x5c], 1
push edx
mov dword [ebp - 0x64], eax
lea edx, [ebp - 0x2ac]
mov eax, dword [ecx]
push edx
push ecx
call dword [eax + 0x1c]
push dword [ebp - 0x8c]
call fcn.004b2343
add esp, 4
jmp 0x47d18d
mov ecx, dword [ebp - 0x14]
push dword [ecx]
mov ecx, eax
call fcn.0049de30
mov edx, dword [ebp - 0x14]
cmp byte [edx + 4], 6
jne 0x47d1b7
mov ecx, dword [ebp - 0x1d0]
test ecx, ecx
je 0x47d1b1
mov eax, dword [edi + 0x10]
push ecx
dec eax
mov ecx, edi
push eax
push edx
call fcn.00486280
mov edx, dword [ebp - 0x14]
mov byte [edi + 0x44], 1
jmp 0x47d1bb
mov byte [edi + 0x44], 0
test dword [ebp - 0x238], 0x10000000
je 0x47d1cb
or byte [edx + 5], 8
test dword [ebp - 0x23c], 0x8000000
je 0x47d1db
or byte [edx + 5], 0x10
cmp byte [ebp - 0x32], 0
jne 0x47d205
cmp dword [edx + 0x10], 0xff000000
je 0x47d1f9
mov al, byte [edx + 4]
cmp al, 5
je 0x47d205
cmp al, 6
je 0x47d205
cmp al, 3
je 0x47d205
cmp byte [edx + 4], 3
jne 0x47d21f
test byte [edx + 5], 0x40
je 0x47d21f
mov eax, dword [ebp - 0x14]
mov edx, 0x4d1460
push 0x4d1460
mov ecx, dword [eax]
call fcn.0049c700
mov edx, dword [ebp - 0x14]
add esp, 4
cmp byte [ebp - 0x29], 0
jne 0x47d243
cmp byte [ebp - 0x33], 0
je 0x47d243
imul ecx, dword [edi + 0x50], 0x54
movzx eax, byte [ebp + 0xf]
push eax
mov eax, dword [0x4e919c]
push dword [ecx + eax + 0x50]
push 0x30
push dword [edx]
call esi
cmp dword [ebp - 0xb4], 4
jne 0x47d259
mov eax, dword [ebp - 0x14]
push 0
push 0
push 0xb
push dword [eax]
call esi
push 0
push dword [ebp - 0x208]
mov ecx, edi
push dword [ebp + 0x10]
push dword [ebp - 0x14]
call fcn.004810d0
mov eax, dword [ebp - 0x14]
cmp byte [eax + 4], 0x13
jne 0x47d32c
movss xmm0, dword [ebp - 0x20c]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x47d317
lea ecx, [ebp - 0x54]
push ecx
push dword [eax]
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [ebp - 0x10]
mov eax, ecx
and al, 0x82
cmp al, 2
jne 0x47d2bd
mov eax, dword [ebp - 0x14]
and ecx, 0xfffffffd
push ecx
push 0xfffffffffffffff0
mov byte [ebp + 0x13], 1
push dword [eax]
call dword [sym.imp.USER32.dll_SetWindowLongA]
jmp 0x47d2c1
mov byte [ebp + 0x13], 0
lea eax, [ebp - 0x54]
push eax
mov eax, dword [ebp - 0x14]
push 1
push 0x1328
push dword [eax]
call esi
cmp byte [ebp + 0x13], 0
je 0x47d2e9
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0xfffffffffffffff0
push dword [eax]
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov eax, dword [ebp - 0x48]
sub eax, dword [ebp - 0x50]
push 1
push eax
push dword [ebp - 0x214]
mov dword [ebp - 0x210], eax
push dword [ebp - 0x218]
mov eax, dword [ebp - 0x14]
push dword [ebp - 0x21c]
push dword [eax]
call dword [sym.imp.USER32.dll_MoveWindow]
jmp 0x47d329
cmp byte [ebp - 0xa8], 0
je 0x47d32c
push dword [eax]
mov ecx, edi
call fcn.004874d0
mov eax, dword [ebp - 0x14]
cmp byte [ebp - 0x16], 0
je 0x47d387
lea ecx, [ebp - 0x54]
push ecx
push dword [eax]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x48]
sub eax, dword [ebp - 0x50]
mov dword [ebp - 0x210], eax
mov eax, dword [ebp - 0x4c]
sub eax, dword [ebp - 0x54]
cmp byte [ebp + 8], 9
mov dword [ebp - 0x214], eax
jne 0x47d387
test dword [ebp - 0x10], 0x100000
je 0x47d387
mov ecx, dword [ebp - 0x1d4]
test ecx, ecx
jns 0x47d378
lea ecx, [eax + eax*2]
mov dword [ebp - 0x1d4], ecx
mov eax, dword [ebp - 0x14]
push 0
push ecx
push 0x194
push dword [eax]
call esi
mov ecx, dword [ebp - 0x40]
mov esi, dword [sym.imp.USER32.dll_SetWindowPos]
test ecx, ecx
je 0x47d3ed
mov eax, dword [ebp - 0x20]
cmp eax, dword [edi + 4]
jne 0x47d3ed
cmp byte [ebp - 0x34], 0
je 0x47d3d4
lea eax, [ebp - 0x54]
push eax
mov eax, dword [ebp - 0x14]
push dword [eax]
call dword [sym.imp.USER32.dll_GetWindowRect]
push 2
lea eax, [ebp - 0x54]
push eax
push dword [edi + 4]
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
push 0
lea eax, [ebp - 0x54]
push eax
push dword [edi + 4]
call dword [sym.imp.USER32.dll_InvalidateRect]
mov ecx, dword [ebp - 0x40]
cmp byte [ecx + 5], 0
jge 0x47d3ed
mov eax, dword [ebp - 0x14]
push 0x13
push 0
push 0
push 0
push 0
push dword [eax]
push dword [ecx]
call esi
mov eax, dword [edi + 8]
test eax, eax
je 0x47d403
push 0x13
push 0
push 0
push 0
push 0
push 1
push eax
call esi
cmp byte [ebp + 8], 0x19
je 0x47d609
mov ecx, dword [edi + 4]
mov edx, dword [ebp - 0x20]
cmp edx, ecx
je 0x47d44b
mov eax, dword [ebp - 0x21c]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x218]
push 1
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x5c]
push eax
push ecx
push edx
call dword [sym.imp.USER32.dll_MapWindowPoints]
mov esi, dword [ebp - 0x5c]
mov edi, dword [ebp - 0x58]
mov dword [ebp - 0x21c], esi
mov dword [ebp - 0x218], edi
jmp 0x47d457
mov edi, dword [ebp - 0x218]
mov esi, dword [ebp - 0x21c]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x210]
mov dword [edx + 0x8c], ecx
add ecx, edi
mov dword [edx + 0x88], eax
mov dword [edx + 0x80], esi
mov dword [edx + 0x84], edi
lea edx, [esi + eax]
mov eax, dword [ebp - 0x1c]
mov dword [ebp + 8], ecx
mov ecx, dword [ebp - 0x20]
cmp ecx, dword [eax + 4]
mov ecx, dword [ebp + 8]
jne 0x47d4b9
cmp byte [ebp - 0xa7], 0
jne 0x47d4b9
cmp edx, dword [eax + 0x90]
jle 0x47d4ab
mov dword [eax + 0x90], edx
cmp ecx, dword [eax + 0x94]
jle 0x47d4b9
mov dword [eax + 0x94], ecx
cmp byte [ebp - 0xab], 0
jne 0x47d4f9
mov eax, dword [eax + 0x10]
cmp eax, 1
je 0x47d4f6
cmp eax, 2
jne 0x47d4db
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x18]
cmp byte [eax + 4], 0x19
je 0x47d4f6
mov edi, dword [ebp - 0x1c]
cmp edx, dword [edi + 0xa0]
jle 0x47d4ec
mov dword [edi + 0xa0], edx
cmp ecx, dword [edi + 0xa4]
jle 0x47d514
jmp 0x47d50e
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x9c], edi
mov edi, dword [ebp - 0x1c]
mov dword [eax + 0x98], esi
mov dword [edi + 0xa0], edx
mov dword [edi + 0xa4], ecx
mov eax, dword [edi + 0x3c]
mov esi, dword [sym.imp.USER32.dll_SetScrollInfo]
test eax, 0x100000
je 0x47d54c
mov ecx, dword [edi + 0xd0]
test ecx, ecx
je 0x47d54c
mov eax, dword [edi + 0x90]
add eax, dword [edi + 0x78]
push 1
mov dword [ecx + 0xc], eax
push dword [edi + 0xd0]
push 0
push dword [edi + 4]
call esi
mov eax, dword [edi + 0x3c]
test eax, 0x200000
je 0x47d578
mov ecx, dword [edi + 0xcc]
test ecx, ecx
je 0x47d578
mov eax, dword [edi + 0x94]
add eax, dword [edi + 0x7c]
push 1
mov dword [ecx + 0xc], eax
push dword [edi + 0xcc]
push 1
push dword [edi + 4]
call esi
mov ecx, dword [ebp - 0x14]
movss xmm0, dword [ebp - 0xa4]
movss dword [ecx + 0x24], xmm0
movss xmm0, dword [ebp - 0xa0]
movss dword [ecx + 0x28], xmm0
movss xmm0, dword [ebp - 0x9c]
movss dword [ecx + 0x2c], xmm0
movss xmm0, dword [ebp - 0x98]
movss dword [ecx + 0x30], xmm0
mov al, byte [ebp - 0x94]
mov byte [ecx + 0x34], al
mov al, byte [ebp - 0x93]
mov byte [ecx + 0x35], al
mov al, byte [ebp - 0x92]
mov byte [ecx + 0x36], al
mov al, byte [ebp - 0x91]
mov byte [ecx + 0x37], al
mov al, byte [ebp - 0x90]
mov byte [ecx + 0x38], al
mov al, byte [ebp - 0x8f]
mov byte [ecx + 0x39], al
mov eax, dword [ebp - 0x21c]
mov dword [ecx + 0x14], eax
mov eax, dword [ebp - 0x218]
mov dword [ecx + 0x18], eax
mov eax, dword [ebp - 0x214]
mov dword [ecx + 0x1c], eax
mov eax, dword [ebp - 0x210]
mov dword [ecx + 0x20], eax
mov esi, 1
lea ecx, [ebp - 0x2ec]
call fcn.0047d810
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0xc