Function at 0x42cf3c
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
lea ebp, [esp - 0x6c]
sub esp, 0x62c
push ebx
mov ebx, ecx
mov ecx, dword [ebx + 0xc]
cmp ecx, 0x2af8
jae 0x42cf75
mov eax, dword [ebx + 0x10]
cmp ecx, eax
jb 0x42cf98
lea eax, [eax + eax*4 + 0x1388]
shl eax, 2
push eax
push dword [ebx + 0x14]
call fcn.00440d11
test eax, eax
pop ecx
pop ecx
jne 0x42cf8e
push 0x45a5d8
push str.Too_many_controls.__The_current_thread_will_exit.
mov ecx, 0x467ce0
call fcn.0044c37d
jmp 0x42f13d
add dword [ebx + 0x10], 0x3e8
mov dword [ebx + 0x14], eax
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebx + 0x14]
push esi
lea eax, [eax + eax*4]
push 0x14
lea esi, [ecx + eax*4]
push 0
push esi
mov dword [ebp + 0x20], esi
call fcn.00457b80
add esp, 0xc
cmp byte [ebp + 0x74], 0x14
jne 0x42cfc3
or byte [esi + 5], 0x80
mov byte [ebp + 0x74], 0x13
cmp byte [ebp + 0x74], 0x13
jne 0x42cff1
cmp byte [ebx + 0x54], 0xff
jne 0x42cfe8
push 0x45a5d8
push str.Too_many_tab_controls.__The_current_thread_will_exit.
mov ecx, 0x467ce0
call fcn.0044c37d
jmp 0x42f13c
mov byte [esi + 6], 0xff
mov al, byte [ebx + 0x54]
jmp 0x42d018
cmp byte [ebp + 0x74], 0x15
jne 0x42d00f
cmp dword [ebx + 4], 0
je 0x42d009
push 0x45a5d8
push 0x4600c0
jmp 0x42cfd9
mov byte [esi + 6], 0xff
jmp 0x42d01b
mov al, byte [ebx + 0x55]
mov byte [esi + 6], al
mov al, byte [ebx + 0x56]
mov byte [esi + 7], al
cmp dword [ebx + 0xc], 0
push edi
mov edi, 0x80000000
jne 0x42d079
cmp dword [ebx + 0x74], edi
jne 0x42d04d
mov eax, dword [ebx + 0x48]
mov ecx, dword [0x46b3f4]
lea eax, [eax + eax*4]
shl eax, 4
fild dword [eax + ecx + 0x44]
fmul qword [0x45e5c8]
call fcn.0045871c
mov dword [ebx + 0x74], eax
cmp dword [ebx + 0x78], edi
jne 0x42d073
mov eax, dword [ebx + 0x48]
mov ecx, dword [0x46b3f4]
lea eax, [eax + eax*4]
shl eax, 4
fild dword [eax + ecx + 0x44]
fmul qword [0x4600b8]
call fcn.0045871c
mov dword [ebx + 0x78], eax
mov eax, dword [ebx + 0x74]
mov dword [ebx + 0x7c], eax
mov al, byte [ebp + 0x74]
mov byte [esi + 4], al
push esi
lea eax, [ebp - 0x174]
push eax
mov ecx, ebx
call fcn.0042fd15
mov al, byte [ebx + 0x3d]
or byte [ebp - 0x171], 0x10
xor edx, edx
inc edx
cmp byte [ebp + 0x74], 6
mov byte [ebp + 0x1c], al
mov edi, 0xff000000
mov eax, 0x20000
jne 0x42d0c3
or byte [ebp - 0x173], 0x40
cmp byte [ebx + 0x3c], 0
jne 0x42d0e2
or dword [ebp - 0x174], eax
jmp 0x42d0e2
cmp byte [ebx + 0x3c], 0
je 0x42d0cf
or dword [ebp - 0x174], eax
mov al, byte [ebp + 0x74]
cmp al, 2
je 0x42d0fd
cmp al, 0x10
je 0x42d0fd
cmp al, 0x11
je 0x42d0fd
cmp al, 0x12
je 0x42d0fd
cmp byte [esi + 4], 0xa
mov byte [ebp + 0x3e], 1
je 0x42d0f2
mov eax, dword [ebx + 0x58]
mov dword [esi + 0x10], eax
mov eax, dword [ebx + 0x58]
mov dword [ebp - 0x118], eax
jmp 0x42d10a
cmp byte [ebp + 0x74], 0x12
mov byte [ebp + 0x3e], 0
jne 0x42d10a
mov dword [esi + 0x10], edi
movzx eax, byte [ebp + 0x74]
mov dword [ebp + 0x48], eax
add eax, 0xfffffffc
cmp eax, 0x11
mov ecx, 0x10000
ja case.0x42d122.6
jmp dword [eax*4 + 0x42f145]
or byte [ebp - 0x172], 0x21
jmp case.0x42d122.6
or dword [ebp - 0x174], 0x210042
jmp case.0x42d122.6
or dword [ebp - 0x174], 0x210080
jmp 0x42d182
or dword [ebp - 0x164], 0x30
or dword [ebp - 0x174], 0x10008
or byte [ebp - 0x16b], 2
mov dword [ebp - 0x160], edx
jmp case.0x42d122.6
or dword [ebp - 0x174], 0x10027
jmp 0x42d182
or dword [ebp - 0x174], ecx
or byte [ebp - 0x16b], 2
jmp case.0x42d122.6
or dword [ebp - 0x174], 0x36
jmp case.0x42d122.6
or dword [ebp - 0x174], 0x1000c
jmp case.0x42d122.6
or dword [ebp - 0x174], ecx
jmp case.0x42d122.6
or dword [ebp - 0x174], edx
jmp case.0x42d122.6
or dword [ebp - 0x174], 0x10200
mov byte [ebp + 0x1c], 0
jmp case.0x42d122.6
test byte [ebx + 0x36], 4
je 0x42d1cd
or byte [ebp - 0x173], 1
or byte [ebp - 0x173], 8
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x174]
push eax
push dword [ebp + 0x78]
mov ecx, ebx
call fcn.0042fe55
test eax, eax
je 0x42f13b
cmp byte [ebp + 0x74], 0xa
mov eax, dword [ebp - 0x118]
je 0x42d1ff
mov eax, dword [esi + 0x10]
cmp eax, edi
setne al
cmp dword [ebp - 0x114], edi
mov byte [ebp + 0x1a], al
jne 0x42d218
or dword [ebp - 0x114], 0xffffffff
jmp 0x42d23a
cmp dword [ebp - 0x114], 0xffffffff
jne 0x42d23a
mov eax, dword [ebx + 0x64]
cmp eax, edi
je 0x42d23a
cmp byte [ebp + 0x74], 0x12
je 0x42d23a
cmp byte [ebp + 0x74], 0x15
je 0x42d23a
mov dword [ebp - 0x114], eax
cmp dword [ebp - 0x14c], 0x80000000
mov edi, dword [ebp - 0x170]
jne 0x42d283
cmp dword [ebp - 0x148], 0x80000000
jne 0x42d283
fld dword [ebp - 0x144]
fcomp qword [0x4600b0]
fnstsw ax
test ah, 0x41
je 0x42d283
push 0x4600a8
push dword [ebp + 0x7c]
call fcn.00439b0d
test eax, eax
pop ecx
pop ecx
jne 0x42d283
and dword [ebp + 0x78], eax
jmp 0x42d28f
mov eax, edi
not eax
and eax, 0x2000
mov dword [ebp + 0x78], eax
mov eax, dword [ebp - 0x168]
mov ecx, dword [ebp + 0x48]
not eax
and eax, dword [ebp - 0x16c]
push 7
mov dword [ebp + 0x54], eax
mov eax, edi
not eax
and eax, dword [ebp - 0x174]
pop edx
or eax, 0x40000000
cmp ecx, edx
mov dword [ebp + 0x68], eax
jg 0x42d339
je 0x42d331
sub ecx, 3
je 0x42d327
dec ecx
je 0x42d310
dec ecx
je 0x42d2f6
dec ecx
jne 0x42d3d9
and eax, 0xfffffff9
or eax, 9
mov ecx, eax
test ecx, 0x20000
je 0x42d2eb
mov eax, 0x10000
test eax, edi
jne 0x42d2eb
or ecx, eax
or ecx, dword [ebp + 0x78]
mov dword [ebp + 0x68], ecx
jmp 0x42d3d9
mov ecx, eax
and ecx, 6
cmp cl, 6
jne 0x42d308
and eax, 0xfffffff6
or eax, 6
jmp 0x42d31f
and eax, 0xfffffff3
or eax, 3
jmp 0x42d31f
test al, 1
je 0x42d31c
and eax, 0xfffffff1
or eax, 1
jmp 0x42d31f
and eax, 0xfffffff0
or eax, dword [ebp + 0x78]
jmp 0x42d3d6
and eax, 0xfffffff7
or eax, edx
jmp 0x42d3d6
or eax, 3
jmp 0x42d3d6
sub ecx, 8
je 0x42d3c4
dec ecx
je 0x42d3cb
sub ecx, 3
je 0x42d37e
sub ecx, edx
jne 0x42d3d9
or eax, 0x4000000
cmp dword [ebx + 0x60], 0
je 0x42d367
test byte [esi + 5], 0x20
je 0x42d370
cmp dword [esi + 0x10], 0xff000000
je 0x42d377
or eax, 0x2000
jmp 0x42d3d6
and eax, 0xffffdfff
jmp 0x42d3d6
fld dword [ebp - 0x144]
fcomp qword [0x4600b0]
fnstsw ax
test ah, 0x41
je 0x42d3a7
push 0xa
push dword [ebp + 0x7c]
call fcn.00457de0
test eax, eax
mov edi, dword [ebp - 0x170]
pop ecx
pop ecx
je 0x42d3b1
mov eax, edi
not eax
and eax, 4
or dword [ebp + 0x68], eax
test byte [ebp + 0x68], 4
je 0x42d3d9
not edi
and edi, 0x201040
or dword [ebp + 0x68], edi
jmp 0x42d3d9
test al, 1
je 0x42d3d0
and eax, 0xfffffff1
or eax, 1
jmp 0x42d3d6
and eax, 0xfffffff2
or eax, 2
mov dword [ebp + 0x68], eax
cmp byte [ebp + 0x74], 4
mov edi, 0x45a5d8
jne 0x42d4fd
cmp dword [esi + 0xc], 0
jne 0x42d4fd
test byte [esi + 5], 1
jne 0x42d4fd
mov eax, dword [ebx + 8]
test eax, eax
jbe 0x42d418
push 0xa
lea ecx, [ebp - 0x5c0]
push ecx
inc eax
push eax
call fcn.0040125c
add esp, 0xc
jmp 0x42d41f
mov byte [ebp - 0x5c0], 0
push dword [ebp + 0x7c]
lea eax, [ebp - 0x5c0]
push str.Button_s
push 0x400
push eax
call fcn.0040a76e
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push edi
lea eax, [ebp - 0x5c0]
push 0x460098
push eax
call fcn.0041d1a8
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push edi
lea eax, [ebp - 0x5c0]
push 0x45f500
push eax
call fcn.0041d1a8
add esp, 0x50
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push edi
lea eax, [ebp - 0x5c0]
push 0x45a5e4
push eax
call fcn.0041d1a8
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push edi
lea eax, [ebp - 0x5c0]
push 0x45e7dc
push eax
call fcn.0041d1a8
add esp, 0x40
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push edi
lea eax, [ebp - 0x5c0]
push 0x45f7c8
push eax
call fcn.0041d1a8
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push edi
lea eax, [ebp - 0x5c0]
push 0x460094
push eax
call fcn.0041d1a8
add esp, 0x40
lea eax, [ebp - 0x5c0]
push eax
mov ecx, 0x467ce0
call fcn.0044faa8
mov dword [esi + 0xc], eax
xor eax, eax
mov al, byte [esi + 6]
mov ecx, ebx
push eax
call fcn.00432cbd
mov dword [ebp + 0x40], eax
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x42d520
mov ecx, dword [ebx + 0x14]
lea eax, [eax + eax*4]
lea edi, [ecx + eax*4 - 0x14]
jmp 0x42d526
lea edi, [ebp - 0x188]
mov eax, 0x80000000
cmp dword [ebp - 0x154], eax
mov dword [ebp + 0x60], edi
jne 0x42d5ce
cmp dword [ebp - 0x150], eax
jne 0x42d5ce
cmp dword [ebp + 0x40], 0
je 0x42d585
xor eax, eax
mov al, byte [esi + 7]
mov ecx, ebx
push eax
xor eax, eax
mov al, byte [esi + 6]
push eax
call fcn.00432db8
test eax, eax
jne 0x42d585
push dword [ebp + 0x40]
lea eax, [ebp + 0x24]
push eax
mov ecx, ebx
call fcn.00432e39
mov eax, dword [ebx + 0x74]
add eax, dword [ebp + 0x24]
mov dword [ebp - 0x154], eax
mov eax, dword [ebx + 0x78]
add eax, dword [ebp + 0x28]
jmp 0x42d59d
mov eax, dword [ebx + 0x7c]
mov dword [ebp - 0x154], eax
mov eax, dword [ebx + 0x88]
add eax, dword [ebx + 0x80]
add eax, dword [ebx + 0x78]
cmp byte [ebp + 0x74], 1
mov dword [ebp - 0x150], eax
jne 0x42d5ce
cmp dword [ebx + 0xc], 0
je 0x42d5e0
cmp byte [edi + 4], 1
jne 0x42d5e0
mov cl, byte [edi + 6]
cmp cl, byte [esi + 6]
jne 0x42d5e0
mov cl, byte [edi + 7]
cmp cl, byte [esi + 7]
jne 0x42d5e0
add eax, 8
mov dword [ebp - 0x150], eax
cmp byte [ebp + 0x74], 0xe
je 0x42d5e4
cmp byte [ebp + 0x74], 0xa
je 0x42d5e4
cmp byte [ebp + 0x74], 0xb
je 0x42d5e4
xor dl, dl
jmp 0x42d5e6
mov dl, 1
mov ecx, dword [0x46b3f4]
test dl, dl
sete byte [ebp + 0x67]
cmp dword [ebp - 0x148], 0x80000000
jne 0x42d6fd
fld dword [ebp - 0x144]
fcomp dword [0x460090]
fnstsw ax
test ah, 5
jp 0x42d6fd
mov eax, dword [ebp + 0x48]
add eax, 0xfffffffd
cmp eax, 0x10
ja case.0x42d628.4
jmp dword [eax*4 + 0x42f18d]
test byte [ebp + 0x68], 1
mov dword [ebp - 0x144], 0x40400000
je 0x42d649
test byte [ebp + 0x68], 2
je case.0x42d628.4
cmp byte [0x4683a0], 0
je case.0x42d628.4
test byte [ebp + 0x69], 4
jne case.0x42d628.4
mov byte [ebp + 0x67], 0
jmp case.0x42d628.4
mov dword [ebp - 0x144], 0x40400000
jmp case.0x42d628.4
mov dword [ebp - 0x144], 0x40a00000
jmp case.0x42d628.4
mov dword [ebp - 0x144], 0x40000000
jmp case.0x42d628.4
mov eax, dword [ebp + 0x7c]
cmp byte [eax], 0
jne case.0x42d628.4
test byte [ebp + 0x68], 4
jne case.0x42d628.9
fld1
fstp dword [ebp - 0x144]
jmp case.0x42d628.4
test byte [ebp + 0x68], 0x40
je case.0x42d628.10
jmp 0x42d6da
test byte [ebp + 0x68], 2
jne case.0x42d628.10
push dword [ebp - 0x128]
mov ecx, ebx
push dword [ebp + 0x68]
call fcn.0042fbc1
mov dword [ebp - 0x148], eax
jmp case.0x42d628.4
test byte [ebp + 0x68], 4
jne case.0x42d628.10
mov eax, dword [ebx + 0x48]
lea eax, [eax + eax*4]
shl eax, 4
mov ecx, dword [eax + ecx + 0x44]
shl ecx, 1
mov dword [ebp - 0x148], ecx
jmp case.0x42d628.4
mov dword [ebp - 0x144], 0x41200000
jmp case.0x42d628.4
cmp byte [ebp + 0x74], 7
je 0x42d709
cmp byte [ebp + 0x74], 8
jne case.0x42d628.4
cmp byte [0x4683a0], 0
je case.0x42d628.4
or byte [ebp + 0x69], 4
fld dword [ebp - 0x144]
and dword [ebp + 0x5c], 0
fcomp dword [0x46008c]
and dword [ebp + 0x28], 0
fnstsw ax
test ah, 0x41
jne 0x42d874
cmp byte [ebp + 0x74], 3
je 0x42d747
cmp byte [ebp + 0x74], 6
jbe 0x42d759
cmp byte [ebp + 0x74], 8
ja 0x42d759
fld dword [ebp - 0x144]
fadd dword [0x460090]
fstp dword [ebp - 0x144]
cmp byte [ebp + 0x67], 0
je 0x42d866
push dword [ebx]
call dword [sym.imp.USER32.dll_GetDC]
mov ecx, dword [0x46b3f4]
mov dword [ebp + 0x5c], eax
mov eax, dword [ebx + 0x48]
lea eax, [eax + eax*4]
shl eax, 4
push dword [eax + ecx + 0x4c]
push dword [ebp + 0x5c]
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp + 0x28], eax
lea eax, [ebp - 0x1c0]
push eax
push dword [ebp + 0x5c]
call dword [sym.imp.GDI32.dll_GetTextMetricsA]
fld dword [ebp - 0x144]
fadd qword [0x45e5d0]
call fcn.0045871c
mov edi, eax
lea eax, [edi - 1]
imul eax, dword [ebp - 0x1b0]
mov dword [ebp + 0x78], eax
fild dword [ebp + 0x78]
fild dword [ebp - 0x1c0]
fmul dword [ebp - 0x144]
faddp st(1)
fadd qword [0x45e5d0]
call fcn.0045871c
cmp dword [ebp + 0x48], 0xd
mov dword [ebp - 0x148], eax
jg 0x42d84d
cmp dword [ebp + 0x48], 0xc
jge 0x42d803
cmp dword [ebp + 0x48], 3
je 0x42d845
cmp dword [ebp + 0x48], 4
je 0x42d820
cmp dword [ebp + 0x48], 6
jle 0x42d874
cmp dword [ebp + 0x48], 9
jg 0x42d874
add dword [ebp - 0x148], 8
test byte [ebp + 0x6a], 0x10
je 0x42d874
push 3
call dword [sym.imp.USER32.dll_GetSystemMetrics]
add dword [ebp - 0x148], eax
jmp 0x42d874
mov eax, dword [ebx + 0x48]
mov ecx, dword [0x46b3f4]
lea eax, [eax + eax*4]
shl eax, 4
mov eax, dword [eax + ecx + 0x44]
mov ecx, dword [ebp - 0x148]
lea eax, [ecx + eax + 2]
mov dword [ebp - 0x148], eax
jmp 0x42d874
mov eax, dword [ebx + 0x78]
imul eax, edi
jmp 0x42d818
cmp dword [ebp + 0x48], 0xf
je 0x42d803
cmp dword [ebp + 0x48], 0x13
jne 0x42d874
inc edi
imul edi, dword [ebx + 0x78]
add dword [ebp - 0x148], edi
jmp 0x42d874
test dl, dl
jne 0x42d874
mov dword [ebp - 0x148], 0x1e
mov eax, 0x80000000
cmp dword [ebp - 0x148], eax
mov byte [ebp + 0x3f], 0
je 0x42d891
cmp dword [ebp - 0x14c], eax
jne case.0x42db0d.4
and dword [ebp + 0x78], 0
cmp byte [ebp + 0x74], 1
mov edi, 0x400
je 0x42d92c
cmp byte [ebp + 0x74], 3
jbe 0x42dad7
cmp byte [ebp + 0x74], 6
jbe 0x42d92c
cmp byte [ebp + 0x74], 0xc
jne 0x42dad7
mov eax, dword [ebp + 0x7c]
cmp byte [eax], 0
je 0x42dad7
cmp dword [ebp + 0x5c], 0
jne 0x42d8fa
push dword [ebx]
call dword [sym.imp.USER32.dll_GetDC]
mov ecx, dword [0x46b3f4]
mov dword [ebp + 0x5c], eax
mov eax, dword [ebx + 0x48]
lea eax, [eax + eax*4]
shl eax, 4
push dword [eax + ecx + 0x4c]
push dword [ebp + 0x5c]
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp + 0x28], eax
lea eax, [ebp - 0x1c0]
push eax
push dword [ebp + 0x5c]
call dword [sym.imp.GDI32.dll_GetTextMetricsA]
mov eax, dword [ebp - 0x1ac]
add eax, 4
test byte [ebp + 0x6a], 0x20
mov dword [ebp + 0x78], eax
je 0x42d927
push 2
call dword [sym.imp.USER32.dll_GetSystemMetrics]
add dword [ebp + 0x78], eax
mov edi, 0x2c40
cmp dword [ebp + 0x5c], 0
jne 0x42d95c
push dword [ebx]
call dword [sym.imp.USER32.dll_GetDC]
mov ecx, dword [0x46b3f4]
mov dword [ebp + 0x5c], eax
mov eax, dword [ebx + 0x48]
lea eax, [eax + eax*4]
shl eax, 4
push dword [eax + ecx + 0x4c]
push dword [ebp + 0x5c]
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp + 0x28], eax
cmp byte [ebp + 0x74], 1
jne 0x42d973
or edi, 0x40
test byte [ebp + 0x68], 0x80
je 0x42d9a7
or edi, 0x800
jmp 0x42d9a7
cmp byte [ebp + 0x74], 5
je 0x42d97f
cmp byte [ebp + 0x74], 6
jne 0x42d9a7
lea eax, [ebp - 0x1c0]
push eax
push dword [ebp + 0x5c]
call dword [sym.imp.GDI32.dll_GetTextMetricsA]
push 0x47
call dword [sym.imp.USER32.dll_GetSystemMetrics]
add eax, dword [ebp - 0x1ac]
mov ecx, dword [ebp + 0x78]
lea eax, [ecx + eax + 2]
mov dword [ebp + 0x78], eax
mov eax, dword [ebp - 0x14c]
mov ecx, 0x80000000
cmp eax, ecx
je 0x42d9b9
or edi, 0x10
and dword [ebp - 0x184], 0
and dword [ebp - 0x180], 0
mov edx, eax
sub eax, dword [ebp + 0x78]
sub edx, ecx
neg edx
sbb edx, edx
and edx, eax
mov eax, dword [ebp - 0x148]
sub eax, 0x80000000
neg eax
sbb eax, eax
and eax, dword [ebp - 0x148]
mov dword [ebp - 0x17c], edx
mov dword [ebp - 0x178], eax
mov eax, dword [ebp + 0x7c]
cmp byte [eax], 0
jne 0x42da02
mov eax, 0x460088
push edi
lea ecx, [ebp - 0x184]
push ecx
push 0xffffffffffffffff
push eax
push dword [ebp + 0x5c]
call dword [sym.imp.USER32.dll_DrawTextA]
mov edi, dword [ebp - 0x17c]
sub edi, dword [ebp - 0x184]
cmp dword [ebp - 0x148], 0x80000000
je 0x42da3c
cmp eax, dword [ebp - 0x148]
jle 0x42da8a
cmp byte [ebp + 0x74], 0xc
je 0x42da8a
cmp byte [ebp + 0x74], 0xc
mov dword [ebp - 0x148], eax
jne 0x42da67
add eax, 8
test byte [ebp + 0x6a], 0x10
mov dword [ebp - 0x148], eax
je 0x42da8a
push 3
call dword [sym.imp.USER32.dll_GetSystemMetrics]
add dword [ebp - 0x148], eax
jmp 0x42da8a
cmp byte [ebp + 0x74], 4
jne 0x42da8a
mov ecx, dword [ebx + 0x48]
mov edx, dword [0x46b3f4]
lea ecx, [ecx + ecx*4]
shl ecx, 4
mov ecx, dword [ecx + edx + 0x44]
lea eax, [ecx + eax + 2]
mov dword [ebp - 0x148], eax
cmp dword [ebp - 0x14c], 0x80000000
je 0x42da9e
cmp edi, dword [ebp - 0x14c]
jle 0x42dad7
mov eax, dword [ebp + 0x78]
add edi, eax
cmp byte [ebp + 0x74], 4
mov byte [ebp + 0x3f], 1
mov dword [ebp - 0x14c], edi
jne 0x42dad7
push 0x2d
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, dword [ebx + 0x48]
mov edx, dword [0x46b3f4]
lea ecx, [ecx + ecx*4]
shl ecx, 4
mov ecx, dword [ecx + edx + 0x44]
lea eax, [ecx + eax*2]
add dword [ebp - 0x14c], eax
cmp dword [ebp - 0x14c], 0x80000000
jne case.0x42db0d.4
mov eax, dword [ebx + 0x48]
mov ecx, dword [0x46b3f4]
lea eax, [eax + eax*4]
shl eax, 4
mov edx, dword [eax + ecx + 0x44]
mov ecx, dword [ebp + 0x48]
mov eax, edx
add ecx, 0xfffffffd
imul eax, eax, 0xf
cmp ecx, 0x10
ja case.0x42db0d.4
movzx ecx, byte [ecx + 0x42f1f1]
jmp dword [ecx*4 + 0x42f1d1]
add eax, eax
jmp case.0x42db0d.7
test byte [ebp + 0x68], 0x40
jne case.0x42db0d.7
jmp 0x42db3e
test byte [ebp + 0x68], 2
je case.0x42db0d.7
push dword [ebp - 0x128]
mov ecx, ebx
push dword [ebp + 0x68]
call fcn.0042fbc1
jmp case.0x42db0d.7
test byte [ebp + 0x68], 4
je case.0x42db0d.7
lea eax, [edx + edx]
jmp case.0x42db0d.7
mov ecx, dword [ebx + 0x74]
lea eax, [eax + ecx*2]
jmp case.0x42db0d.7
mov ecx, dword [ebx + 0x74]
lea ecx, [ecx + ecx*2]
lea eax, [ecx + eax*2]
mov dword [ebp - 0x14c], eax
cmp byte [ebp + 0x74], 0xc
jne 0x42dc46
test byte [ebp + 0x68], 4
jne 0x42dc46
fld dword [ebp - 0x144]
fcomp dword [0x460090]
fnstsw ax
test ah, 5
jp 0x42dc46
cmp dword [ebp + 0x5c], 0
jne 0x42dbb5
push dword [ebx]
call dword [sym.imp.USER32.dll_GetDC]
mov ecx, dword [0x46b3f4]
mov dword [ebp + 0x5c], eax
mov eax, dword [ebx + 0x48]
lea eax, [eax + eax*4]
shl eax, 4
push dword [eax + ecx + 0x4c]
push dword [ebp + 0x5c]
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp + 0x28], eax
lea eax, [ebp - 0x1c0]
push eax
push dword [ebp + 0x5c]
call dword [sym.imp.GDI32.dll_GetTextMetricsA]
mov edi, dword [ebp - 0x148]
sub edi, dword [ebp - 0x1c0]
sub edi, 8
test byte [ebp + 0x6a], 0x10
mov dword [ebp + 0x78], edi
je 0x42dbea
push 3
call dword [sym.imp.USER32.dll_GetSystemMetrics]
sub edi, eax
mov dword [ebp + 0x78], edi
test edi, edi
jle 0x42dc3e
mov eax, dword [ebp - 0x1b0]
fild dword [ebp + 0x78]
mov ecx, dword [ebp - 0x1c0]
add eax, ecx
mov dword [ebp + 0x78], eax
fidiv dword [ebp + 0x78]
fadd dword [0x460090]
fst dword [ebp - 0x144]
fcomp qword [0x4600b0]
fnstsw ax
test ah, 0x41
jne 0x42dc46
mov eax, dword [ebp - 0x170]
not eax
mov ecx, eax
and ecx, 4
or dword [ebp + 0x68], ecx
test byte [ebp + 0x68], 4
je 0x42dc46
and eax, 0x201040
or dword [ebp + 0x68], eax
jmp 0x42dc46
fld1
fstp dword [ebp - 0x144]
cmp byte [ebp + 0x1c], 0
mov eax, dword [ebx + 0xc]
push dword [ebx]
sete byte [ebp + 0x47]
add eax, 3
mov byte [ebp + 0x53], 0
mov dword [ebp + 0x4c], eax
mov byte [ebp + 0x5b], 0
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x42dc7b
push dword [ebx]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
mov byte [ebp + 0x7b], 1
je 0x42dc7f
mov byte [ebp + 0x7b], 0
cmp byte [esi + 6], 0xff
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
mov byte [ebp + 0x3d], 0
jae 0x42dccd
cmp dword [ebp + 0x40], 0
je 0x42dcc9
mov eax, dword [ebp + 0x40]
push 0xfffffffffffffff0
push dword [eax]
call dword [sym.imp.USER32.dll_GetWindowLongA]
test eax, 0x10000000
je 0x42dcc9
mov eax, dword [ebp + 0x40]
push 0
push 0
push 0x130b
push dword [eax]
call edi
movzx ecx, byte [esi + 7]
cmp eax, ecx
jne 0x42dcc9
mov al, byte [ebp + 0x7b]
mov byte [ebp + 0x3d], al
jmp 0x42dccd
and byte [ebp + 0x6b], 0xef
mov eax, dword [ebp + 0x48]
dec eax
cmp eax, 0x14
ja case.0x42dcda.20
jmp dword [eax*4 + 0x42f202]
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push dword [ebp + 0x7c]
push str.static
jmp 0x42df30
mov eax, 0x80000000
cmp dword [ebp - 0x14c], eax
jne 0x42dd2a
and dword [ebp - 0x14c], 0
cmp dword [ebp - 0x148], eax
jne 0x42dd39
and dword [ebp - 0x148], 0
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push dword [ebp + 0x7c]
push str.static
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
xor eax, eax
mov al, byte [esi + 5]
shr al, 1
and eax, 0xffffff01
push eax
push dword [ebp - 0x104]
lea eax, [ebp + 0x60]
push eax
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp + 0x7c]
call fcn.00438f83
add esp, 0x18
test eax, eax
mov dword [esi + 0x10], eax
je case.0x42dcda.20
mov eax, dword [ebp + 0x60]
neg eax
sbb eax, eax
and eax, 0xfffffff5
add eax, 0xe
or eax, dword [ebp + 0x68]
push eax
push 0xfffffffffffffff0
push dword [esi]
call dword [sym.imp.USER32.dll_SetWindowLongA]
push dword [esi + 0x10]
push dword [ebp + 0x60]
push 0x172
push dword [esi]
call edi
cmp dword [ebp + 0x60], 0
jne 0x42ddee
and byte [esi + 5], 0x7f
jmp 0x42e14f
or byte [esi + 5], 0x80
jmp 0x42e14f
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push dword [ebp + 0x7c]
push str.button
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
test byte [ebp + 0x68], 1
je case.0x42dcda.20
mov eax, dword [ebx + 0x18]
cmp eax, dword [ebx + 0xc]
jae 0x42de78
mov ecx, dword [ebx + 0x14]
push 1
push 0xfffffffffffffff0
lea eax, [eax + eax*4]
push dword [ecx + eax*4]
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov ecx, dword [ebx + 0x14]
and eax, 0xfffe
push eax
mov eax, dword [ebx + 0x18]
push 0xf4
lea eax, [eax + eax*4]
push dword [ecx + eax*4]
call edi
mov eax, dword [ebx + 0xc]
push 0
mov dword [ebx + 0x18], eax
add eax, 3
push eax
push 0x401
push dword [ebx]
call edi
movzx eax, word [ebp + 0x68]
push 1
push eax
push 0xf4
jmp 0x42ecd2
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push dword [ebp + 0x7c]
push str.button
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
cmp dword [ebp - 0x108], 0
je case.0x42dcda.20
push 0
push dword [ebp - 0x108]
push 0xf1
jmp 0x42edea
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push dword [ebp + 0x7c]
push str.button
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [esi], eax
jmp case.0x42dcda.20
cmp dword [ebp - 0x110], 0
je 0x42df53
cmp byte [esi + 4], 8
jne 0x42df53
and dword [ebp + 0x68], 0xffffffbf
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push 0x45a5d8
push str.Combobox
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
movzx ecx, byte [ebp + 0x7b]
mov edx, dword [0x46b3f4]
push ecx
mov ecx, dword [ebx + 0x48]
lea ecx, [ecx + ecx*4]
shl ecx, 4
push dword [ecx + edx + 0x4c]
push 0x30
push eax
call edi
cmp byte [ebp + 0x67], 0
mov byte [ebp + 0x5b], 1
je 0x42e12d
push 0
push 0
push 0x154
push dword [esi]
call edi
test byte [ebp + 0x68], 1
mov dword [ebp + 0x48], eax
je 0x42dfe6
test byte [ebp + 0x68], 2
mov dword [ebp + 0x60], 4
je 0x42dfed
mov dword [ebp + 0x60], 2
mov ecx, dword [ebp + 0x60]
lea eax, [ecx + eax*2 + 8]
cmp dword [ebp - 0x148], eax
jl 0x42e028
fld dword [ebp - 0x144]
fcomp dword [0x46008c]
fnstsw ax
test ah, 0x41
jne 0x42e12d
fild dword [ebp + 0x48]
fmul dword [ebp - 0x144]
call fcn.0045871c
mov ecx, dword [ebp + 0x60]
lea eax, [eax + ecx + 8]
mov dword [ebp - 0x148], eax
jmp 0x42e12d
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push 0x45a5d8
push str.Listbox
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
cmp dword [ebp - 0x38], 0
je 0x42e090
lea ecx, [ebp - 0x100]
push ecx
push dword [ebp - 0x38]
push 0x192
push eax
call edi
movzx eax, byte [ebp + 0x7b]
mov ecx, dword [0x46b3f4]
push eax
mov eax, dword [ebx + 0x48]
lea eax, [eax + eax*4]
shl eax, 4
push dword [eax + ecx + 0x4c]
push 0x30
push dword [esi]
call edi
push 0
push 0
push 0x1a1
push dword [esi]
mov byte [ebp + 0x5b], 1
call edi
mov dword [ebp + 0x48], eax
add eax, 8
mov dword [ebp + 0x60], eax
mov eax, dword [ebp + 0x68]
and eax, 0x100000
mov dword [ebp + 0x54], eax
je 0x42e0e0
push 3
call dword [sym.imp.USER32.dll_GetSystemMetrics]
add dword [ebp + 0x60], eax
mov eax, dword [ebp + 0x60]
cmp dword [ebp - 0x148], eax
jl 0x42e028
fld dword [ebp - 0x144]
fcomp dword [0x46008c]
fnstsw ax
test ah, 0x41
jne 0x42e12d
fild dword [ebp + 0x48]
fmul dword [ebp - 0x144]
call fcn.0045871c
add eax, 8
cmp dword [ebp + 0x54], 0
mov dword [ebp - 0x148], eax
je 0x42e12d
push 3
call dword [sym.imp.USER32.dll_GetSystemMetrics]
add dword [ebp - 0x148], eax
push 1
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [esi]
call dword [sym.imp.USER32.dll_MoveWindow]
mov byte [ebp + 0x53], 1
jmp case.0x42dcda.20
cmp dword [ebp - 0x160], 4
je 0x42e170
mov eax, dword [ebp + 0x68]
and eax, 0xfffffffc
or eax, dword [ebp - 0x160]
mov dword [ebp + 0x68], eax
mov eax, dword [ebp - 0x148]
cmp eax, 0x80000000
jne 0x42e182
mov eax, 0xc8
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push eax
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push 0x45a5d8
push str.SysListView32
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
push 0x3f8
call fcn.0043f68a
test eax, eax
pop ecx
mov dword [esi + 0x10], eax
jne 0x42e1e4
push dword [esi]
call dword [sym.imp.USER32.dll_DestroyWindow]
and dword [esi], 0
jmp case.0x42dcda.20
push 0x3f8
mov dword [ebx + 0x4c], esi
push 0
push dword [esi + 0x10]
call fcn.00457b80
mov eax, dword [esi + 0x10]
or dword [eax], 0xffffffff
mov eax, dword [esi + 0x10]
mov cl, byte [ebp + 0x1d]
add esp, 0xc
cmp dword [ebp + 0x40], 0
mov byte [eax + 5], cl
je 0x42e215
mov eax, dword [ebp + 0x40]
or byte [eax + 5], 0x80
cmp dword [ebp - 0x160], 4
jne 0x42e22b
push 0
push 4
push 0x108e
push dword [esi]
call edi
cmp dword [ebp - 0x164], 0
je 0x42e245
push dword [ebp - 0x164]
push 0
push 0x1036
push dword [esi]
call edi
lea eax, [ebp - 0x174]
push eax
push esi
mov ecx, ebx
call fcn.00431b74
cmp dword [ebp - 0x148], 0x80000000
jne case.0x42dcda.20
movzx eax, byte [ebp + 0x7b]
mov ecx, dword [0x46b3f4]
push eax
mov eax, dword [ebx + 0x48]
lea eax, [eax + eax*4]
shl eax, 4
push dword [eax + ecx + 0x4c]
push 0x30
push dword [esi]
call edi
mov eax, dword [ebp - 0x160]
dec eax
mov byte [ebp + 0x5b], 1
je 0x42e3ae
sub eax, 3
je 0x42e385
cmp dword [ebp + 0x5c], 0
jne 0x42e2cc
push dword [ebx]
call dword [sym.imp.USER32.dll_GetDC]
mov ecx, dword [0x46b3f4]
mov dword [ebp + 0x5c], eax
mov eax, dword [ebx + 0x48]
lea eax, [eax + eax*4]
shl eax, 4
push dword [eax + ecx + 0x4c]
push dword [ebp + 0x5c]
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp + 0x28], eax
lea eax, [ebp - 0x1c0]
push eax
push dword [ebp + 0x5c]
call dword [sym.imp.GDI32.dll_GetTextMetricsA]
cmp dword [ebp - 0x160], 0
jne 0x42e34c
push 0
push 0
push 0x1033
push dword [esi]
call edi
test eax, eax
mov dword [ebp + 0x20], eax
fild dword [ebp + 0x20]
jge 0x42e302
fadd dword [0x45babc]
fld dword [ebp - 0x144]
fsub dword [0x460090]
fmulp st(1)
call fcn.0045871c
shr eax, 0x10
mov dword [ebp + 0x60], eax
fild dword [ebp + 0x60]
push 0xc
fstp dword [ebp + 0x48]
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp + 0x60], eax
fild dword [ebp + 0x60]
fmul dword [ebp - 0x144]
fadd dword [ebp + 0x48]
call fcn.0045871c
mov ecx, dword [ebp - 0x1c0]
lea eax, [eax + ecx + 0x10]
jmp 0x42e3cc
push 0x32
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, dword [ebp - 0x1c0]
cmp eax, ecx
mov dword [ebp + 0x60], eax
jg 0x42e364
mov dword [ebp + 0x60], ecx
fild dword [ebp + 0x60]
fmul dword [ebp - 0x144]
fld dword [ebp - 0x144]
fsub dword [0x460090]
faddp st(1)
call fcn.0045871c
add eax, 0xb
jmp 0x42e3cc
push 0
push 0
push 0x1033
push dword [esi]
call edi
shr eax, 0x10
sub eax, 3
mov dword [ebp + 0x60], eax
fild dword [ebp + 0x60]
fmul dword [ebp - 0x144]
call fcn.0045871c
add eax, 7
jmp 0x42e3cc
fld dword [ebp - 0x144]
push 0xffffffffffffffff
call fcn.0045871c
dec eax
push eax
push 0x1040
push dword [esi]
call edi
shr eax, 0x10
add eax, 4
push 1
mov dword [ebp - 0x148], eax
push eax
jmp 0x42e98c
mov eax, dword [ebp - 0x148]
cmp eax, 0x80000000
jne 0x42e3ec
mov eax, 0xc8
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push eax
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push 0x45a5d8
push str.SysTreeView32
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
cmp dword [ebp - 0x108], 0
mov dword [ebx + 0x50], esi
je 0x42e44b
mov eax, dword [ebp + 0x68]
or eax, 0x100
push eax
push 0xfffffffffffffff0
push dword [esi]
call dword [sym.imp.USER32.dll_SetWindowLongA]
lea eax, [ebp - 0x174]
push eax
push esi
mov ecx, ebx
call fcn.00431dcf
cmp dword [ebp - 0x15c], 0
je 0x42e474
push dword [ebp - 0x15c]
push 0
push 0x1109
push dword [esi]
call edi
cmp dword [ebp - 0x148], 0x80000000
jne case.0x42dcda.20
movzx eax, byte [ebp + 0x7b]
mov ecx, dword [0x46b3f4]
push eax
mov eax, dword [ebx + 0x48]
lea eax, [eax + eax*4]
shl eax, 4
push dword [eax + ecx + 0x4c]
push 0x30
push dword [esi]
call edi
push 0
push 0
push 0x111c
push dword [esi]
mov byte [ebp + 0x5b], 1
call edi
cmp eax, 2
mov dword [ebp - 0x148], eax
jge 0x42e4d9
mov eax, dword [ebx + 0x48]
mov ecx, dword [0x46b3f4]
lea eax, [eax + eax*4]
shl eax, 4
mov eax, dword [eax + ecx + 0x44]
shl eax, 1
mov dword [ebp - 0x148], eax
fild dword [ebp - 0x148]
fmul dword [ebp - 0x144]
call fcn.0045871c
jmp 0x42e3c9
test byte [ebp + 0x68], 4
jne 0x42e517
cmp dword [ebp - 0x110], 0
jge 0x42e507
and dword [ebp + 0x68], 0xffefff7f
jmp 0x42e517
mov eax, dword [ebp - 0x170]
not eax
and eax, 0x80
or dword [ebp + 0x68], eax
mov eax, dword [ebp + 0x7c]
cmp byte [eax], 0
je 0x42e52c
test byte [ebp + 0x68], 4
je 0x42e52c
push eax
call fcn.00439b9d
pop ecx
test eax, eax
mov dword [ebp + 0x60], eax
jne 0x42e536
mov eax, dword [ebp + 0x7c]
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push eax
push str.edit
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je 0x42e5c8
test byte [ebp + 0x68], 0x20
je 0x42e58e
cmp byte [ebp + 0x18], 0
je 0x42e58e
movsx ecx, byte [ebp + 0x18]
push 0
push ecx
push 0xcc
push eax
call edi
cmp dword [ebp - 0x110], 0
jge 0x42e59e
and dword [ebp - 0x110], 0
push 0
push dword [ebp - 0x110]
push 0xc5
push dword [esi]
call edi
cmp dword [ebp - 0x38], 0
je 0x42e5c8
lea eax, [ebp - 0x100]
push eax
push dword [ebp - 0x38]
push 0xcb
push dword [esi]
call edi
mov eax, dword [ebp + 0x60]
test eax, eax
je case.0x42dcda.20
cmp eax, dword [ebp + 0x7c]
je case.0x42dcda.20
push eax
call fcn.0043ec47
pop ecx
jmp case.0x42dcda.20
mov eax, dword [ebp + 0x7c]
cmp byte [eax], 0
mov byte [ebp + 0x67], 0
je 0x42e635
push str.LongDate
push eax
call fcn.00442502
test eax, eax
pop ecx
pop ecx
jne 0x42e613
mov eax, dword [ebp + 0x68]
and eax, 0xfffffff6
or eax, 4
mov dword [ebp + 0x68], eax
jmp 0x42e635
push str.Time
push dword [ebp + 0x7c]
call fcn.00442502
test eax, eax
pop ecx
pop ecx
jne 0x42e631
mov eax, dword [ebp + 0x68]
and eax, 0xfffffffb
or eax, 9
jmp 0x42e60e
mov byte [ebp + 0x67], 1
cmp dword [ebp - 0x140], 2
jne 0x42e642
or dword [ebp + 0x68], 2
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push 0x45a5d8
push str.SysDateTimePick32
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
cmp byte [ebp + 0x67], 0
je 0x42e69a
push dword [ebp + 0x7c]
push 0
push 0x1005
push eax
call edi
cmp dword [ebp + 0x10], 0
je 0x42e6b0
lea eax, [ebp - 0x14]
push eax
push dword [ebp + 0x10]
push 0x1004
push dword [esi]
call edi
cmp dword [ebp - 0x140], 0
je 0x42e6d3
lea eax, [ebp - 0x34]
push eax
xor eax, eax
cmp dword [ebp - 0x140], 1
setne al
push eax
push 0x1002
push dword [esi]
call edi
mov eax, dword [esi + 0x10]
cmp eax, 0xff000000
je case.0x42dcda.20
push eax
push 1
push 0x1006
jmp 0x42ecd2
cmp dword [ebp + 0xc], 0
jne 0x42e716
mov eax, dword [ebp + 0x7c]
cmp byte [eax], 0
je 0x42e716
lea eax, [ebp - 0x34]
push eax
push dword [ebp + 0x7c]
call fcn.00439f61
cmp eax, 3
pop ecx
pop ecx
mov dword [ebp + 0xc], eax
jne 0x42e716
or dword [ebp + 0x68], 2
mov ecx, dword [ebp - 0x148]
cmp ecx, 0x80000000
jne 0x42e727
push 0x64
pop ecx
mov eax, dword [ebp - 0x14c]
test eax, eax
jge 0x42e734
push 0x64
pop eax
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push ecx
push eax
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push 0x45a5d8
push str.SysMonthCal32
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
mov ecx, dword [ebp + 0x68]
and ecx, 2
mov dword [ebp + 0x60], ecx
je 0x42e789
push 0
push 0x16e
push 0x1004
push eax
call edi
cmp dword [ebp + 0x10], 0
je 0x42e79f
lea eax, [ebp - 0x14]
push eax
push dword [ebp + 0x10]
push 0x1012
push dword [esi]
call edi
cmp dword [ebp + 0xc], 0
je 0x42e7e0
cmp dword [ebp + 0x60], 0
je 0x42e7d1
cmp dword [ebp + 0xc], 1
jne 0x42e7c4
lea esi, [ebp - 0x34]
lea edi, [ebp - 0x24]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp + 0x20]
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
lea eax, [ebp - 0x34]
push eax
push 0
push 0x1006
jmp 0x42e7dc
lea eax, [ebp - 0x34]
push eax
push 0
push 0x1002
push dword [esi]
call edi
mov eax, dword [esi + 0x10]
cmp eax, 0xff000000
je 0x42e7f6
push eax
push 1
push 0x100a
push dword [esi]
call edi
movzx eax, byte [ebp + 0x7b]
mov ecx, dword [0x46b3f4]
push eax
mov eax, dword [ebx + 0x48]
lea eax, [eax + eax*4]
shl eax, 4
push dword [eax + ecx + 0x4c]
push 0x30
push dword [esi]
call edi
cmp dword [ebp - 0x14c], 0x80000000
mov byte [ebp + 0x5b], 1
je 0x42e834
cmp dword [ebp - 0x148], 0x80000000
jne case.0x42dcda.20
lea eax, [ebp + 0x2c]
push eax
push 0
push 0x1009
push dword [esi]
call edi
test eax, eax
je case.0x42dcda.20
cmp dword [ebp - 0x14c], 0
jge 0x42e898
test byte [ebp + 0x68], 0x10
jne 0x42e86c
push 0
push 0
push 0x1015
push dword [esi]
call edi
cmp eax, dword [ebp + 0x34]
jge 0x42e86f
mov eax, dword [ebp + 0x34]
cmp dword [ebp - 0x14c], 0x80000000
jne 0x42e883
mov dword [ebp - 0x14c], eax
jmp 0x42e898
add eax, 6
imul eax, dword [ebp - 0x14c]
push 0xfffffffffffffffa
pop ecx
sub ecx, eax
mov dword [ebp - 0x14c], ecx
cmp dword [ebp - 0x148], 0x80000000
jne 0x42e984
fld dword [ebp - 0x144]
mov eax, dword [ebp + 0x38]
fcomp dword [0x46008c]
mov dword [ebp - 0x148], eax
fnstsw ax
test ah, 0x41
jne 0x42e984
fld dword [ebp - 0x144]
fld qword [0x45d490]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x42e984
cmp dword [ebp + 0x5c], 0
jne 0x42e911
push dword [ebx]
call dword [sym.imp.USER32.dll_GetDC]
mov ecx, dword [0x46b3f4]
mov dword [ebp + 0x5c], eax
mov eax, dword [ebx + 0x48]
lea eax, [eax + eax*4]
shl eax, 4
push dword [eax + ecx + 0x4c]
push dword [ebp + 0x5c]
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp + 0x28], eax
lea eax, [ebp - 0x1c0]
push eax
push dword [ebp + 0x5c]
call dword [sym.imp.GDI32.dll_GetTextMetricsA]
test byte [ebp + 0x68], 0x10
je 0x42e93d
mov eax, dword [ebp - 0x148]
mov ecx, dword [ebp - 0x1c0]
lea eax, [eax + ecx + 4]
mov dword [ebp - 0x148], eax
fild dword [ebp - 0x148]
fmul dword [ebp - 0x144]
call fcn.0045871c
mov dword [ebp - 0x148], eax
fild dword [ebp - 0x148]
mov eax, dword [ebp - 0x1c0]
add eax, 0xfffffffe
mov dword [ebp + 0x20], eax
fild dword [ebp + 0x20]
fld dword [ebp - 0x144]
fsub dword [0x460090]
fmulp st(1)
fsubp st(1)
call fcn.0045871c
mov dword [ebp - 0x148], eax
push 1
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [esi]
call dword [sym.imp.USER32.dll_MoveWindow]
jmp case.0x42dcda.20
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push 0x45a5d8
push str.msctls_hotkey32
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
mov eax, dword [ebp + 0x7c]
cmp byte [eax], 0
je 0x42ea0e
push 0
push eax
call fcn.00436a27
pop ecx
movzx eax, ax
push eax
push 0x401
push dword [esi]
call edi
cmp dword [ebp - 0x110], 0
jle case.0x42dcda.20
push 6
push dword [ebp - 0x110]
push 0x403
jmp 0x42ecd2
test byte [ebp + 0x68], 0x10
je 0x42ebd0
cmp dword [ebx + 4], 0
jne 0x42ea52
mov eax, dword [ebp + 0x40]
test eax, eax
je 0x42ebd0
test byte [eax + 5], 0x80
je 0x42ebd0
and dword [ebp + 0x68], 0xffffffef
mov byte [ebp + 0x67], 1
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push 0x45a5d8
push str.msctls_updown32
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
cmp byte [ebp + 0x67], 0
je 0x42eab4
mov ecx, dword [ebp + 0x60]
push 0
push dword [ecx]
push 0x469
push eax
call edi
cmp dword [ebx + 0xc], 0
je 0x42ec17
test byte [ebp + 0x68], 0x10
jne 0x42eace
cmp byte [ebp + 0x67], 0
je 0x42ec17
lea eax, [ebp + 0x2c]
push eax
push dword [esi]
call dword [sym.imp.USER32.dll_GetWindowRect]
push 2
lea eax, [ebp + 0x2c]
push eax
push dword [ebx]
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
mov eax, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x34]
mov ecx, dword [ebp + 0x30]
mov dword [ebp - 0x154], eax
sub edx, eax
mov eax, dword [ebp + 0x38]
sub eax, ecx
mov dword [ebp - 0x148], eax
lea eax, [ebp - 0x184]
push eax
mov eax, dword [ebp + 0x60]
mov dword [ebp - 0x150], ecx
mov dword [ebp - 0x14c], edx
push dword [eax]
call dword [sym.imp.USER32.dll_GetWindowRect]
push 2
lea eax, [ebp - 0x184]
push eax
push dword [ebx]
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
cmp byte [ebx + 0xb8], 0
je 0x42ebb1
test byte [ebp + 0x68], 4
je 0x42eb72
mov eax, dword [ebp - 0x14c]
add dword [ebp - 0x154], eax
add dword [ebp + 0x34], eax
push 1
push dword [ebp - 0x148]
push eax
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [esi]
call dword [sym.imp.USER32.dll_MoveWindow]
mov eax, dword [ebp - 0x17c]
add eax, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x178]
sub ecx, dword [ebp - 0x180]
push 1
mov dword [ebp - 0x17c], eax
sub eax, dword [ebp - 0x184]
push ecx
push eax
push dword [ebp - 0x180]
mov eax, dword [ebp + 0x60]
push dword [ebp - 0x184]
push dword [eax]
call dword [sym.imp.USER32.dll_MoveWindow]
test byte [ebp + 0x68], 4
je 0x42ebd9
mov eax, dword [ebp - 0x184]
mov ecx, dword [ebp + 0x34]
sub ecx, eax
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x14c], ecx
jmp 0x42ebe8
mov byte [ebp + 0x67], 0
jmp 0x42ea5a
mov eax, dword [ebp - 0x17c]
sub eax, dword [ebp + 0x2c]
mov dword [ebp - 0x14c], eax
cmp byte [ebp + 0x19], 0
jne 0x42ec2b
mov eax, dword [ebp + 0x60]
cmp byte [eax + 4], 9
jne 0x42ec1d
test byte [ebp + 0x68], 0x40
mov byte [ebp + 0x19], 1
je 0x42ec0d
mov dword [ebp - 0x138], 0x7fff
jmp 0x42ec2b
mov dword [ebp - 0x13c], 0x7fff
cmp byte [ebp + 0x19], 0
jne 0x42ec2b
mov byte [ebp + 0x19], 1
mov dword [ebp - 0x138], 0x64
lea eax, [ebp - 0x174]
push eax
push esi
mov ecx, ebx
call fcn.00431e25
push dword [ebp + 0x7c]
call fcn.0040137d
pop ecx
push eax
mov al, byte [esi + 5]
and al, 0x80
neg al
push 0
sbb eax, eax
and eax, 0xa
add eax, 0x467
push eax
jmp 0x42ecd2
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push 0x45a5d8
push str.msctls_trackbar32
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
lea eax, [ebp - 0x174]
push eax
push esi
mov ecx, ebx
call fcn.00431d00
mov eax, dword [ebp + 0x7c]
cmp byte [eax], 0
je case.0x42dcda.20
push eax
call fcn.0040137d
pop ecx
push eax
push esi
mov ecx, ebx
call fcn.0042fd71
push eax
push 1
push 0x405
push dword [esi]
jmp 0x42edeb
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push 0x45a5d8
push str.msctls_progress32
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
push dword [ebp + 0x68]
lea eax, [ebp - 0x174]
push eax
push esi
mov ecx, ebx
call fcn.00431c1a
mov eax, dword [ebp + 0x7c]
cmp byte [eax], 0
je 0x42ed4b
push 0
push eax
call fcn.0040137d
pop ecx
push eax
push 0x402
push dword [esi]
call edi
mov byte [ebp + 0x47], 0
jmp case.0x42dcda.20
push 0
push dword [0x46724c]
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [ebp + 0x68]
push 0x45a5d8
push str.SysTabControl32
push dword [ebp + 0x54]
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
mov al, byte [ebx + 0x54]
mov byte [ebx + 0x55], al
push 0x4369a9
inc al
push 0xfffffffffffffffc
mov byte [ebx + 0x56], 0
mov byte [ebx + 0x54], al
push dword [esi]
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov dword [0x46726c], eax
jmp case.0x42dcda.20
push dword [ebp + 0x4c]
push dword [ebx]
push dword [ebp + 0x7c]
push dword [ebp + 0x68]
call dword [sym.imp.COMCTL32.dll_CreateStatusWindowA]
test eax, eax
mov dword [esi], eax
je case.0x42dcda.20
cmp dword [ebp - 0x114], 0xffffffff
mov dword [ebx + 4], eax
je case.0x42dcda.20
push dword [ebp - 0x114]
push 0
push 0x2001
push eax
call edi
cmp dword [ebp + 0x5c], 0
je 0x42ee10
cmp dword [ebp + 0x28], 0
je 0x42ee05
push dword [ebp + 0x28]
push dword [ebp + 0x5c]
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp + 0x5c]
push dword [ebx]
call dword [sym.imp.USER32.dll_ReleaseDC]
cmp dword [esi], 0
jne 0x42ee2e
push 0x45a5d8
push str.Cant_create_control.__The_current_thread_will_exit.
mov ecx, 0x467ce0
call fcn.0044c37d
jmp 0x42f13b
mov ecx, dword [ebp - 0x158]
inc dword [ebx + 0xc]
test ecx, ecx
mov al, byte [ebp + 0x3f]
mov byte [ebx + 0xb8], al
je 0x42ee4b
push dword [esi]
call fcn.0040c83f
cmp byte [esi + 4], 6
jne 0x42ee73
cmp dword [ebp - 0x108], 0
je 0x42ee6d
push dword [ebp - 0x108]
mov eax, dword [ebx + 0xc]
dec eax
push eax
push esi
mov ecx, ebx
call fcn.0042f479
mov byte [ebx + 0x3c], 1
jmp 0x42ee77
mov byte [ebx + 0x3c], 0
test byte [ebp - 0x16d], 0x10
je 0x42ee84
or byte [esi + 5], 8
test byte [ebp - 0x171], 8
je 0x42ee91
or byte [esi + 5], 0x10
cmp byte [ebp + 0x47], 0
jne 0x42eebb
cmp dword [esi + 0x10], 0xff000000
je 0x42eeaf
mov al, byte [esi + 4]
cmp al, 5
je 0x42eebb
cmp al, 6
je 0x42eebb
cmp al, 3
je 0x42eebb
cmp byte [esi + 4], 3
jne 0x42eecc
test byte [esi + 5], 0x40
je 0x42eecc
mov eax, 0x45e5a4
push eax
push eax
push dword [esi]
call fcn.004394cf
add esp, 0xc
cmp byte [ebp + 0x5b], 0
jne 0x42eef6
cmp byte [ebp + 0x3e], 0
je 0x42eef6
movzx eax, byte [ebp + 0x7b]
mov ecx, dword [0x46b3f4]
push eax
mov eax, dword [ebx + 0x48]
lea eax, [eax + eax*4]
shl eax, 4
push dword [eax + ecx + 0x4c]
push 0x30
push dword [esi]
call edi
cmp dword [ebp + 0x14], 4
jne 0x42ef06
push 0
push 0
push 0xb
push dword [esi]
call edi
push 0
push dword [ebp - 0x140]
mov ecx, ebx
push dword [ebp + 0x7c]
push esi
call fcn.0042f28c
cmp byte [esi + 4], 0x13
jne 0x42efba
fld dword [ebp - 0x144]
fcomp dword [0x46008c]
fnstsw ax
test ah, 0x41
jne 0x42efba
lea eax, [ebp + 0x2c]
push eax
push dword [esi]
call dword [sym.imp.USER32.dll_GetClientRect]
test byte [ebp + 0x68], 2
je 0x42f117
test byte [ebp + 0x68], 0x80
jne 0x42f117
mov eax, dword [ebp + 0x68]
and eax, 0xfffffffd
push eax
push 0xfffffffffffffff0
push dword [esi]
mov byte [ebp + 0x7f], 1
call dword [sym.imp.USER32.dll_SetWindowLongA]
lea eax, [ebp + 0x2c]
push eax
push 1
push 0x1328
push dword [esi]
call edi
cmp byte [ebp + 0x7f], 0
je 0x42ef91
push dword [ebp + 0x68]
push 0xfffffffffffffff0
push dword [esi]
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov eax, dword [ebp + 0x38]
sub eax, dword [ebp + 0x30]
push 1
push eax
push dword [ebp - 0x14c]
mov dword [ebp - 0x148], eax
push dword [ebp - 0x150]
push dword [ebp - 0x154]
push dword [esi]
call dword [sym.imp.USER32.dll_MoveWindow]
cmp byte [ebp + 0x53], 0
je 0x42f013
lea eax, [ebp + 0x2c]
push eax
push dword [esi]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp + 0x38]
sub eax, dword [ebp + 0x30]
mov dword [ebp - 0x148], eax
mov eax, dword [ebp + 0x34]
sub eax, dword [ebp + 0x2c]
cmp byte [ebp + 0x74], 9
mov dword [ebp - 0x14c], eax
jne 0x42f019
test byte [ebp + 0x6a], 0x10
je 0x42f019
cmp dword [ebp - 0x10c], 0
jge 0x42f002
lea eax, [eax + eax*2]
mov dword [ebp - 0x10c], eax
push 0
push dword [ebp - 0x10c]
push 0x194
push dword [esi]
call edi
mov eax, dword [ebp - 0x14c]
cmp dword [ebp + 0x40], 0
mov edi, dword [sym.imp.USER32.dll_SetWindowPos]
je 0x42f07a
cmp byte [ebp + 0x3d], 0
je 0x42f05b
lea eax, [ebp + 0x2c]
push eax
push dword [esi]
call dword [sym.imp.USER32.dll_GetWindowRect]
push 2
lea eax, [ebp + 0x2c]
push eax
push dword [ebx]
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
push 0
lea eax, [ebp + 0x2c]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, dword [ebp - 0x14c]
mov ecx, dword [ebp + 0x40]
test byte [ecx + 5], 0x80
je 0x42f07a
push 0x13
xor eax, eax
push eax
push eax
push eax
push eax
push dword [esi]
mov eax, ecx
push dword [eax]
call edi
mov eax, dword [ebp - 0x14c]
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x42f094
push 0x13
xor eax, eax
push eax
push eax
push eax
push eax
push 1
push ecx
call edi
mov eax, dword [ebp - 0x14c]
cmp byte [ebp + 0x74], 0x15
je 0x42f138
mov esi, dword [ebp - 0x154]
mov ecx, dword [ebp - 0x148]
mov edi, dword [ebp - 0x150]
mov dword [ebx + 0x84], eax
mov dword [ebx + 0x88], ecx
add eax, esi
lea edx, [ebx + 0x8c]
add ecx, edi
cmp eax, dword [edx]
mov dword [ebx + 0x7c], esi
mov dword [ebx + 0x80], edi
jle 0x42f0d5
mov dword [edx], eax
lea edx, [ebx + 0x90]
cmp ecx, dword [edx]
jle 0x42f0e1
mov dword [edx], ecx
cmp byte [ebp + 0x1b], 0
jne 0x42f120
mov edx, dword [ebx + 0xc]
cmp edx, 1
je 0x42f120
cmp edx, 2
jne 0x42f0fd
mov edx, dword [ebx + 0x14]
cmp byte [edx + 4], 0x15
je 0x42f120
lea edx, [ebx + 0x9c]
cmp eax, dword [edx]
jle 0x42f109
mov dword [edx], eax
add ebx, 0xa0
cmp ecx, dword [ebx]
jle 0x42f138
mov dword [ebx], ecx
jmp 0x42f138
mov byte [ebp + 0x7f], 0
jmp 0x42ef6f
mov dword [ebx + 0x94], esi
mov dword [ebx + 0x98], edi
mov dword [ebx + 0x9c], eax
mov dword [ebx + 0xa0], ecx
xor eax, eax
inc eax
pop edi
pop esi
pop ebx
add ebp, 0x6c
leave
ret 0xc