Function at 0x494e7c
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
push eax
mov eax, 8
add esp, 0xfffff004
push eax
dec eax
jne 0x494e85
mov eax, dword [ebp - 4]
add esp, 0xfffffb18
push ebx
push esi
push edi
mov esi, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov eax, 0x5965da
call fcn.004cfcb8
xor edx, edx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x54], 0x238d
mov dword [ebp - 0x58], 1
mov word [ebp - 0x14], 8
push 0x596464
call fcn.00401b2c
pop ecx
mov ecx, dword [0x596460]
cmp ecx, 4
jbe 0x494efe
push 0x596464
call fcn.00401b40
pop ecx
mov dword [ebp - 0x54], 0x2391
mov eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x24]
mov dword fs:[0], edx
jmp 0x496c4f
inc dword [0x596460]
push 0x596464
call fcn.00401b40
test byte [ebp + 0x11], 1
pop ecx
je 0x494f18
mov dword [ebp - 0x48], edi
mov ebx, dword [ebp + 0x10]
and ebx, 0x1000
test ebx, ebx
je 0x494f28
mov dword [ebp - 0x4c], edi
test byte [ebp + 0x11], 2
je 0x494f36
call sub.USER32.dll_CreatePopupMenu
mov dword [ebp - 0x48], eax
xor eax, eax
mov dword [ebp - 0x50], eax
test byte [ebp + 0x12], 0x10
je 0x494f48
mov dword [ebp - 0x50], 3
test ebx, ebx
je 0x494f62
push 0
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_GetDlgItem
push eax
call fcn.00494e24
add esp, 8
mov ecx, dword [0x516058]
test ecx, ecx
je 0x494f94
mov eax, dword [0x5168dc]
test eax, eax
jne 0x494f94
call fcn.004a9d84
cmp al, 1
je 0x494f94
mov byte [ebp - 0x43], 0
mov dword [ebp - 0x54], 0x2393
mov word [ebp - 0x14], 0
jmp 0x496b73
call fcn.00479234
mov edi, eax
xor eax, eax
push esi
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea esi, [ebp - 0x4ec]
xchg edi, esi
mov edx, ecx
mov eax, edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
call fcn.00479244
mov edi, eax
xor eax, eax
push esi
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea esi, [ebp - 0x4ce]
xchg edi, esi
mov edx, ecx
mov eax, edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
test esi, esi
je 0x495019
xor eax, eax
push esi
mov edi, esi
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea esi, [ebp - 0x44c]
xchg edi, esi
mov edx, ecx
mov eax, edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
jmp 0x495041
xor eax, eax
or ecx, 0xffffffff
mov edi, 0x5fd736
lea esi, [ebp - 0x44c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
xchg edi, esi
shr ecx, 2
mov eax, edi
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [0x5168dc]
test eax, eax
je 0x49507c
mov dl, byte [0x5f7802]
test dl, dl
je 0x49507c
xor eax, eax
or ecx, 0xffffffff
mov edi, 0x5f7802
lea esi, [ebp - 0x44c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
xchg edi, esi
shr ecx, 2
mov eax, edi
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [0x5186a4]
test eax, eax
je 0x49508b
mov byte [ebp - 0x64], 0x31
jmp 0x49508f
mov byte [ebp - 0x64], 0x30
mov byte [ebp - 0x63], 0x31
test byte [ebp + 0x11], 1
je 0x4950b3
push 0x5db2c8
push 0x3fff
push 2
push 0x3fff
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_ModifyMenuA
test byte [ebp + 0x12], 0x10
je 0x4950df
push 0x1e
push 0x48d
lea ecx, [ebp - 0x4ec]
push ecx
push 0
push 1
call fcn.00478a18
pop ecx
push eax
call fcn.0047f510
add esp, 0x14
mov dword [ebp - 0x30], eax
jmp 0x495104
push 0x1e
push 0x48d
lea eax, [ebp - 0x4ec]
push eax
call fcn.0047922c
push eax
call fcn.0047894c
push eax
call fcn.0047f510
add esp, 0x14
mov dword [ebp - 0x30], eax
mov edx, dword [ebp - 0x30]
test edx, edx
jne 0x49526a
test byte [ebp + 0x12], 0x10
jne 0x49511a
call fcn.00478a58
test byte [ebp + 0x11], 0x10
je 0x495220
mov byte [ebp - 0x43], 1
test byte [ebp + 0x12], 1
jne 0x49513c
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call fcn.00417a64
add esp, 8
push 1
mov eax, dword [ebp - 0x4c]
push eax
call fcn.00494a50
add esp, 8
test eax, eax
je 0x495152
mov byte [ebp - 0x43], 1
test byte [ebp + 0x12], 2
je 0x495220
push 0x5db2d4
lea edx, [ebp - 0x24ec]
push edx
call fcn.004d1ac0
add esp, 8
movsx ecx, byte [0x62664a]
cmp ecx, 0x34
jne 0x4951cf
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x43
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x495220
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x2e
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
test byte [ebp + 0x11], 1
je 0x495258
test byte [ebp + 0x12], 2
je 0x495248
push 0x5db2ee
push 0x3fff
push 2
push 0x3fff
mov eax, dword [ebp - 0x48]
push eax
call sub.USER32.dll_ModifyMenuA
jmp 0x495258
push 0
push 0x3fff
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_DeleteMenu
mov dword [ebp - 0x54], 0x2395
mov word [ebp - 0x14], 0
jmp 0x496b73
test byte [ebp + 0x12], 0x10
jne 0x495275
call fcn.00478a48
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx + 0xae]
test eax, eax
jne 0x4953e0
mov edx, dword [ebp - 0x30]
push edx
call fcn.0047b99c
test byte [ebp + 0x11], 0x10
pop ecx
je 0x495396
mov byte [ebp - 0x43], 1
test byte [ebp + 0x12], 1
jne 0x4952b2
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call fcn.00417a64
add esp, 8
push 1
mov eax, dword [ebp - 0x4c]
push eax
call fcn.00494a50
add esp, 8
test eax, eax
je 0x4952c8
mov byte [ebp - 0x43], 1
test byte [ebp + 0x12], 2
je 0x495396
push 0x5db307
lea edx, [ebp - 0x24ec]
push edx
call fcn.004d1ac0
add esp, 8
movsx ecx, byte [0x62664a]
cmp ecx, 0x34
jne 0x495345
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x43
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x495396
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x2e
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
test byte [ebp + 0x11], 1
je 0x4953ce
test byte [ebp + 0x12], 2
je 0x4953be
push 0x5db321
push 0x3fff
push 2
push 0x3fff
mov eax, dword [ebp - 0x48]
push eax
call sub.USER32.dll_ModifyMenuA
jmp 0x4953ce
push 0
push 0x3fff
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_DeleteMenu
mov dword [ebp - 0x54], 0x2397
mov word [ebp - 0x14], 0
jmp 0x496b73
mov byte [ebp - 0x42], 0
test byte [ebp + 0x11], 0x10
je 0x495402
mov byte [ebp - 0x43], 1
test byte [ebp + 0x12], 1
jne 0x495402
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call fcn.00417a64
add esp, 8
mov eax, dword [ebp - 0x30]
add eax, 0xb6
mov dword [ebp - 0x34], eax
mov ebx, eax
xor esi, esi
mov al, byte [ebx]
test al, al
jne 0x49541d
mov byte [ebp - 0x41], 1
jmp 0x495421
mov byte [ebp - 0x41], 0
mov dl, byte [ebp - 0x41]
test dl, dl
je 0x49544b
inc ebx
lea ecx, [ebp - 0x64ec]
push ecx
push ebx
call fcn.00494850
add esp, 8
mov ebx, eax
lea eax, [ebp - 0x64ec]
push eax
call fcn.004d5554
pop ecx
mov dword [ebp - 0x2c], eax
mov edx, esi
shl edx, 5
add edx, esi
lea edx, [esi + edx*4]
mov ecx, dword [ebp - 0x34]
lea eax, [ecx + edx]
mov dword [ebp - 0x5c], eax
movsx edx, byte [ebp - 0x41]
dec edx
jne 0x4954ee
xor edi, edi
test ebx, ebx
je 0x49697f
lea eax, [ebp - 0x84ec]
push eax
push ebx
call fcn.00494850
add esp, 8
mov ebx, eax
test ebx, ebx
je 0x49697f
inc edi
lea edx, [ebp - 0x44ec]
push edx
push ebx
call fcn.00494850
add esp, 8
mov ebx, eax
inc edi
lea ecx, [ebp - 0x64ec]
push ecx
push ebx
call fcn.00494850
add esp, 8
mov ebx, eax
inc edi
lea eax, [ebp - 0x40]
push eax
push ebx
call fcn.00494850
add esp, 8
mov ebx, eax
inc edi
mov edx, dword [ebp - 0x2c]
cmp edi, edx
je 0x495576
lea ecx, [ebp - 0x24ec]
push ecx
push ebx
call fcn.00494850
add esp, 8
mov ebx, eax
inc edi
mov eax, dword [ebp - 0x2c]
cmp edi, eax
jne 0x4954cf
jmp 0x495576
mov edx, dword [ebp - 0x5c]
movsx ecx, byte [edx]
dec ecx
jne 0x49697f
mov edi, esi
push 0x300
shl edi, 5
lea eax, [ebp - 0x84ec]
add edi, esi
push 0x1e
push eax
mov eax, dword [ebp - 0x34]
lea edi, [esi + edi*4]
add edi, eax
mov edx, edi
inc edx
push edx
call fcn.0044f360
add esp, 0x10
lea ecx, [ebp - 0x64ec]
mov eax, edi
add eax, 0x5b
push 0x300
push 0x28
push ecx
push eax
call fcn.0044f360
add esp, 0x10
lea edx, [ebp - 0x44ec]
mov ecx, edi
add ecx, 0x1f
push 0x300
push 0x3c
push edx
push ecx
call fcn.0044f360
add esp, 0x10
lea eax, [ebp - 0x40]
add edi, 0x83
push 0x300
push 2
push eax
push edi
call fcn.0044f360
add esp, 0x10
lea edx, [ebp - 0x84ec]
lea ecx, [ebp - 0x64ec]
push edx
push ecx
lea eax, [ebp - 0x44ec]
lea edx, [ebp - 0x24ec]
push eax
push 0x5db33b
push edx
call fcn.004d1ac0
add esp, 0x14
test byte [ebp + 0x12], 0x10
je 0x4955b9
push 0x5db348
lea ecx, [ebp - 0x24ec]
push ecx
call fcn.004cd308
add esp, 8
test byte [ebp + 0x11], 0x10
je 0x496336
movsx eax, byte [ebp - 0x40]
add eax, 0xffffffcf
cmp eax, 0x17
ja case.0x4955cf.58
jmp dword [eax*4 + 0x4955d6]
movsx edx, byte [0x62664a]
cmp edx, 0x34
jne 0x495699
mov cx, word [ebp - 0x50]
and cx, 0xffff
movzx eax, cx
shl eax, 0x10
or eax, 0x33
push eax
lea edx, [ebp - 0x24ec]
push edx
push 0
push 0x180
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov cx, word [ebp - 0x50]
and cx, 0xffff
movzx eax, cx
shl eax, 0x10
or eax, 5
push eax
lea edx, [ebp - 0x24ec]
push edx
push 0
push 0x180
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx ecx, byte [0x62664a]
cmp ecx, 0x34
jne 0x495752
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x33
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 5
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx eax, byte [0x62664a]
cmp eax, 0x34
jne 0x49580b
mov dx, word [ebp - 0x50]
and dx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or ecx, 0x32
push ecx
lea eax, [ebp - 0x24ec]
push eax
push 0
push 0x180
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov dx, word [ebp - 0x50]
and dx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or ecx, 4
push ecx
lea eax, [ebp - 0x24ec]
push eax
push 0
push 0x180
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx edx, byte [0x62664a]
cmp edx, 0x34
jne 0x4958c5
mov cx, word [ebp - 0x50]
and cx, 0xffff
movzx eax, cx
shl eax, 0x10
or eax, 0x34
push eax
lea edx, [ebp - 0x24ec]
push edx
push 0
push 0x180
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov cx, word [ebp - 0x50]
and cx, 0xffff
movzx eax, cx
shl eax, 0x10
or eax, 6
push eax
lea edx, [ebp - 0x24ec]
push edx
push 0
push 0x180
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx ecx, byte [0x62664a]
cmp ecx, 0x34
jne 0x49597e
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x35
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x20
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx eax, byte [0x62664a]
cmp eax, 0x34
jne 0x495a37
mov dx, word [ebp - 0x50]
and dx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or ecx, 0x36
push ecx
lea eax, [ebp - 0x24ec]
push eax
push 0
push 0x180
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov dx, word [ebp - 0x50]
and dx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or ecx, 0x21
push ecx
lea eax, [ebp - 0x24ec]
push eax
push 0
push 0x180
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx edx, byte [0x62664a]
cmp edx, 0x34
jne 0x495af1
mov cx, word [ebp - 0x50]
and cx, 0xffff
movzx eax, cx
shl eax, 0x10
or eax, 0x37
push eax
lea edx, [ebp - 0x24ec]
push edx
push 0
push 0x180
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov cx, word [ebp - 0x50]
and cx, 0xffff
movzx eax, cx
shl eax, 0x10
or eax, 0x22
push eax
lea edx, [ebp - 0x24ec]
push edx
push 0
push 0x180
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx ecx, byte [0x62664a]
cmp ecx, 0x34
jne 0x495baa
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x38
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x23
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx eax, byte [0x62664a]
cmp eax, 0x34
jne 0x495c63
mov dx, word [ebp - 0x50]
and dx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or ecx, 0x39
push ecx
lea eax, [ebp - 0x24ec]
push eax
push 0
push 0x180
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov dx, word [ebp - 0x50]
and dx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or ecx, 0x24
push ecx
lea eax, [ebp - 0x24ec]
push eax
push 0
push 0x180
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx edx, byte [0x62664a]
cmp edx, 0x34
jne 0x495d1d
mov cx, word [ebp - 0x50]
and cx, 0xffff
movzx eax, cx
shl eax, 0x10
or eax, 0x3a
push eax
lea edx, [ebp - 0x24ec]
push edx
push 0
push 0x180
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov cx, word [ebp - 0x50]
and cx, 0xffff
movzx eax, cx
shl eax, 0x10
or eax, 0x25
push eax
lea edx, [ebp - 0x24ec]
push edx
push 0
push 0x180
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx ecx, byte [0x62664a]
cmp ecx, 0x34
jne 0x495dd6
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x3b
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x26
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx eax, byte [0x62664a]
cmp eax, 0x34
jne 0x495e8f
mov dx, word [ebp - 0x50]
and dx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or ecx, 0x3c
push ecx
lea eax, [ebp - 0x24ec]
push eax
push 0
push 0x180
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov dx, word [ebp - 0x50]
and dx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or ecx, 0x27
push ecx
lea eax, [ebp - 0x24ec]
push eax
push 0
push 0x180
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx edx, byte [0x62664a]
cmp edx, 0x34
jne 0x495f49
mov cx, word [ebp - 0x50]
and cx, 0xffff
movzx eax, cx
shl eax, 0x10
or eax, 0x3d
push eax
lea edx, [ebp - 0x24ec]
push edx
push 0
push 0x180
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov cx, word [ebp - 0x50]
and cx, 0xffff
movzx eax, cx
shl eax, 0x10
or eax, 0x28
push eax
lea edx, [ebp - 0x24ec]
push edx
push 0
push 0x180
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx ecx, byte [0x62664a]
cmp ecx, 0x34
jne 0x496002
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x3e
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x29
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx eax, byte [0x62664a]
cmp eax, 0x34
jne 0x4960bb
mov dx, word [ebp - 0x50]
and dx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or ecx, 0x40
push ecx
lea eax, [ebp - 0x24ec]
push eax
push 0
push 0x180
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov dx, word [ebp - 0x50]
and dx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or ecx, 0x2a
push ecx
lea eax, [ebp - 0x24ec]
push eax
push 0
push 0x180
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx edx, byte [0x62664a]
cmp edx, 0x34
jne 0x496175
mov cx, word [ebp - 0x50]
and cx, 0xffff
movzx eax, cx
shl eax, 0x10
or eax, 0x3f
push eax
lea edx, [ebp - 0x24ec]
push edx
push 0
push 0x180
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov cx, word [ebp - 0x50]
and cx, 0xffff
movzx eax, cx
shl eax, 0x10
or eax, 0x2b
push eax
lea edx, [ebp - 0x24ec]
push edx
push 0
push 0x180
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx ecx, byte [0x62664a]
cmp ecx, 0x34
jne 0x49622e
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x41
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov ax, word [ebp - 0x50]
and ax, 0xffff
movzx edx, ax
shl edx, 0x10
or edx, 0x2c
push edx
lea ecx, [ebp - 0x24ec]
push ecx
push 0
push 0x180
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
movsx eax, byte [0x62664a]
cmp eax, 0x34
jne 0x4962e4
mov dx, word [ebp - 0x50]
and dx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or ecx, 0x42
push ecx
lea eax, [ebp - 0x24ec]
push eax
push 0
push 0x180
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496336
mov dx, word [ebp - 0x50]
and dx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or ecx, 0x2d
push ecx
lea eax, [ebp - 0x24ec]
push eax
push 0
push 0x180
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
test byte [ebp + 0x11], 1
je 0x496972
movsx edx, byte [ebp - 0x40]
add edx, 0xffffffcf
cmp edx, 0x17
ja case.0x49634c.49
jmp dword [edx*4 + 0x496353]
lea ecx, [ebp - 0x84ec]
push ecx
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x4963d4
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 5
call fcn.00454c6c
pop ecx
push eax
push 5
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x49642b
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 4
call fcn.00454c6c
pop ecx
push eax
push 4
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x496482
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 6
call fcn.00454c6c
pop ecx
push eax
push 6
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x4964d9
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 0x20
call fcn.00454c6c
pop ecx
push eax
push 0x20
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x496530
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 0x21
call fcn.00454c6c
pop ecx
push eax
push 0x21
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x496587
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 0x22
call fcn.00454c6c
pop ecx
push eax
push 0x22
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x4965de
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 0x23
call fcn.00454c6c
pop ecx
push eax
push 0x23
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x496635
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 0x24
call fcn.00454c6c
pop ecx
push eax
push 0x24
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x49668c
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 0x25
call fcn.00454c6c
pop ecx
push eax
push 0x25
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x4966e3
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 0x26
call fcn.00454c6c
pop ecx
push eax
push 0x26
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x49673a
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 0x27
call fcn.00454c6c
pop ecx
push eax
push 0x27
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x496791
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 0x28
call fcn.00454c6c
pop ecx
push eax
push 0x28
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x4967e8
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 0x29
call fcn.00454c6c
pop ecx
push eax
push 0x29
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x49683f
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 0x2a
call fcn.00454c6c
pop ecx
push eax
push 0x2a
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x496896
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 0x2b
call fcn.00454c6c
pop ecx
push eax
push 0x2b
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x4968ed
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 0x2c
call fcn.00454c6c
pop ecx
push eax
push 0x2c
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x496972
lea eax, [ebp - 0x84ec]
push eax
call fcn.004d5554
pop ecx
mov edi, eax
or edi, 0x80000
test byte [ebp + 0x12], 0x10
je 0x496941
or edi, 0x10000
lea eax, [ebp - 0x44ec]
push eax
push edi
push 0
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_AppendMenuA
push 0x2d
call fcn.00454c6c
pop ecx
push eax
push 0x2d
call fcn.00454c6c
pop ecx
push eax
push 0
push edi
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_SetMenuItemBitmaps
inc esi
add dword [ebp - 0x5c], 0x85
jmp 0x49545e
test esi, esi
jne 0x496af9
test byte [ebp + 0x11], 1
je 0x4969fe
lea eax, [ebp - 0x44c]
lea edx, [ebp - 0x24ec]
push eax
push 0x5db34b
push edx
call fcn.004d1ac0
add esp, 0xc
test byte [ebp + 0x12], 2
je 0x4969ee
lea ecx, [ebp - 0x24ec]
push ecx
push 0x3fff
push 2
push 0x3fff
mov eax, dword [ebp - 0x48]
push eax
call sub.USER32.dll_ModifyMenuA
push 0x19
call fcn.00454c6c
pop ecx
push eax
push 0x19
call fcn.00454c6c
pop ecx
push eax
push 0
push 0x3fff
mov edx, dword [ebp - 0x48]
push edx
call sub.USER32.dll_SetMenuItemBitmaps
jmp 0x4969fe
push 0
push 0x3fff
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_DeleteMenu
test byte [ebp + 0x11], 0x10
je 0x496b2e
push esi
mov eax, dword [ebp - 0x4c]
push eax
call fcn.00494a50
add esp, 8
test eax, eax
je 0x496a1d
mov byte [ebp - 0x43], 1
lea edx, [ebp - 0x44c]
lea ecx, [ebp - 0x24ec]
push edx
push 0x5db353
push ecx
call fcn.004d1ac0
add esp, 0xc
test byte [ebp + 0x12], 2
je 0x496b2e
movsx eax, byte [0x62664a]
cmp eax, 0x34
jne 0x496aa5
mov dx, word [ebp - 0x50]
and dx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or ecx, 0x44
push ecx
lea eax, [ebp - 0x24ec]
push eax
push 0
push 0x180
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496b2e
mov dx, word [ebp - 0x50]
and dx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or ecx, 0x2f
push ecx
lea eax, [ebp - 0x24ec]
push eax
push 0
push 0x180
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push eax
push 0x19a
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
push 1
push 0
push 0x64
mov eax, dword [ebp - 0x4c]
push eax
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_InvalidateRect
jmp 0x496b2e
test byte [ebp + 0x11], 0x10
je 0x496b18
push esi
mov edx, dword [ebp - 0x4c]
push edx
call fcn.00494a50
add esp, 8
test eax, eax
je 0x496b18
mov byte [ebp - 0x42], 1
mov byte [ebp - 0x43], 1
test byte [ebp + 0x11], 1
je 0x496b2e
push 0
push 0x3fff
mov ecx, dword [ebp - 0x48]
push ecx
call sub.USER32.dll_DeleteMenu
mov al, byte [ebp - 0x42]
cmp al, 1
je 0x4953e0
mov edx, dword [ebp - 0x30]
push edx
call fcn.0047b99c
pop ecx
xor ecx, ecx
mov dword [ebp - 0x54], ecx
mov word [ebp - 0x14], 0
jmp 0x496b73
mov word [ebp - 0x14], 0x14
test byte [ebp + 0x11], 0x10
je 0x496bc6
mov ecx, dword [ebp - 0x28]
inc ecx
je 0x496b97
mov eax, dword [ebp - 0x28]
push eax
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call fcn.00417bcc
add esp, 0xc
push 1
push 0x64
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call fcn.00494e24
add esp, 8
mov al, byte [ebp - 0x43]
cmp al, 1
jne 0x496bc6
push 0x64
mov edx, dword [ebp - 0x4c]
push edx
call sub.USER32.dll_GetDlgItem
push eax
call fcn.00494e5c
pop ecx
test byte [0x514ff0], 0x40
je 0x496be6
push 0x5db373
push 0x5db366
push 0x514ff4
call fcn.00451068
add esp, 0xc
mov word [ebp - 0x14], 0
jmp 0x496c11
push 0x596464
call fcn.00401b2c
pop ecx
dec dword [0x596460]
push 0x596464
call fcn.00401b40
test byte [ebp + 0x11], 2
pop ecx
je 0x496c42
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x24]
mov dword fs:[0], edx
jmp 0x496c4f
mov eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x24]
mov dword fs:[0], edx
mov esp, ebp
mov edi, dword [ebp - 0x84f8]
mov esi, dword [ebp - 0x84f4]
mov ebx, dword [ebp - 0x84f0]
pop ebp
ret