Function at 0x44e618
Capabilities:
Encrypt data using speck
Open clipboard
Read clipboard data

Disassembly:
push ebp
mov ebp, esp
push eax
mov eax, 2
add esp, 0xfffff004
push eax
dec eax
jne 0x44e621
mov eax, dword [ebp - 4]
add esp, 0xfffffd24
push ebx
push esi
push edi
push 0
mov eax, dword [ebp + 8]
push eax
call sub.USER32.DLL_GetWindowLongA
mov ebx, eax
mov eax, dword [ebp + 0xc]
cmp eax, 0x468
jg 0x44e6ec
je case.0x44e6fa.1130
cmp eax, 0x104
jg 0x44e6a7
je case.0x44e6fa.1146
cmp eax, 0x47
jg 0x44e68e
je 0x44e7ef
sub eax, 2
je 0x44e749
sub eax, 0xd
je 0x45311d
dec eax
je 0x44e7ac
jmp case.0x44e6fa.1136
sub eax, 0x100
je case.0x44e6fa.1145
sub eax, 2
je 0x44ef75
jmp case.0x44e6fa.1136
cmp eax, 0x206
jg 0x44e6d5
je 0x44e7c9
add eax, 0xfffffeed
sub eax, 3
jb 0x44e7c9
add eax, 0xffffff16
sub eax, 5
jb 0x44e7c9
jmp case.0x44e6fa.1136
sub eax, 0x465
je 0x44fd87
dec eax
je 0x44e7c9
jmp case.0x44e6fa.1136
add eax, 0xfffffb97
cmp eax, 0x11
ja case.0x44e6fa.1136
jmp dword [eax*4 + 0x44e701]
test ebx, ebx
je case.0x44e6fa.1136
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
mov eax, dword [ebp + 0xc]
push eax
mov edx, dword [ebp + 8]
push edx
push ebx
call sym.ollydbg.exe__Tablefunction
add esp, 0x14
cmp dword [ebx + 0x3a1], 0
je 0x44e77f
mov ecx, dword [ebx + 0x3a1]
push ecx
call sub.KERNEL32.DLL_GlobalFree
cmp dword [ebx + 0x3a5], 0
je 0x44e794
mov eax, dword [ebx + 0x3a5]
push eax
call sub.KERNEL32.DLL_GlobalFree
push ebx
call sub.KERNEL32.DLL_GlobalFree
push 0
push 0
mov edx, dword [ebp + 8]
push edx
call sub.USER32.DLL_SetWindowLongA
jmp case.0x44e6fa.1136
cmp dword [ebx + 0x3a1], 0
je case.0x44e6fa.1136
push 0
push ebx
call fcn.0044d614
add esp, 8
jmp case.0x44e6fa.1136
test ebx, ebx
je case.0x44e6fa.1136
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
mov edx, dword [ebp + 0xc]
push edx
mov ecx, dword [ebp + 8]
push ecx
push ebx
call sym.ollydbg.exe__Tablefunction
add esp, 0x14
jmp case.0x44e6fa.1136
test ebx, ebx
je case.0x44e6fa.1136
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
mov ecx, dword [ebp + 0xc]
push ecx
mov eax, dword [ebp + 8]
push eax
push ebx
call sym.ollydbg.exe__Tablefunction
add esp, 0x14
jmp 0x453148
test ebx, ebx
je case.0x44e6fa.1136
cmp dword [ebp + 0x10], 8
jne 0x44e91a
cmp dword [ebx + 0x3a5], 0
je case.0x44e6fa.1136
cmp dword [ebx + 0x379], 0
jbe case.0x44e6fa.1136
mov edx, dword [ebx + 0x385]
cmp edx, dword [ebx + 0x389]
jae case.0x44e6fa.1136
mov ecx, dword [ebx + 0x385]
cmp ecx, dword [ebx + 0x375]
jb case.0x44e6fa.1136
mov eax, dword [ebx + 0x375]
add eax, dword [ebx + 0x379]
cmp eax, dword [ebx + 0x389]
jb case.0x44e6fa.1136
cmp dword [ebx + 0x3a1], 0
je 0x44e8c3
mov edx, dword [ebx + 0x389]
sub edx, dword [ebx + 0x385]
push edx
mov ecx, dword [ebx + 0x3a5]
add ecx, dword [ebx + 0x385]
sub ecx, dword [ebx + 0x375]
push ecx
mov eax, dword [ebx + 0x3a1]
add eax, dword [ebx + 0x385]
sub eax, dword [ebx + 0x375]
push eax
call fcn.004a3530
add esp, 0xc
jmp 0x44e904
push 5
mov edx, dword [ebx + 0x389]
sub edx, dword [ebx + 0x385]
push edx
mov ecx, dword [ebx + 0x385]
push ecx
mov eax, dword [ebx + 0x3a5]
add eax, dword [ebx + 0x385]
sub eax, dword [ebx + 0x375]
push eax
call sym.ollydbg.exe__Writememory
add esp, 0x10
test byte [ebx + 0x25d], 0x10
je 0x44e904
push ebx
call fcn.0044e54c
pop ecx
push 0
push 0
push 0x474
call sym.ollydbg.exe__Broadcast
add esp, 0xc
jmp case.0x44e6fa.1136
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
mov eax, dword [ebp + 0xc]
push eax
mov edx, dword [ebp + 8]
push edx
push ebx
call sym.ollydbg.exe__Tablefunction
add esp, 0x14
test eax, eax
jne case.0x44e6fa.1136
cmp dword [ebx + 0x251], 0
jne case.0x44e6fa.1136
lea ecx, [ebp - 0x28]
lea eax, [ebp - 0x2c]
push ecx
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.004582f0
add esp, 0x10
push ebx
mov eax, dword [ebp + 0x10]
push eax
mov edx, dword [ebp - 0x2c]
push edx
push 1
mov ecx, dword [ebp - 0x28]
push ecx
push 0xa
call fcn.00496e98
add esp, 0x18
jmp 0x453148
lea eax, [ebp - 0x28]
lea edx, [ebp - 0x2c]
push eax
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0xc]
push eax
call fcn.004582f0
add esp, 0x10
test ebx, ebx
jne 0x44e9a1
xor eax, eax
jmp 0x453148
cmp dword [ebp + 0x10], 0x11
je 0x44e9bd
cmp dword [ebp + 0x10], 0x10
je 0x44e9bd
test byte [ebx + 0x25d], 0x10
je 0x44e9bd
push ebx
call fcn.0044e54c
pop ecx
lea edx, [ebp - 0x10]
lea ecx, [ebp - 0xc]
push edx
push ecx
mov edx, dword [ebx + 0x255]
mov eax, 3
and edx, 0xf000
cmp edx, 0x9000
je 0x44e9df
dec eax
push eax
push ebx
call fcn.00447598
add esp, 0x10
cmp dword [ebp + 0x10], 0x1b
jne 0x44ea12
cmp dword [ebp - 0x28], 0
jne 0x44ea12
test byte [ebx + 0x257], 2
je 0x44ea12
push 0
push 0
push 0x10
mov ecx, dword [ebp + 8]
push ecx
call fcn.0044e618
jmp 0x44ef6b
cmp dword [ebp + 0x10], 0x42
jne 0x44ea39
cmp dword [ebp - 0x28], 0
je 0x44ea39
cmp dword [ebx + 0x379], 0
je 0x44ea39
push 0
push 1
push ebx
call fcn.0044d9e0
add esp, 0xc
jmp 0x44ef6b
cmp dword [ebp + 0x10], 0x43
je 0x44ea45
cmp dword [ebp + 0x10], 0x2d
jne 0x44ea6b
cmp dword [ebp - 0x28], 0
je 0x44ea6b
mov eax, dword [ebx + 0x389]
push eax
mov edx, dword [ebx + 0x385]
push edx
push ebx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0044ae5c
add esp, 0x10
jmp 0x44ef6b
cmp dword [ebp + 0x10], 0x45
jne 0x44eaab
cmp dword [ebp - 0x28], 0
je 0x44eaab
cmp dword [ebx + 0x379], 0
je 0x44eaab
mov eax, dword [ebx + 0x389]
cmp eax, dword [ebx + 0x385]
jbe 0x44eaab
push 0
push ebx
call fcn.0044e35c
add esp, 8
push 0
push 0
mov edx, dword [ebp + 8]
push edx
call sub.USER32.DLL_InvalidateRect
jmp 0x44ef6b
cmp dword [ebp + 0x10], 0x47
jne 0x44ed8e
cmp dword [ebp - 0x28], 0
je 0x44ed8e
cmp dword [ebx + 0x251], 0
jne 0x44ead5
cmp dword [ebx + 0x379], 0
jbe 0x44ed8e
test byte [ebx + 0x25d], 0x20
jne 0x44ed8e
cmp dword [ebx + 0x3a1], 0
jne 0x44eb39
cmp dword [ebx + 0x251], 0
je 0x44eb39
mov byte [ebp - 0x10c8], 0
mov ecx, dword [ebp - 0x10]
push ecx
mov eax, dword [ebp - 0xc]
push eax
lea eax, [ebp - 0x10c8]
mov edx, dword [ebx + 0x239]
push edx
mov ecx, dword [ebx + 0x251]
push ecx
push 0x4c
push 0
push eax
push str.Enter_expression_to_follow_in_Dump
call fcn.004436e8
add esp, 0x20
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jne 0x44eb9a
xor eax, eax
jmp 0x453148
cmp dword [ebx + 0x3a1], 0
jne 0x44eb4a
mov edx, dword [0x4dced8]
jmp 0x44eb4c
xor edx, edx
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0xc]
push ecx
mov eax, 2
cmp dword [ebx + 0x3a1], 0
je 0x44eb68
add eax, 0xfffffffe
push eax
push 0
push 4
lea edx, [ebp - 0x44]
push edx
cmp dword [ebx + 0x3a1], 0
jne 0x44eb81
mov ecx, str.Enter_address_to_follow
jmp 0x44eb86
mov ecx, str.Enter_offset_to_follow
push ecx
call sym.ollydbg.exe__Getlongxy
add esp, 0x1c
test eax, eax
je 0x44eb9a
xor eax, eax
jmp 0x453148
cmp dword [ebx + 0x3a1], 0
jne 0x44ed35
mov edx, dword [ebp - 0x44]
push edx
call sym.ollydbg.exe__Findmemory
pop ecx
mov esi, eax
test esi, esi
jne 0x44ebd2
mov eax, dword [ebp - 0x44]
push eax
push str.There_is_no_allocated_memory_on_the_specified_address___08lX_.
call sym.ollydbg.exe__Error
add esp, 8
mov eax, 1
jmp 0x453148
mov edx, dword [ebp - 0x44]
mov dword [0x4dced8], edx
cmp dword [ebx + 0x251], 0
je 0x44ec10
test byte [ebx + 0x25d], 0x10
je 0x44ebf4
push ebx
call fcn.0044e54c
pop ecx
push 0x30
push 0
mov ecx, dword [0x4dced8]
push ecx
push 0
push 0
call sym.ollydbg.exe__Setcpu
add esp, 0x14
jmp 0x44ed7c
mov eax, dword [esi]
cmp eax, dword [ebx + 0x375]
jne 0x44ec47
mov edx, dword [esi + 4]
cmp edx, dword [ebx + 0x379]
jne 0x44ec47
mov ecx, dword [0x4dced8]
mov dword [ebx + 0x37d], ecx
mov eax, dword [0x4dced8]
mov dword [ebx + 0x389], eax
mov dword [ebx + 0x385], eax
jmp 0x44ed7c
push 7
push ebx
call sym.ollydbg.exe__Dumpbackup
add esp, 8
push 0x4baa38
lea edx, [ebp - 0x10c8]
push edx
call fcn.004a6c2c
add esp, 8
mov dword [ebp - 8], eax
mov ecx, dword [esi]
push ecx
call sym.ollydbg.exe__Findmodule
pop ecx
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0
je 0x44ecdb
mov eax, dword [ebp - 0x70]
cmp byte [eax + 0x48], 0
je 0x44ecdb
mov edx, dword [ebp - 0x70]
add edx, 0x48
push edx
push 8
push 0x4baa40
lea ecx, [ebp - 0x10c8]
add ecx, dword [ebp - 8]
push ecx
call fcn.004a6c2c
add esp, 0x10
add dword [ebp - 8], eax
cmp byte [esi + 0x1c], 0
je 0x44eccd
lea eax, [esi + 0x1c]
push eax
push 8
push str.:_.s
lea edx, [ebp - 0x10c8]
add edx, dword [ebp - 8]
push edx
call fcn.004a6c2c
add esp, 0x10
add dword [ebp - 8], eax
mov ecx, dword [ebp - 8]
mov byte [ebp + ecx - 0x10c8], 0x20
inc dword [ebp - 8]
lea eax, [ebp - 0x10c8]
add eax, dword [ebp - 8]
push eax
mov edx, dword [esi + 4]
push edx
mov ecx, dword [esi]
push ecx
call sym.ollydbg.exe__Decoderange
add esp, 0xc
lea eax, [ebp - 0x10c8]
push eax
mov edx, dword [ebp + 8]
push edx
call sub.USER32.DLL_SetWindowTextA
mov ecx, dword [esi]
mov dword [ebx + 0x375], ecx
mov eax, dword [esi + 4]
mov dword [ebx + 0x379], eax
mov edx, dword [0x4dced8]
mov dword [ebx + 0x37d], edx
mov ecx, dword [0x4dced8]
mov dword [ebx + 0x389], ecx
mov dword [ebx + 0x385], ecx
jmp 0x44ed7c
mov eax, dword [ebx + 0x375]
cmp eax, dword [ebp - 0x44]
ja 0x44ed51
mov edx, dword [ebx + 0x375]
add edx, dword [ebx + 0x379]
cmp edx, dword [ebp - 0x44]
ja 0x44ed64
mov eax, dword [ebp - 0x44]
push eax
push str.Specified_offset___08lX__is_outside_the_file.
call sym.ollydbg.exe__Error
add esp, 8
jmp 0x44ed7c
mov edx, dword [ebp - 0x44]
mov dword [ebx + 0x37d], edx
mov ecx, dword [ebp - 0x44]
mov dword [ebx + 0x389], ecx
mov dword [ebx + 0x385], ecx
push 0
push 0
mov eax, dword [ebp + 8]
push eax
call sub.USER32.DLL_InvalidateRect
jmp 0x44ef6b
cmp dword [ebp + 0x10], 0x4c
jne 0x44edb5
cmp dword [ebp - 0x28], 0
je 0x44edb5
cmp dword [ebx + 0x379], 0
je 0x44edb5
push 0
push 0
push ebx
call fcn.0044d9e0
add esp, 0xc
jmp 0x44ef6b
cmp dword [ebp + 0x10], 0x4e
jne 0x44edfc
cmp dword [ebp - 0x28], 0
je 0x44edfc
cmp dword [ebx + 0x3a1], 0
jne 0x44edfc
cmp dword [ebx + 0x251], 0
je 0x44edfc
mov edx, dword [ebx + 0x375]
push edx
call sym.ollydbg.exe__Findmodule
pop ecx
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0
je 0x44ef6b
mov eax, dword [ebp - 0x70]
push eax
call fcn.00466efc
pop ecx
jmp 0x44ef6b
cmp dword [ebp + 0x10], 0x52
jne 0x44ef04
cmp dword [ebp - 0x28], 0
je 0x44ef04
cmp dword [ebx + 0x3a1], 0
jne 0x44ef04
cmp dword [ebx + 0x379], 0
je 0x44ef04
mov edx, dword [ebx + 0x385]
cmp edx, dword [ebx + 0x389]
jae 0x44ef04
mov ecx, dword [ebx + 0x385]
push ecx
call sym.ollydbg.exe__Findmodule
pop ecx
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0
je 0x44ee6f
cmp dword [0x4de818], 0
jne 0x44ee6f
mov eax, dword [ebp - 0x70]
mov edx, dword [eax + 0xc]
mov dword [ebp - 0x44], edx
mov ecx, dword [ebp - 0x70]
mov eax, dword [ecx + 0x10]
mov dword [ebp - 0x4c], eax
jmp 0x44ee7f
lea edx, [ebp - 0x4c]
push edx
lea ecx, [ebp - 0x44]
push ecx
call sym.ollydbg.exe__Getdisassemblerrange
add esp, 8
push 0x4baa79
lea eax, [ebp - 0x10c8]
push eax
call fcn.004a6c2c
add esp, 8
mov dword [ebp - 8], eax
lea edx, [ebp - 0x10c8]
add edx, dword [ebp - 8]
push edx
mov ecx, dword [ebp - 0x4c]
push ecx
mov eax, dword [ebp - 0x44]
push eax
call sym.ollydbg.exe__Decoderange
add dword [ebp - 8], eax
add esp, 0xc
mov edx, dword [ebx + 0x389]
lea eax, [ebp - 0x10c8]
dec edx
push edx
mov ecx, dword [ebx + 0x385]
push ecx
push str._to__08lX.._08lX
add eax, dword [ebp - 8]
push eax
call fcn.004a6c2c
add esp, 0x10
lea edx, [ebp - 0x10c8]
push edx
push 0
push 0
mov ecx, dword [ebx + 0x389]
push ecx
mov eax, dword [ebx + 0x385]
push eax
mov edx, dword [ebp - 0x4c]
push edx
mov ecx, dword [ebp - 0x44]
push ecx
call sym.ollydbg.exe__Findreferences
add esp, 0x1c
jmp 0x44ef6b
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
mov ecx, dword [ebp + 0xc]
push ecx
mov eax, dword [ebp + 8]
push eax
push ebx
call sym.ollydbg.exe__Tablefunction
add esp, 0x14
test eax, eax
je 0x44ef2b
mov eax, 1
jmp 0x453148
cmp dword [ebx + 0x251], 0
jne 0x44ef64
cmp dword [ebx + 0x379], 0
jbe 0x44ef64
push ebx
mov edx, dword [ebp + 0x10]
push edx
mov ecx, dword [ebp - 0x2c]
push ecx
push 0
mov eax, dword [ebp - 0x28]
push eax
push 0xa
call fcn.00496e98
add esp, 0x18
test eax, eax
je 0x44ef64
mov eax, 1
jmp 0x453148
xor eax, eax
jmp 0x453148
mov eax, 1
jmp 0x453148
mov edx, dword [ebx + 0x255]
and edx, 0xf000
mov dword [ebp - 0x14], edx
mov ecx, dword [ebp + 0x10]
push ecx
jmp 0x5111f5
cmp dword [ebx + 0x379], 0
jne 0x44f24f
xor eax, eax
jmp 0x453148
mov edx, dword [ebx + 0x37d]
mov dword [ebp - 0x44], edx
mov esi, dword [ebx + 0x255]
mov eax, dword [ebx + 0x255]
and esi, 0xff0
and eax, 0xf
sar esi, 4
imul esi, eax
test esi, esi
jne 0x44f27c
mov esi, 1
mov eax, dword [ebx + 0x375]
add eax, dword [ebx + 0x379]
mov dword [ebp - 0x48], eax
cmp dword [ebp + 0xc], 0x46a
je 0x44f3e3
mov edx, dword [ebx + 0x255]
and edx, 0xf000
cmp edx, 0x9000
jne 0x44f3e3
cmp dword [ebp + 0xc], 0x46d
jne 0x44f2d0
cmp dword [ebp + 0x14], 0x7fffffff
jne 0x44f2d0
mov ecx, dword [ebx + 0x375]
mov dword [ebp - 0x44], ecx
jmp 0x44f5f7
cmp dword [ebp + 0xc], 0x46d
jne 0x44f31b
cmp dword [ebp + 0x14], 0x7ffffffe
jne 0x44f31b
cmp dword [ebx + 0x251], 0
setne al
and eax, 1
push eax
push 1
mov edx, dword [ebp - 0x48]
push edx
mov ecx, dword [ebx + 0x379]
push ecx
mov eax, dword [ebx + 0x375]
push eax
mov edx, dword [ebx + 0x3a1]
push edx
call sym.ollydbg.exe__Disassembleback
add esp, 0x18
mov dword [ebp - 0x44], eax
jmp 0x44f5f7
cmp dword [ebp + 0x14], 0
jge 0x44f35e
cmp dword [ebx + 0x251], 0
setne cl
and ecx, 1
push ecx
mov eax, dword [ebp + 0x14]
neg eax
push eax
mov edx, dword [ebp - 0x44]
push edx
mov ecx, dword [ebx + 0x379]
push ecx
mov eax, dword [ebx + 0x375]
push eax
mov edx, dword [ebx + 0x3a1]
push edx
call sym.ollydbg.exe__Disassembleback
add esp, 0x18
mov dword [ebp - 0x44], eax
jmp 0x44f5f7
cmp dword [ebp + 0x14], 0
jle 0x44f5f7
cmp dword [ebx + 0x251], 0
setne cl
and ecx, 1
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp - 0x44]
push edx
mov ecx, dword [ebx + 0x379]
push ecx
mov eax, dword [ebx + 0x375]
push eax
mov edx, dword [ebx + 0x3a1]
push edx
call sym.ollydbg.exe__Disassembleforward
add esp, 0x18
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
cmp ecx, dword [ebp - 0x48]
jb 0x44f5f7
cmp dword [ebx + 0x251], 0
setne al
and eax, 1
push eax
push 1
mov edx, dword [ebp - 0x48]
push edx
mov ecx, dword [ebx + 0x379]
push ecx
mov eax, dword [ebx + 0x375]
push eax
mov edx, dword [ebx + 0x3a1]
push edx
call sym.ollydbg.exe__Disassembleback
add esp, 0x18
mov dword [ebp - 0x44], eax
jmp 0x44f5f7
cmp dword [ebp + 0xc], 0x46a
je 0x44f51f
mov ecx, dword [ebx + 0x255]
and ecx, 0xf000
cmp ecx, 0xd000
jne 0x44f51f
cmp dword [ebp + 0xc], 0x46d
jne 0x44f428
cmp dword [ebp + 0x14], 0x7fffffff
jne 0x44f428
mov eax, dword [ebx + 0x375]
mov dword [ebp - 0x44], eax
jmp 0x44f5f7
cmp dword [ebp + 0xc], 0x46d
jne 0x44f46c
cmp dword [ebp + 0x14], 0x7ffffffe
jne 0x44f46c
mov edx, dword [ebx + 0x259]
push edx
push 1
mov ecx, dword [ebp - 0x48]
push ecx
mov eax, dword [ebx + 0x379]
push eax
mov edx, dword [ebx + 0x375]
push edx
mov ecx, dword [ebx + 0x3a1]
push ecx
call fcn.00447360
add esp, 0x18
mov dword [ebp - 0x44], eax
jmp 0x44f5f7
cmp dword [ebp + 0x14], 0
jge 0x44f4a8
mov eax, dword [ebx + 0x259]
push eax
mov edx, dword [ebp + 0x14]
neg edx
push edx
mov ecx, dword [ebp - 0x44]
push ecx
mov eax, dword [ebx + 0x379]
push eax
mov edx, dword [ebx + 0x375]
push edx
mov ecx, dword [ebx + 0x3a1]
push ecx
call fcn.00447360
add esp, 0x18
mov dword [ebp - 0x44], eax
jmp 0x44f5f7
cmp dword [ebp + 0x14], 0
jle 0x44f5f7
mov eax, dword [ebx + 0x259]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp - 0x44]
push ecx
mov eax, dword [ebx + 0x379]
push eax
mov edx, dword [ebx + 0x375]
push edx
mov ecx, dword [ebx + 0x3a1]
push ecx
call fcn.00447488
add esp, 0x18
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
cmp eax, dword [ebp - 0x48]
jb 0x44f5f7
mov edx, dword [ebx + 0x259]
push edx
push 1
mov ecx, dword [ebp - 0x48]
push ecx
mov eax, dword [ebx + 0x379]
push eax
mov edx, dword [ebx + 0x375]
push edx
mov ecx, dword [ebx + 0x3a1]
push ecx
call fcn.00447360
add esp, 0x18
mov dword [ebp - 0x44], eax
jmp 0x44f5f7
cmp dword [ebp + 0xc], 0x46d
jne 0x44f53f
cmp dword [ebp + 0x14], 0x7fffffff
jne 0x44f53f
mov eax, dword [ebx + 0x375]
mov dword [ebp - 0x44], eax
jmp 0x44f5e4
cmp dword [ebp + 0xc], 0x46d
jne 0x44f55e
cmp dword [ebp + 0x14], 0x7ffffffe
jne 0x44f55e
mov edx, dword [ebp - 0x48]
sub edx, esi
mov dword [ebp - 0x44], edx
jmp 0x44f5e4
cmp dword [ebp + 0x14], 0
jl 0x44f5ab
cmp dword [ebp + 0xc], 0x46a
jne 0x44f585
mov ecx, dword [ebp + 0x14]
add dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x48]
dec eax
cmp eax, dword [ebp - 0x44]
jae 0x44f5e4
mov edx, dword [ebp - 0x48]
dec edx
mov dword [ebp - 0x44], edx
jmp 0x44f5e4
mov ecx, dword [ebp - 0x44]
add ecx, esi
cmp ecx, dword [ebp - 0x48]
jae 0x44f5e4
mov eax, dword [ebp + 0x14]
imul esi
add dword [ebp - 0x44], eax
mov edx, dword [ebp - 0x44]
add edx, esi
cmp edx, dword [ebp - 0x48]
jbe 0x44f5e4
mov ecx, dword [ebp - 0x48]
sub ecx, esi
mov dword [ebp - 0x44], ecx
jmp 0x44f5e4
cmp dword [ebp + 0xc], 0x46a
jne 0x44f5bc
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x24], eax
jmp 0x44f5c5
mov edx, dword [ebp + 0x14]
imul edx, esi
mov dword [ebp - 0x24], edx
mov ecx, dword [ebx + 0x375]
sub ecx, dword [ebp - 0x24]
cmp ecx, dword [ebp - 0x44]
jbe 0x44f5de
mov eax, dword [ebx + 0x375]
mov dword [ebp - 0x44], eax
jmp 0x44f5e4
mov edx, dword [ebp - 0x24]
add dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x44]
sub eax, dword [ebx + 0x375]
xor edx, edx
div esi
test edx, edx
je 0x44f5f7
xor esi, esi
cmp dword [ebp + 0x14], 0
je 0x44f610
mov eax, dword [ebp - 0x44]
cmp eax, dword [ebx + 0x37d]
jne 0x44f610
or eax, 0xffffffff
jmp 0x453148
mov edx, dword [ebp - 0x44]
mov dword [ebx + 0x37d], edx
mov ecx, dword [ebx + 0x379]
sub ecx, esi
push ecx
push 0x4000
mov eax, dword [ebp - 0x44]
sub eax, dword [ebx + 0x375]
push eax
call sub.KERNEL32.DLL_MulDiv
jmp 0x453148
cmp dword [ebx + 0x379], 0
jne 0x44f64b
xor eax, eax
jmp 0x453148
mov esi, dword [ebx + 0x255]
mov eax, dword [ebx + 0x255]
and esi, 0xff0
and eax, 0xf
sar esi, 4
imul esi, eax
test esi, esi
jne 0x44f66f
mov esi, 1
mov eax, dword [ebx + 0x375]
add eax, dword [ebx + 0x379]
mov dword [ebp - 0x48], eax
mov edx, dword [ebx + 0x255]
and edx, 0xf000
cmp edx, 0x9000
jne 0x44f6f7
push 0x4000
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebx + 0x379]
push eax
call sub.KERNEL32.DLL_MulDiv
add eax, dword [ebx + 0x375]
mov dword [ebp - 0x44], eax
mov edx, dword [ebp - 0x44]
cmp edx, dword [ebp - 0x48]
jbe 0x44f6be
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x44], ecx
cmp dword [ebx + 0x251], 0
setne al
and eax, 1
push eax
push 1
mov edx, dword [ebp - 0x44]
push edx
mov ecx, dword [ebx + 0x379]
push ecx
mov eax, dword [ebx + 0x375]
push eax
mov edx, dword [ebx + 0x3a1]
push edx
call sym.ollydbg.exe__Disassembleback
add esp, 0x18
mov dword [ebp - 0x44], eax
jmp 0x44f7e2
mov ecx, dword [ebx + 0x255]
and ecx, 0xf000
cmp ecx, 0xd000
jne 0x44f766
push 0x4000
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebx + 0x379]
push edx
call sub.KERNEL32.DLL_MulDiv
add eax, dword [ebx + 0x375]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
cmp ecx, dword [ebp - 0x48]
jbe 0x44f737
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x44], eax
mov edx, dword [ebx + 0x259]
push edx
push 1
mov ecx, dword [ebp - 0x44]
push ecx
mov eax, dword [ebx + 0x379]
push eax
mov edx, dword [ebx + 0x375]
push edx
mov ecx, dword [ebx + 0x3a1]
push ecx
call fcn.00447360
add esp, 0x18
mov dword [ebp - 0x44], eax
jmp 0x44f7e2
cmp dword [ebp + 0x14], 0
jne 0x44f770
xor eax, eax
jmp 0x44f782
mov eax, dword [ebx + 0x37d]
sub eax, dword [ebx + 0x375]
xor edx, edx
div esi
mov eax, edx
mov dword [ebp - 0x24], eax
push 0x4000
mov edx, dword [ebp + 0x14]
push edx
cmp dword [ebp - 0x24], 0
jne 0x44f798
mov ecx, esi
jmp 0x44f79a
xor ecx, ecx
mov eax, dword [ebx + 0x379]
sub eax, ecx
push eax
call sub.KERNEL32.DLL_MulDiv
mov dword [ebp - 0x44], eax
xor edx, edx
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebx + 0x375]
div esi
imul esi
add ecx, dword [ebp - 0x24]
add eax, ecx
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x48]
sub eax, esi
add eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x44]
jae 0x44f7da
mov edx, dword [ebp - 0x48]
sub edx, esi
add edx, dword [ebp - 0x24]
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x24], 0
je 0x44f7e2
xor esi, esi
mov eax, dword [ebp - 0x44]
cmp eax, dword [ebx + 0x37d]
jne 0x44f7f5
or eax, 0xffffffff
jmp 0x453148
mov edx, dword [ebp - 0x44]
mov dword [ebx + 0x37d], edx
mov ecx, dword [ebx + 0x379]
sub ecx, esi
push ecx
push 0x4000
mov eax, dword [ebp - 0x44]
sub eax, dword [ebx + 0x375]
push eax
call sub.KERNEL32.DLL_MulDiv
jmp 0x453148
test byte [ebx + 0x257], 1
je 0x44f830
xor eax, eax
jmp 0x453148
mov edx, dword [ebx + 0x255]
and edx, 0xf000
mov dword [ebp - 0x14], edx
mov ecx, dword [ebx + 0x375]
add ecx, dword [ebx + 0x379]
mov dword [ebp - 0x44], ecx
cmp dword [ebp - 0x14], 0x9000
jne 0x44f93a
cmp dword [ebx + 0x251], 0
setne al
and eax, 1
mov esi, eax
push esi
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebx + 0x37d]
push edx
mov ecx, dword [ebx + 0x379]
push ecx
mov eax, dword [ebx + 0x375]
push eax
mov edx, dword [ebx + 0x3a1]
push edx
call sym.ollydbg.exe__Disassembleforward
add esp, 0x18
mov dword [ebp - 0x50], eax
cmp dword [ebp + 0xc], 0x46b
jne 0x44f8cb
push esi
push 1
mov ecx, dword [ebp - 0x50]
push ecx
mov eax, dword [ebx + 0x379]
push eax
mov edx, dword [ebx + 0x375]
push edx
mov ecx, dword [ebx + 0x3a1]
push ecx
call sym.ollydbg.exe__Disassembleforward
add esp, 0x18
mov dword [ebp - 0x54], eax
jmp 0x44fbf0
mov eax, dword [ebx + 0x38d]
cmp eax, dword [ebp - 0x50]
jbe 0x44f905
push esi
push 1
mov edx, dword [ebx + 0x38d]
push edx
mov ecx, dword [ebx + 0x379]
push ecx
mov eax, dword [ebx + 0x375]
push eax
mov edx, dword [ebx + 0x3a1]
push edx
call sym.ollydbg.exe__Disassembleforward
add esp, 0x18
mov dword [ebp - 0x54], eax
jmp 0x44fbf0
push esi
push 1
mov ecx, dword [ebp - 0x50]
push ecx
mov eax, dword [ebx + 0x379]
push eax
mov edx, dword [ebx + 0x375]
push edx
mov ecx, dword [ebx + 0x3a1]
push ecx
call sym.ollydbg.exe__Disassembleforward
add esp, 0x18
mov dword [ebp - 0x54], eax
mov eax, dword [ebx + 0x38d]
mov dword [ebp - 0x50], eax
jmp 0x44fbf0
cmp dword [ebp - 0x14], 0xd000
jne 0x44fa2f
mov edx, dword [ebx + 0x259]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebx + 0x37d]
push eax
mov edx, dword [ebx + 0x379]
push edx
mov ecx, dword [ebx + 0x375]
push ecx
mov eax, dword [ebx + 0x3a1]
push eax
call fcn.00447488
add esp, 0x18
mov dword [ebp - 0x50], eax
cmp dword [ebp + 0xc], 0x46b
jne 0x44f9b4
mov edx, dword [ebx + 0x259]
push edx
push 1
mov ecx, dword [ebp - 0x50]
push ecx
mov eax, dword [ebx + 0x379]
push eax
mov edx, dword [ebx + 0x375]
push edx
mov ecx, dword [ebx + 0x3a1]
push ecx
call fcn.00447488
add esp, 0x18
mov dword [ebp - 0x54], eax
jmp 0x44fbf0
mov eax, dword [ebx + 0x38d]
cmp eax, dword [ebp - 0x50]
jbe 0x44f9f4
mov edx, dword [ebx + 0x259]
push edx
push 1
mov ecx, dword [ebx + 0x38d]
push ecx
mov eax, dword [ebx + 0x379]
push eax
mov edx, dword [ebx + 0x375]
push edx
mov ecx, dword [ebx + 0x3a1]
push ecx
call fcn.00447488
add esp, 0x18
mov dword [ebp - 0x54], eax
jmp 0x44fbf0
mov eax, dword [ebx + 0x259]
push eax
push 1
mov edx, dword [ebp - 0x50]
push edx
mov ecx, dword [ebx + 0x379]
push ecx
mov eax, dword [ebx + 0x375]
push eax
mov edx, dword [ebx + 0x3a1]
push edx
call fcn.00447488
add esp, 0x18
mov dword [ebp - 0x54], eax
mov ecx, dword [ebx + 0x38d]
mov dword [ebp - 0x50], ecx
jmp 0x44fbf0
cmp dword [ebp - 0x14], 0x8000
je 0x44fa6d
cmp dword [ebp - 0x14], 0xb000
je 0x44fa6d
cmp dword [ebp - 0x14], 0xc000
je 0x44fa6d
mov eax, dword [ebp + 0x10]
shr eax, 0x10
test ax, ax
jg 0x44fa6d
cmp dword [ebp + 0xc], 0x46b
jne 0x44fa66
or eax, 0xffffffff
jmp 0x453148
xor eax, eax
jmp 0x453148
cmp dword [ebp - 0x14], 0x8000
je 0x44fa88
cmp dword [ebp - 0x14], 0xb000
je 0x44fa88
cmp dword [ebp - 0x14], 0xc000
jne 0x44fa98
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x1c], 4
jmp 0x44fab6
mov edx, dword [ebx + 0x255]
and edx, 0xff0
sar edx, 4
mov dword [ebp - 0x18], edx
mov ecx, dword [ebx + 0x255]
and ecx, 0xf
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x14], 0x1000
je 0x44fac8
cmp dword [ebp - 0x14], 0xa000
jne 0x44fb1b
mov eax, dword [ebp + 0x10]
shr eax, 0x10
cmp ax, 1
jne 0x44faef
mov ax, word [ebp + 0x10]
mov ecx, 3
and ax, 0xffff
movzx eax, ax
cdq
idiv ecx
mov dword [ebp - 0x20], eax
jmp 0x44fb86
cmp dword [ebp - 0x14], 0xa000
jne 0x44fb0a
mov eax, dword [ebp - 0x18]
imul dword [ebp - 0x1c]
shr eax, 1
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], 2
mov dx, word [ebp + 0x10]
and dx, 0xffff
movzx ecx, dx
mov dword [ebp - 0x20], ecx
jmp 0x44fb86
cmp dword [ebp - 0x14], 0x2000
je 0x44fb2d
cmp dword [ebp - 0x14], 0x3000
jne 0x44fb3d
mov ax, word [ebp + 0x10]
and ax, 0xffff
movzx edx, ax
mov dword [ebp - 0x20], edx
jmp 0x44fb86
cmp dword [ebp - 0x14], 0x4000
je 0x44fb61
cmp dword [ebp - 0x14], 0x5000
je 0x44fb61
cmp dword [ebp - 0x14], 0x6000
je 0x44fb61
cmp dword [ebp - 0x14], 0x7000
jne 0x44fb81
cmp dword [ebx + 0x261], 0
je 0x44fb81
mov ax, word [ebp + 0x10]
and ax, 0xffff
movzx eax, ax
cdq
idiv dword [ebx + 0x261]
mov dword [ebp - 0x20], eax
jmp 0x44fb86
xor ecx, ecx
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x18]
jl 0x44fb95
mov edx, dword [ebp - 0x18]
dec edx
mov dword [ebp - 0x20], edx
mov ecx, dword [ebp - 0x18]
imul ecx, dword [ebp - 0x1c]
imul ecx, dword [ebp + 0x14]
add ecx, dword [ebx + 0x37d]
mov eax, dword [ebp - 0x20]
imul dword [ebp - 0x1c]
add ecx, eax
mov dword [ebp - 0x50], ecx
cmp dword [ebp + 0xc], 0x46b
jne 0x44fbc5
mov edx, dword [ebp - 0x50]
add edx, dword [ebp - 0x1c]
mov dword [ebp - 0x54], edx
jmp 0x44fbf0
mov ecx, dword [ebx + 0x38d]
cmp ecx, dword [ebp - 0x50]
jbe 0x44fbde
mov eax, dword [ebx + 0x38d]
add eax, dword [ebp - 0x1c]
mov dword [ebp - 0x54], eax
jmp 0x44fbf0
mov edx, dword [ebp - 0x50]
add edx, dword [ebp - 0x1c]
mov dword [ebp - 0x54], edx
mov ecx, dword [ebx + 0x38d]
mov dword [ebp - 0x50], ecx
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x44]
jb 0x44fbfe
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x50], edx
mov ecx, dword [ebp - 0x54]
cmp ecx, dword [ebp - 0x44]
jb 0x44fc0c
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x54], eax
cmp dword [ebp + 0xc], 0x46b
jne 0x44fc1e
mov edx, dword [ebp - 0x50]
mov dword [ebx + 0x38d], edx
mov ecx, dword [ebx + 0x385]
cmp ecx, dword [ebp - 0x50]
jne 0x44fc3b
mov eax, dword [ebx + 0x389]
cmp eax, dword [ebp - 0x54]
jne 0x44fc3b
xor eax, eax
jmp 0x453148
mov edx, dword [ebp - 0x50]
mov eax, 1
mov dword [ebx + 0x385], edx
mov ecx, dword [ebp - 0x54]
mov dword [ebx + 0x389], ecx
jmp 0x453148
mov edx, dword [ebp + 0x10]
shr edx, 0x10
test dx, dx
je 0x44fc69
xor eax, eax
jmp 0x453148
mov edx, dword [ebx + 0x255]
and edx, 0xf000
mov dword [ebp - 0x14], edx
cmp dword [ebp - 0x14], 0x9000
jne 0x44fcbc
cmp dword [ebx + 0x251], 0
setne cl
and ecx, 1
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebx + 0x37d]
push edx
mov ecx, dword [ebx + 0x379]
push ecx
mov eax, dword [ebx + 0x375]
push eax
mov edx, dword [ebx + 0x3a1]
push edx
call sym.ollydbg.exe__Disassembleforward
add esp, 0x18
mov dword [ebp - 0x44], eax
jmp 0x44fd21
cmp dword [ebp - 0x14], 0xd000
jne 0x44fcf9
mov ecx, dword [ebx + 0x259]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebx + 0x37d]
push edx
mov ecx, dword [ebx + 0x379]
push ecx
mov eax, dword [ebx + 0x375]
push eax
mov edx, dword [ebx + 0x3a1]
push edx
call fcn.00447488
add esp, 0x18
mov dword [ebp - 0x44], eax
jmp 0x44fd21
mov ecx, dword [ebx + 0x255]
mov eax, dword [ebx + 0x255]
and ecx, 0xff0
and eax, 0xf
sar ecx, 4
imul ecx, dword [ebp + 0x14]
imul ecx, eax
add ecx, dword [ebx + 0x37d]
mov dword [ebp - 0x44], ecx
mov edx, dword [ebx + 0x375]
add edx, dword [ebx + 0x379]
cmp edx, dword [ebp - 0x44]
jae 0x44fd41
mov ecx, dword [ebx + 0x375]
add ecx, dword [ebx + 0x379]
mov dword [ebp - 0x44], ecx
mov eax, dword [ebx + 0x395]
cmp eax, dword [ebp - 0x44]
je 0x44fd68
mov edx, dword [ebp - 0x44]
mov dword [ebx + 0x395], edx
add ebx, 0x399
mov edi, ebx
mov esi, 0x4baa99
mov eax, edi
movsw word es:[edi], word [esi]
jmp 0x44fd70
xor edx, edx
mov dword [ebx + 0x395], edx
push 0
push 0
mov ecx, dword [ebp + 8]
push ecx
call sub.USER32.DLL_InvalidateRect
mov eax, 1
jmp 0x453148
mov edx, dword [ebx + 0x255]
and edx, 0xf000
mov dword [ebp - 0x30], edx
cmp dword [ebp - 0x30], 0xb000
je 0x44fdba
cmp dword [ebp - 0x30], 0xc000
je 0x44fdba
cmp dword [ebp - 0x30], 0x1000
je 0x44fdba
cmp dword [ebp - 0x30], 0xa000
jne 0x44fdc3
mov dword [ebp - 0x34], 4
jmp 0x44fdcf
mov ecx, dword [ebx + 0x255]
and ecx, 0xf
mov dword [ebp - 0x34], ecx
push 0xa
push 0
lea eax, [ebp - 0x6c]
push eax
call fcn.004a35a0
add esp, 0xc
mov edx, dword [ebx + 0x385]
mov dword [ebp - 0x50], edx
mov ecx, dword [ebx + 0x389]
mov dword [ebp - 0x54], ecx
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x54]
jae 0x44fe15
mov edx, dword [ebp - 0x50]
cmp edx, dword [ebx + 0x375]
jb 0x44fe15
mov ecx, dword [ebx + 0x375]
add ecx, dword [ebx + 0x379]
cmp ecx, dword [ebp - 0x54]
jae 0x44fe21
mov eax, dword [ebx + 0x375]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x34], 0xa
jg 0x44fe3d
mov edx, dword [ebp - 0x50]
mov ecx, dword [ebx + 0x375]
add ecx, dword [ebx + 0x379]
add edx, dword [ebp - 0x34]
cmp edx, ecx
jbe 0x44fe44
xor eax, eax
mov dword [ebp - 0x3c], eax
jmp 0x44fe92
cmp dword [ebx + 0x3a1], 0
jne 0x44fe71
push 3
mov edx, dword [ebp - 0x34]
push edx
mov ecx, dword [ebp - 0x50]
push ecx
lea eax, [ebp - 0x6c]
push eax
call sym.ollydbg.exe__Readmemory
add esp, 0x10
cmp eax, dword [ebp - 0x34]
sete dl
and edx, 1
mov dword [ebp - 0x3c], edx
jmp 0x44fe92
mov ecx, dword [ebp - 0x34]
push ecx
mov eax, dword [ebx + 0x3a1]
add eax, dword [ebp - 0x50]
push eax
lea edx, [ebp - 0x6c]
push edx
call fcn.004a3530
mov dword [ebp - 0x3c], 1
add esp, 0xc
test byte [ebx + 0x257], 1
setne cl
and ecx, 1
mov dword [ebp - 0x38], ecx
cmp dword [ebx + 0x3a1], 0
jne 0x44fecb
cmp dword [ebx + 0x251], 0
je 0x44fecb
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x54]
jae 0x44fecb
mov edx, dword [ebp - 0x50]
push edx
call sym.ollydbg.exe__Findmodule
pop ecx
mov dword [ebp - 0x70], eax
jmp 0x44fed0
xor ecx, ecx
mov dword [ebp - 0x70], ecx
cmp dword [ebp - 0x38], 0
je 0x44fedb
xor eax, eax
mov dword [ebp + 0x14], eax
mov edx, dword [ebp + 0x14]
mov dword [ebp - 0x80], edx
cmp dword [ebp - 0x80], 0
jne 0x44feef
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 0
jne 0x44fefc
xor eax, eax
jmp 0x453148
xor edx, edx
xor eax, eax
mov dword [ebp - 0x98], edx
mov dword [ebp - 0x94], edx
mov dword [ebp - 0x90], edx
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0x88], edx
mov dword [ebp - 0x84], edx
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
cmp dword [ebx + 0x379], 0
jbe 0x450076
test byte [ebx + 0x25d], 1
je 0x450076
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0x84], eax
test eax, eax
je 0x450076
cmp dword [ebx + 0x3a5], 0
je 0x44ffa5
cmp dword [ebp - 0x38], 0
jne 0x44ffa5
push str.View_backup
push 0x66
push 0
mov edx, dword [ebp - 0x84]
push edx
call sub.USER32.DLL_AppendMenuA
cmp dword [ebx + 0x3a5], 0
je 0x44ffc9
cmp dword [ebp - 0x38], 0
je 0x44ffc9
push str.View_actual_data
push 0x67
push 0
mov ecx, dword [ebp - 0x84]
push ecx
call sub.USER32.DLL_AppendMenuA
cmp dword [ebp - 0x38], 0
jne 0x45005f
cmp dword [ebx + 0x3a5], 0
jne 0x44ffe3
mov eax, str.Create_backup
jmp 0x44ffe8
mov eax, str.Update_backup
push eax
push 0x68
push 0
mov edx, dword [ebp - 0x84]
push edx
call sub.USER32.DLL_AppendMenuA
cmp dword [ebx + 0x3a5], 0
je 0x450017
push str.Delete_backup
push 0x69
push 0
mov ecx, dword [ebp - 0x84]
push ecx
call sub.USER32.DLL_AppendMenuA
push str.Load_backup_from_file
push 0x6a
push 0
mov eax, dword [ebp - 0x84]
push eax
call sub.USER32.DLL_AppendMenuA
cmp dword [ebx + 0x3a5], 0
je 0x45004a
push str.Save_backup_to_file
push 0x6b
push 0
mov edx, dword [ebp - 0x84]
push edx
call sub.USER32.DLL_AppendMenuA
push str.Save_data_to_file
push 0x6c
push 0
mov ecx, dword [ebp - 0x84]
push ecx
call sub.USER32.DLL_AppendMenuA
push str.Backup
mov eax, dword [ebp - 0x84]
push eax
push 0x10
mov edx, dword [ebp - 0x80]
push edx
call sub.USER32.DLL_AppendMenuA
cmp dword [ebp - 0x38], 0
jne 0x450670
mov ecx, dword [ebp - 0x50]
cmp ecx, dword [ebp - 0x54]
jae 0x450670
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebx + 0x375]
jb 0x450670
mov edx, dword [ebx + 0x375]
add edx, dword [ebx + 0x379]
cmp edx, dword [ebp - 0x54]
jb 0x450670
cmp dword [ebx + 0x3a5], 0
je 0x450186
test byte [ebx + 0x25d], 1
je 0x450186
mov ecx, dword [ebp - 0x54]
sub ecx, dword [ebp - 0x50]
mov dword [ebp - 0x4c], ecx
cmp dword [ebx + 0x3a1], 0
je 0x45010c
mov eax, dword [ebp - 0x4c]
push eax
mov edx, dword [ebx + 0x3a1]
add edx, dword [ebp - 0x50]
sub edx, dword [ebx + 0x375]
push edx
mov ecx, dword [ebx + 0x3a5]
add ecx, dword [ebp - 0x50]
sub ecx, dword [ebx + 0x375]
push ecx
call fcn.004a37d4
add esp, 0xc
mov edi, eax
jmp 0x450170
mov eax, dword [ebp - 0x4c]
push eax
push 0
call sub.KERNEL32.DLL_GlobalAlloc
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0
je 0x45015f
push 3
mov edx, dword [ebp - 0x4c]
push edx
mov ecx, dword [ebp - 0x50]
push ecx
mov eax, dword [ebp - 0x60]
push eax
call sym.ollydbg.exe__Readmemory
add esp, 0x10
cmp eax, dword [ebp - 0x4c]
jne 0x45015f
mov edx, dword [ebp - 0x4c]
push edx
mov ecx, dword [ebp - 0x60]
push ecx
mov eax, dword [ebx + 0x3a5]
add eax, dword [ebp - 0x50]
sub eax, dword [ebx + 0x375]
push eax
call fcn.004a37d4
add esp, 0xc
mov edi, eax
jmp 0x450161
xor edi, edi
cmp dword [ebp - 0x60], 0
je 0x450170
mov eax, dword [ebp - 0x60]
push eax
call sub.KERNEL32.DLL_GlobalFree
test edi, edi
je 0x450186
push str.Undo_selection_tAltBkSp
push 0x6d
push 0
mov edx, dword [ebp - 0x80]
push edx
call sub.USER32.DLL_AppendMenuA
test byte [ebx + 0x25d], 2
je 0x45020c
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0x88], eax
test eax, eax
je 0x45020c
push str.To_clipboard_tCtrlC
push 0x6e
push 0
mov edx, dword [ebp - 0x88]
push edx
call sub.USER32.DLL_AppendMenuA
push str.To_file
push 0x6f
push 0
mov ecx, dword [ebp - 0x88]
push ecx
call sub.USER32.DLL_AppendMenuA
push 0x4ba02e
push 0
push 0x800
mov eax, dword [ebp - 0x88]
push eax
call sub.USER32.DLL_AppendMenuA
push str.Select_all
push 0x70
push 0
mov edx, dword [ebp - 0x88]
push edx
call sub.USER32.DLL_AppendMenuA
push str.Copy
mov ecx, dword [ebp - 0x88]
push ecx
push 0x10
mov eax, dword [ebp - 0x80]
push eax
call sub.USER32.DLL_AppendMenuA
test byte [ebx + 0x25d], 4
je 0x45045a
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0x8c], eax
test eax, eax
je 0x450327
push str.Edit_tCtrlE
push 0x73
push 0
mov edx, dword [ebp - 0x8c]
push edx
call sub.USER32.DLL_AppendMenuA
push str.Fill_with_00s
push 0x74
push 0
mov ecx, dword [ebp - 0x8c]
push ecx
call sub.USER32.DLL_AppendMenuA
push str.Fill_with_FFs
push 0x75
push 0
mov eax, dword [ebp - 0x8c]
push eax
call sub.USER32.DLL_AppendMenuA
push 0x4ba02e
push 0
push 0x800
mov edx, dword [ebp - 0x8c]
push edx
call sub.USER32.DLL_AppendMenuA
push str.Binary_copy
push 0x76
push 0
mov ecx, dword [ebp - 0x8c]
push ecx
call sub.USER32.DLL_AppendMenuA
mov eax, dword [ebp + 8]
push eax
call sub.USER32.DLL_OpenClipboard
push 1
call sub.USER32.DLL_GetClipboardData
test eax, eax
je 0x4502c1
push str.Binary_paste
push 0x77
push 0
mov edx, dword [ebp - 0x8c]
push edx
call sub.USER32.DLL_AppendMenuA
call sub.USER32.DLL_CloseClipboard
mov ecx, dword [ebp - 0x50]
push ecx
mov eax, dword [ebp - 0x70]
push eax
call sym.ollydbg.exe__Findfixup
add esp, 8
mov esi, eax
test esi, esi
je 0x450310
mov eax, dword [esi]
cmp eax, dword [ebp - 0x54]
jae 0x450310
push 0x4ba02e
push 0
push 0x800
mov edx, dword [ebp - 0x8c]
push edx
call sub.USER32.DLL_AppendMenuA
push str.Copy_with_masked_fixups
push 0x78
push 0
mov ecx, dword [ebp - 0x8c]
push ecx
call sub.USER32.DLL_AppendMenuA
push str.Binary
mov eax, dword [ebp - 0x8c]
push eax
push 0x10
mov edx, dword [ebp - 0x80]
push edx
call sub.USER32.DLL_AppendMenuA
cmp dword [ebp - 0x3c], 0
je 0x450383
cmp dword [ebp - 0x30], 0x4000
je 0x45036c
cmp dword [ebp - 0x30], 0x5000
je 0x45036c
cmp dword [ebp - 0x30], 0x6000
je 0x45036c
cmp dword [ebp - 0x30], 0x8000
je 0x45036c
cmp dword [ebp - 0x30], 0xb000
je 0x45036c
cmp dword [ebp - 0x30], 0xc000
je 0x45036c
cmp dword [ebp - 0x30], 0x7000
jne 0x450383
push str.Modify
push 0x79
push 0
mov ecx, dword [ebp - 0x80]
push ecx
call sub.USER32.DLL_AppendMenuA
jmp 0x45045a
cmp dword [ebp - 0x30], 0x9000
jne 0x4503a3
push str.Assemble
push 0x7a
push 0
mov eax, dword [ebp - 0x80]
push eax
call sub.USER32.DLL_AppendMenuA
jmp 0x45045a
cmp dword [ebp - 0x30], 0xd000
jne 0x45045a
cmp dword [ebx + 0x259], 0
je 0x45045a
push 0
lea edx, [ebp - 0x1b40]
push edx
mov ecx, dword [ebp - 0x50]
push ecx
mov eax, dword [ebx + 0x379]
push eax
mov edx, dword [ebx + 0x375]
push edx
mov ecx, dword [ebx + 0x3a1]
push ecx
call dword [ebx + 0x259]
add esp, 0x18
test eax, eax
je 0x45045a
test byte [ebp - 0x153c], 0x1f
je 0x45045a
and dword [ebp - 0x153c], 0x1f
cmp dword [ebp - 0x153c], 1
jne 0x450419
push str.Modify_byte
push 0x7c
push 0
mov eax, dword [ebp - 0x80]
push eax
call sub.USER32.DLL_AppendMenuA
jmp 0x45045a
cmp dword [ebp - 0x153c], 2
je 0x45042b
cmp dword [ebp - 0x153c], 4
jne 0x45043f
push str.Modify_integer
push 0x7c
push 0
mov edx, dword [ebp - 0x80]
push edx
call sub.USER32.DLL_AppendMenuA
jmp 0x45045a
cmp dword [ebp - 0x153c], 5
jne 0x45045a
push str.Modify_float
push 0x7c
push 0
mov ecx, dword [ebp - 0x80]
push ecx
call sub.USER32.DLL_AppendMenuA
cmp dword [ebp - 0x70], 0
je 0x45048e
push 0
push 0x31
mov eax, dword [ebp - 0x50]
push eax
call sym.ollydbg.exe__Findname
add esp, 0xc
test eax, eax
jne 0x45047b
mov edx, str.Label_t:
jmp 0x450480
mov edx, str.Edit_label_t:
push edx
push 0x7d
push 0
mov eax, dword [ebp - 0x80]
push eax
call sub.USER32.DLL_AppendMenuA
cmp dword [ebx + 0x3a1], 0
jne 0x450670
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0x90], eax
test eax, eax
je 0x450670
push str.Memory__on_access
push 0x7e
push 0
mov edx, dword [ebp - 0x90]
push edx
call sub.USER32.DLL_AppendMenuA
push str.Memory__on_write
push 0x7f
push 0
mov ecx, dword [ebp - 0x90]
push ecx
call sub.USER32.DLL_AppendMenuA
cmp dword [0x4d8140], 0
je 0x45051c
cmp dword [0x4d8138], 0
je 0x450504
push 0x4bac10
push 0x80
push 0
mov eax, dword [ebp - 0x90]
push eax
call sub.USER32.DLL_AppendMenuA
jmp 0x45051c
push 0x4bac2e
push 0x80
push 0
mov edx, dword [ebp - 0x90]
push edx
call sub.USER32.DLL_AppendMenuA
cmp dword [0x4d375c], 0
je 0x450659
push 0x4ba02e
push 0
push 0x800
mov ecx, dword [ebp - 0x90]
push ecx
call sub.USER32.DLL_AppendMenuA
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0x94], eax
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x94], 0
je 0x450659
cmp dword [ebp - 0x98], 0
je 0x450659
push str.Byte
push 0x83
push 0
mov eax, dword [ebp - 0x94]
push eax
call sub.USER32.DLL_AppendMenuA
push str.Byte
push 0x84
push 0
mov edx, dword [ebp - 0x98]
push edx
call sub.USER32.DLL_AppendMenuA
test byte [ebp - 0x50], 1
jne 0x4505d7
push str.Word
push 0x85
push 0
mov ecx, dword [ebp - 0x94]
push ecx
call sub.USER32.DLL_AppendMenuA
push str.Word
push 0x86
push 0
mov eax, dword [ebp - 0x98]
push eax
call sub.USER32.DLL_AppendMenuA
test byte [ebp - 0x50], 3
jne 0x45060d
push str.Dword
push 0x87
push 0
mov edx, dword [ebp - 0x94]
push edx
call sub.USER32.DLL_AppendMenuA
push str.Dword
push 0x88
push 0
mov ecx, dword [ebp - 0x98]
push ecx
call sub.USER32.DLL_AppendMenuA
push str.Hardware__on_access
mov eax, dword [ebp - 0x94]
push eax
push 0x10
mov edx, dword [ebp - 0x90]
push edx
call sub.USER32.DLL_AppendMenuA
push str.Hardware__on_write
mov ecx, dword [ebp - 0x98]
push ecx
push 0x10
mov eax, dword [ebp - 0x90]
push eax
call sub.USER32.DLL_AppendMenuA
push str.Hardware__on_execution
push 0x8a
push 0
mov edx, dword [ebp - 0x90]
push edx
call sub.USER32.DLL_AppendMenuA
push str.Breakpoint
mov ecx, dword [ebp - 0x90]
push ecx
push 0x10
mov eax, dword [ebp - 0x80]
push eax
call sub.USER32.DLL_AppendMenuA
cmp dword [ebp - 0x38], 0
jne 0x4507ff
cmp dword [ebx + 0x379], 0
jbe 0x4507ff
test byte [ebx + 0x25d], 8
je 0x4507ff
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0x9c], eax
test eax, eax
je 0x4507ff
cmp dword [ebp - 0x30], 0x9000
jne 0x4506cd
push str.Command
push 0xa1
push 0
mov edx, dword [ebp - 0x9c]
push edx
call sub.USER32.DLL_AppendMenuA
jmp 0x450758
cmp dword [ebp - 0x30], 0x4000
je 0x4506e8
cmp dword [ebp - 0x30], 0x5000
je 0x4506e8
cmp dword [ebp - 0x30], 0x6000
jne 0x450702
push str.Integer
push 0xa2
push 0
mov ecx, dword [ebp - 0x9c]
push ecx
call sub.USER32.DLL_AppendMenuA
jmp 0x450758
cmp dword [ebp - 0x30], 0x7000
jne 0x450725
push str.Float
push 0xa3
push 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.USER32.DLL_AppendMenuA
jmp 0x450758
cmp dword [ebp - 0x30], 0x8000
je 0x450740
cmp dword [ebp - 0x30], 0xb000
je 0x450740
cmp dword [ebp - 0x30], 0xc000
jne 0x450758
push 0x4bacbf
push 0xa4
push 0
mov edx, dword [ebp - 0x9c]
push edx
call sub.USER32.DLL_AppendMenuA
push str.Binary_string_tCtrlB
push 0xa5
push 0
mov ecx, dword [ebp - 0x9c]
push ecx
call sub.USER32.DLL_AppendMenuA
cmp dword [ebx + 0x3a5], 0
je 0x450791
push str.Modified_data
push 0xa6
push 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.USER32.DLL_AppendMenuA
cmp dword [0x4dcfe4], 0
je 0x4507b2
push str.Next_tCtrlL
push 0xa7
push 0
mov edx, dword [ebp - 0x9c]
push edx
call sub.USER32.DLL_AppendMenuA
cmp dword [ebp - 0x70], 0
je 0x4507e8
push 0x4ba02e
push 0
push 0x800
mov ecx, dword [ebp - 0x9c]
push ecx
call sub.USER32.DLL_AppendMenuA
push str.Name__label__tCtrlN
push 0xa8
push 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.USER32.DLL_AppendMenuA
push str.Search_for
mov edx, dword [ebp - 0x9c]
push edx
push 0x10
mov ecx, dword [ebp - 0x80]
push ecx
call sub.USER32.DLL_AppendMenuA
cmp dword [ebp - 0x38], 0
jne 0x450983
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x54]
jae 0x450983
mov edx, dword [ebp - 0x50]
cmp edx, dword [ebx + 0x375]
jb 0x450983
mov ecx, dword [ebx + 0x375]
add ecx, dword [ebx + 0x379]
cmp ecx, dword [ebp - 0x54]
jb 0x450983
cmp dword [ebx + 0x3a1], 0
jne 0x45093e
cmp dword [ebp - 0x3c], 0
je 0x45093e
cmp dword [ebp - 0x30], 0x8000
je 0x450881
cmp dword [ebp - 0x30], 0xb000
je 0x450881
cmp dword [ebp - 0x30], 0xc000
je 0x450881
cmp dword [ebp - 0x30], 0x1000
je 0x450881
cmp dword [ebp - 0x30], 0xa000
jne 0x45093e
mov eax, dword [ebp - 0x6c]
push eax
call sym.ollydbg.exe__Findmemory
pop ecx
test eax, eax
je 0x45093e
mov edx, dword [ebp - 0x6c]
push edx
call sym.ollydbg.exe__Findmodule
pop ecx
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0
je 0x450900
mov ecx, dword [ebp - 0x74]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ebp - 0x6c]
ja 0x450900
mov edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x74]
mov ecx, dword [edx + 0xc]
add ecx, dword [eax + 0x10]
cmp ecx, dword [ebp - 0x6c]
jbe 0x450900
cmp dword [ebp - 0x30], 0x1000
je 0x4508d4
cmp dword [ebp - 0x30], 0xa000
jne 0x4508eb
push str.Follow_DWORD_in_Disassembler
push 0xab
push 0
mov edx, dword [ebp - 0x80]
push edx
call sub.USER32.DLL_AppendMenuA
jmp 0x450900
push 0x4bad37
push 0xab
push 0
mov ecx, dword [ebp - 0x80]
push ecx
call sub.USER32.DLL_AppendMenuA
cmp dword [ebp - 0x30], 0x1000
je 0x450912
cmp dword [ebp - 0x30], 0xa000
jne 0x450929
push str.Follow_DWORD_in_Dump
push 0xac
push 0
mov eax, dword [ebp - 0x80]
push eax
call sub.USER32.DLL_AppendMenuA
jmp 0x45093e
push 0x4bad64
push 0xac
push 0
mov edx, dword [ebp - 0x80]
push edx
call sub.USER32.DLL_AppendMenuA
cmp dword [ebp - 0x70], 0
je 0x450983
push str.Find_references_tCtrlR
push 0xae
push 0
mov ecx, dword [ebp - 0x80]
push ecx
call sub.USER32.DLL_AppendMenuA
push 0x4bad8c
push 0xaf
push 0
mov eax, dword [ebp - 0x80]
push eax
call sub.USER32.DLL_AppendMenuA
push str.Copy_to_executable_file
push 0xb0
push 0
mov edx, dword [ebp - 0x80]
push edx
call sub.USER32.DLL_AppendMenuA
cmp dword [ebx + 0x3a1], 0
je 0x4509aa
cmp dword [ebx + 0x379], 0
je 0x4509aa
push str.Save_file
push 0xb1
push 0
mov ecx, dword [ebp - 0x80]
push ecx
call sub.USER32.DLL_AppendMenuA
cmp dword [ebp - 0x38], 0
jne 0x450fb7
cmp dword [ebx + 0x379], 0
jne 0x4509ca
cmp dword [ebx + 0x251], 0
je 0x450b07
test byte [ebx + 0x25d], 0x20
jne 0x450af2
cmp dword [ebx + 0x251], 0
je 0x450a9d
test byte [ebx + 0x25d], 0x10
je 0x450a9d
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0xa0], eax
test eax, eax
je 0x450a9d
push str.Expression_tCtrlG
push 0xb5
push 0
mov edx, dword [ebp - 0xa0]
push edx
call sub.USER32.DLL_AppendMenuA
cmp dword [0x4e9e98], 1
jle 0x450a84
push 0x4ba02e
push 0
push 0x800
mov ecx, dword [ebp - 0xa0]
push ecx
call sub.USER32.DLL_AppendMenuA
cmp dword [0x4e9e9c], 1
jle 0x450a5e
push 0x4badd6
push 0xb6
push 0
mov eax, dword [ebp - 0xa0]
push eax
call sub.USER32.DLL_AppendMenuA
mov edx, dword [0x4e9e9c]
cmp edx, dword [0x4e9e98]
jge 0x450a84
push 0x4bade5
push 0xb7
push 0
mov ecx, dword [ebp - 0xa0]
push ecx
call sub.USER32.DLL_AppendMenuA
push str.Go_to
mov eax, dword [ebp - 0xa0]
push eax
push 0x10
mov edx, dword [ebp - 0x80]
push edx
call sub.USER32.DLL_AppendMenuA
jmp 0x450af2
cmp dword [ebx + 0x251], 0
je 0x450abd
push str.Go_to_expression_tCtrlG
push 0xb5
push 0
mov ecx, dword [ebp - 0x80]
push ecx
call sub.USER32.DLL_AppendMenuA
jmp 0x450af2
cmp dword [ebx + 0x3a1], 0
jne 0x450add
push str.Go_to_address_tCtrlG
push 0xb5
push 0
mov eax, dword [ebp - 0x80]
push eax
call sub.USER32.DLL_AppendMenuA
jmp 0x450af2
push str.Go_to_offset_tCtrlG
push 0xb5
push 0
mov edx, dword [ebp - 0x80]
push edx
call sub.USER32.DLL_AppendMenuA
push 0x4ba02e
push 0
push 0x800
mov ecx, dword [ebp - 0x80]
push ecx
call sub.USER32.DLL_AppendMenuA
cmp dword [ebx + 0x379], 0
je 0x450c3b
cmp dword [ebx + 0x3a1], 0
je 0x450c3b
cmp dword [0x4d7200], 0
jle 0x450c3b
mov eax, dword [0x4d7218]
xor edi, edi
mov dword [ebp - 0x74], eax
jmp 0x450c2f
mov eax, dword [ebp - 0x74]
add eax, 0x50
push eax
lea edx, [ebx + 0x271]
push edx
call fcn.004a38bc
add esp, 8
test eax, eax
jne 0x450c27
mov ecx, dword [ebp - 0x74]
cmp dword [ecx + 0x158], 0
je 0x450c27
mov eax, dword [ebp - 0x74]
xor esi, esi
mov edx, dword [eax + 0x158]
mov dword [ebp - 0x7c], edx
jmp 0x450c16
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax + 0x14]
cmp eax, dword [ebx + 0x385]
ja 0x450c11
mov edx, eax
mov ecx, dword [ebp - 0x7c]
add edx, dword [ecx + 0x10]
cmp edx, dword [ebx + 0x389]
jb 0x450c11
mov edx, dword [ebp - 0x74]
mov ecx, dword [edx]
mov edx, dword [ebp - 0x7c]
add ecx, dword [edx + 0xc]
mov edx, dword [ebx + 0x385]
sub edx, eax
add ecx, edx
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x74]
mov eax, dword [eax + 0xc]
cmp eax, dword [ebp - 0x44]
ja 0x450be5
mov edx, dword [ebp - 0x74]
add eax, dword [edx + 0x10]
cmp eax, dword [ebp - 0x44]
jbe 0x450be5
push str.View_image_in_Disassembler
push 0xb8
push 0
mov ecx, dword [ebp - 0x80]
push ecx
call sub.USER32.DLL_AppendMenuA
jmp 0x450bfa
push str.View_image_in_CPU_Dump
push 0xb8
push 0
mov eax, dword [ebp - 0x80]
push eax
call sub.USER32.DLL_AppendMenuA
push 0x4ba02e
push 0
push 0x800
mov edx, dword [ebp - 0x80]
push edx
call sub.USER32.DLL_AppendMenuA
jmp 0x450c3b
inc esi
add dword [ebp - 0x7c], 0x28
mov ecx, dword [ebp - 0x74]
cmp esi, dword [ecx + 0x154]
jl 0x450b7e
jmp 0x450c3b
inc edi
add dword [ebp - 0x74], 0x465
cmp edi, dword [0x4d7200]
jl 0x450b3d
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0xa4], eax
test eax, eax
je 0x450cd7
push str.Hex_ASCII__16_bytes_
push 0x1101
mov edx, dword [ebp - 0xa4]
push edx
push ebx
call fcn.00446d78
add esp, 0x10
mov esi, eax
push str.Hex_ASCII__8_bytes_
push 0x1081
mov eax, dword [ebp - 0xa4]
push eax
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
push str.Hex_UNICODE__16_bytes_
push 0xa101
mov edx, dword [ebp - 0xa4]
push edx
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
push str.Hex_UNICODE__8_bytes_
push 0xa081
mov ecx, dword [ebp - 0xa4]
push ecx
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
or esi, 0x10
push 0x4baebe
mov eax, dword [ebp - 0xa4]
push eax
push esi
mov edx, dword [ebp - 0x80]
push edx
call sub.USER32.DLL_AppendMenuA
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0xa8], eax
test eax, eax
je 0x450d73
push str.ASCII__64_chars_
push 0x2401
mov edx, dword [ebp - 0xa8]
push edx
push ebx
call fcn.00446d78
add esp, 0x10
mov esi, eax
push str.ASCII__32_chars_
push 0x2201
mov eax, dword [ebp - 0xa8]
push eax
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
push str.UNICODE__64_chars_
push 0x3402
mov edx, dword [ebp - 0xa8]
push edx
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
push str.UNICODE__32_chars_
push 0x3202
mov ecx, dword [ebp - 0xa8]
push ecx
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
or esi, 0x10
push str.Text
mov eax, dword [ebp - 0xa8]
push eax
push esi
mov edx, dword [ebp - 0x80]
push edx
call sub.USER32.DLL_AppendMenuA
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0xac], eax
test eax, eax
je 0x450def
push str.Signed_decimal
push 0x4082
mov edx, dword [ebp - 0xac]
push edx
push ebx
call fcn.00446d78
add esp, 0x10
mov esi, eax
push str.Unsigned_decimal
push 0x5082
mov eax, dword [ebp - 0xac]
push eax
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
push 0x4baebe
push 0x6082
mov edx, dword [ebp - 0xac]
push edx
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
or esi, 0x10
push str.Short
mov ecx, dword [ebp - 0xac]
push ecx
push esi
mov eax, dword [ebp - 0x80]
push eax
call sub.USER32.DLL_AppendMenuA
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0xb0], eax
test eax, eax
je 0x450ec3
push str.Signed_decimal
push 0x4044
mov edx, dword [ebp - 0xb0]
push edx
push ebx
call fcn.00446d78
add esp, 0x10
mov esi, eax
push str.Unsigned_decimal
push 0x5044
mov eax, dword [ebp - 0xb0]
push eax
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
push 0x4baebe
push 0x6044
mov edx, dword [ebp - 0xb0]
push edx
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
push 0x4ba02f
push 0x8014
mov ecx, dword [ebp - 0xb0]
push ecx
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
push str.Address_with_ASCII_dump
push 0xb041
mov eax, dword [ebp - 0xb0]
push eax
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
push str.Address_with_UNICODE_dump
push 0xc041
mov edx, dword [ebp - 0xb0]
push edx
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
or esi, 0x10
push str.Long
mov ecx, dword [ebp - 0xb0]
push ecx
push esi
mov eax, dword [ebp - 0x80]
push eax
call sub.USER32.DLL_AppendMenuA
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0xb4], eax
test eax, eax
je 0x450f3f
push str.32_bit_float
push 0x7044
mov edx, dword [ebp - 0xb4]
push edx
push ebx
call fcn.00446d78
add esp, 0x10
mov esi, eax
push str.64_bit_double
push 0x7028
mov eax, dword [ebp - 0xb4]
push eax
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
push str.80_bit_long_double
push 0x701a
mov edx, dword [ebp - 0xb4]
push edx
push ebx
call fcn.00446d78
add esp, 0x10
or esi, eax
or esi, 0x10
push 0x4bacb9
mov ecx, dword [ebp - 0xb4]
push ecx
push esi
mov eax, dword [ebp - 0x80]
push eax
call sub.USER32.DLL_AppendMenuA
push str.Disassemble
push 0x9011
mov edx, dword [ebp - 0x80]
push edx
push ebx
call fcn.00446d78
add esp, 0x10
call sub.USER32.DLL_CreatePopupMenu
mov dword [ebp - 0xb8], eax
test eax, eax
je 0x450fb7
mov edx, dword [ebx + 0x255]
and edx, 0xffff
cmp edx, 0xd011
jne 0x450f80
mov esi, 8
jmp 0x450f82
xor esi, esi
mov eax, esi
push str.PE_header
or eax, 0
push 0xd001
push eax
mov edx, dword [ebp - 0xb8]
push edx
call sub.USER32.DLL_AppendMenuA
push str.Special
or esi, 0x10
mov ecx, dword [ebp - 0xb8]
push ecx
push esi
mov eax, dword [ebp - 0x80]
push eax
call sub.USER32.DLL_AppendMenuA
cmp dword [ebp - 0x38], 0
jne 0x450fe5
cmp dword [ebx + 0x379], 0
jbe 0x450fe5
push ebx
mov edx, 0xa
cmp dword [ebx + 0x251], 0
je 0x450fd8
add edx, 0x16
push edx
mov ecx, dword [ebp - 0x80]
push ecx
call fcn.004964e8
add esp, 0xc
mov eax, dword [ebp - 0x80]
push eax
push 0
push 0x465
mov edx, dword [ebp + 8]
push edx
push ebx
call sym.ollydbg.exe__Tablefunction
add esp, 0x14
mov edi, eax
call fcn.0049659c
cmp dword [ebp - 0x84], 0
je 0x451019
mov eax, dword [ebp - 0x84]
push eax
call sub.USER32.DLL_DestroyMenu
cmp dword [ebp - 0x88], 0
je 0x45102e
mov edx, dword [ebp - 0x88]
push edx
call sub.USER32.DLL_DestroyMenu
cmp dword [ebp - 0x8c], 0
je 0x451043
mov ecx, dword [ebp - 0x8c]
push ecx
call sub.USER32.DLL_DestroyMenu
cmp dword [ebp - 0x90], 0
je 0x451058
mov eax, dword [ebp - 0x90]
push eax
call sub.USER32.DLL_DestroyMenu
cmp dword [ebp - 0x94], 0
je 0x45106d
mov edx, dword [ebp - 0x94]
push edx
call sub.USER32.DLL_DestroyMenu
cmp dword [ebp - 0x98], 0
je 0x451082
mov ecx, dword [ebp - 0x98]
push ecx
call sub.USER32.DLL_DestroyMenu
cmp dword [ebp - 0x9c], 0
je 0x451097
mov eax, dword [ebp - 0x9c]
push eax
call sub.USER32.DLL_DestroyMenu
cmp dword [ebp - 0xa0], 0
je 0x4510ac
mov edx, dword [ebp - 0xa0]
push edx
call sub.USER32.DLL_DestroyMenu
cmp dword [ebp - 0xa4], 0
je 0x4510c1
mov ecx, dword [ebp - 0xa4]
push ecx
call sub.USER32.DLL_DestroyMenu
cmp dword [ebp - 0xa8], 0
je 0x4510d6
mov eax, dword [ebp - 0xa8]
push eax
call sub.USER32.DLL_DestroyMenu
cmp dword [ebp - 0xac], 0
je 0x4510eb
mov edx, dword [ebp - 0xac]
push edx
call sub.USER32.DLL_DestroyMenu
cmp dword [ebp - 0xb0], 0
je 0x451100
mov ecx, dword [ebp - 0xb0]
push ecx
call sub.USER32.DLL_DestroyMenu
cmp dword [ebp - 0xb4], 0
je 0x451115
mov eax, dword [ebp - 0xb4]
push eax
call sub.USER32.DLL_DestroyMenu
cmp dword [ebp - 0xb8], 0
je 0x45112a
mov edx, dword [ebp - 0xb8]
push edx
call sub.USER32.DLL_DestroyMenu
cmp dword [ebp + 0x14], 0
jne 0x451139
mov ecx, dword [ebp - 0x80]
push ecx
call sub.USER32.DLL_DestroyMenu
lea eax, [ebp - 0x10]
lea edx, [ebp - 0xc]
push eax
push edx
cmp dword [ebp - 0x30], 0x9000
mov ecx, 3
je 0x451150
dec ecx
push ecx
push ebx
call fcn.00447598
add esp, 0x10
cmp edi, 0x66
jne 0x45116f
push 3
push ebx
call sym.ollydbg.exe__Dumpbackup
add esp, 8
jmp 0x452c7c
cmp edi, 0x67
jne 0x451184
push 2
push ebx
call sym.ollydbg.exe__Dumpbackup
add esp, 8
jmp 0x452c7c
cmp edi, 0x68
jne 0x451199
push 1
push ebx
call sym.ollydbg.exe__Dumpbackup
add esp, 8
jmp 0x452c7c
cmp edi, 0x69
jne 0x4511ae
push 7
push ebx
call sym.ollydbg.exe__Dumpbackup
add esp, 8
jmp 0x452c7c
cmp edi, 0x6a
jne 0x4511c3
push 4
push ebx
call sym.ollydbg.exe__Dumpbackup
add esp, 8
jmp 0x452c7c
cmp edi, 0x6b
jne 0x4511d8
push 6
push ebx
call sym.ollydbg.exe__Dumpbackup
add esp, 8
jmp 0x452c7c
cmp edi, 0x6c
jne 0x4511ed
push 5
push ebx
call sym.ollydbg.exe__Dumpbackup
add esp, 8
jmp 0x452c7c
cmp edi, 0x6d
jne 0x45126d
cmp dword [ebx + 0x3a1], 0
je 0x45122f
mov eax, dword [ebp - 0x54]
sub eax, dword [ebp - 0x50]
push eax
mov edx, dword [ebx + 0x3a5]
add edx, dword [ebp - 0x50]
sub edx, dword [ebx + 0x375]
push edx
mov ecx, dword [ebx + 0x3a1]
add ecx, dword [ebp - 0x50]
sub ecx, dword [ebx + 0x375]
push ecx
call fcn.004a3530
add esp, 0xc
jmp 0x452c7c
push 5
mov eax, dword [ebp - 0x54]
sub eax, dword [ebp - 0x50]
push eax
mov edx, dword [ebp - 0x50]
push edx
mov ecx, dword [ebx + 0x3a5]
add ecx, dword [ebp - 0x50]
sub ecx, dword [ebx + 0x375]
push ecx
call sym.ollydbg.exe__Writememory
add esp, 0x10
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x6e
jne 0x45128c
mov eax, dword [ebp - 0x54]
push eax
mov edx, dword [ebp - 0x50]
push edx
push ebx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0044ae5c
add esp, 0x10
jmp 0x452c7c
cmp edi, 0x6f
jne 0x4512a7
mov eax, dword [ebp - 0x54]
push eax
mov edx, dword [ebp - 0x50]
push edx
push ebx
call fcn.0044aeb4
add esp, 0xc
jmp 0x452c7c
cmp edi, 0x70
jne 0x4512cf
mov ecx, dword [ebx + 0x375]
mov dword [ebx + 0x385], ecx
mov eax, dword [ebx + 0x375]
add eax, dword [ebx + 0x379]
mov dword [ebx + 0x389], eax
jmp 0x452c7c
cmp edi, 0x73
jne 0x4512f8
push 0
push ebx
call fcn.0044e35c
add esp, 8
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x74
je 0x451306
cmp edi, 0x75
jne 0x451411
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x44], edx
cmp dword [ebx + 0x3a1], 0
jne 0x451354
cmp dword [ebx + 0x251], 0
je 0x451354
mov ecx, dword [ebp - 0x44]
push ecx
call sym.ollydbg.exe__Findmemory
pop ecx
mov esi, eax
test esi, esi
je 0x451354
cmp dword [esi + 0x24], 0
jne 0x451354
mov eax, dword [esi]
cmp eax, dword [ebx + 0x375]
jne 0x451354
mov edx, dword [esi + 4]
cmp edx, dword [ebx + 0x379]
jne 0x451354
push 1
push ebx
call sym.ollydbg.exe__Dumpbackup
add esp, 8
cmp dword [ebx + 0x3a1], 0
je 0x45138e
mov ecx, dword [ebp - 0x54]
xor eax, eax
sub ecx, dword [ebp - 0x44]
cmp edi, 0x74
push ecx
je 0x451370
add eax, 0xff
push eax
mov edx, dword [ebx + 0x3a1]
add edx, dword [ebp - 0x44]
sub edx, dword [ebx + 0x375]
push edx
call fcn.004a35a0
add esp, 0xc
jmp 0x452c7c
push 0x1000
xor ecx, ecx
cmp edi, 0x74
je 0x4513a0
add ecx, 0xff
push ecx
lea eax, [ebp - 0x10c8]
push eax
call fcn.004a35a0
add esp, 0xc
mov edx, dword [ebp - 0x44]
cmp edx, dword [ebp - 0x54]
jae 0x4513f8
mov ecx, dword [ebp - 0x54]
sub ecx, dword [ebp - 0x44]
mov dword [ebp - 0x4c], ecx
cmp dword [ebp - 0x4c], 0x1000
jbe 0x4513d1
mov dword [ebp - 0x4c], 0x1000
push 5
mov eax, dword [ebp - 0x4c]
push eax
mov edx, dword [ebp - 0x44]
push edx
lea ecx, [ebp - 0x10c8]
push ecx
call sym.ollydbg.exe__Writememory
add esp, 0x10
mov eax, dword [ebp - 0x4c]
add dword [ebp - 0x44], eax
mov edx, dword [ebp - 0x44]
cmp edx, dword [ebp - 0x54]
jb 0x4513b8
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x76
jne 0x4514af
push edi
lea edi, [ebp - 0x1f10]
mov esi, ebx
mov ecx, 0xf3
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop edi
xor edx, edx
mov dword [ebp - 0x1cbb], 0x1201
mov eax, dword [ebp - 0x1b8b]
mov dword [ebp - 0x1b93], eax
mov dword [ebp - 0x1dcc], edx
mov ecx, dword [ebp - 0x1cd7]
mov eax, dword [ecx*4 + 0x4d48f4]
shl eax, 5
xor edx, edx
lea eax, [eax + eax*2]
mov dword [ebp - 0x1dc8], eax
mov dword [ebp - 0x1dc4], edx
mov dword [ebp - 0x1dd4], 3
mov ecx, dword [ebp - 0x1b87]
lea edx, [ebp - 0x1f10]
push ecx
mov eax, dword [ebp - 0x1b8b]
push eax
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0044ae5c
add esp, 0x10
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x77
jne 0x4516d6
mov eax, dword [ebp + 8]
push eax
call sub.USER32.DLL_OpenClipboard
push 1
call sub.USER32.DLL_GetClipboardData
mov dword [ebp - 0xc0], eax
cmp dword [ebp - 0xc0], 0
je 0x4516cc
mov edx, dword [ebp - 0xc0]
push edx
call sub.KERNEL32.DLL_GlobalLock
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0
je 0x4516c0
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x54]
sub eax, dword [ebp - 0x50]
mov dword [ebp - 0x4c], eax
cmp dword [ebx + 0x3a1], 0
jne 0x4516ae
cmp dword [ebx + 0x251], 0
je 0x4516ae
mov edx, dword [ebp - 0x44]
push edx
call sym.ollydbg.exe__Findmemory
pop ecx
mov esi, eax
test esi, esi
je 0x4516ae
cmp dword [esi + 0x24], 0
jne 0x4516ae
mov eax, dword [esi]
cmp eax, dword [ebx + 0x375]
jne 0x4516ae
mov edx, dword [esi + 4]
cmp edx, dword [ebx + 0x379]
jne 0x4516ae
push 1
push ebx
call sym.ollydbg.exe__Dumpbackup
add esp, 8
jmp 0x4516ae
xor ecx, ecx
mov dword [ebp - 8], ecx
jmp 0x451628
mov eax, dword [ebp - 0x60]
movzx esi, byte [eax]
inc dword [ebp - 0x60]
push esi
call fcn.004a98c8
pop ecx
mov esi, eax
push esi
call fcn.004a7bbc
pop ecx
test eax, eax
je 0x45159e
mov edi, esi
shl edi, 4
add edi, 0xfffffd00
jmp 0x4515be
push esi
call fcn.004a7c50
pop ecx
test eax, eax
je 0x4515b6
mov edi, esi
shl edi, 4
add edi, 0xfffffc90
jmp 0x4515be
mov eax, dword [ebp - 0x60]
cmp byte [eax], 0
jne 0x451574
mov edx, dword [ebp - 8]
lea ecx, [ebp + edx - 0x10c8]
mov dword [ebp - 0xc4], ecx
jmp 0x451620
mov eax, dword [ebp - 0x60]
movzx esi, byte [eax]
inc dword [ebp - 0x60]
push esi
call fcn.004a98c8
pop ecx
mov esi, eax
push esi
call fcn.004a7bbc
pop ecx
test eax, eax
je 0x451601
add esi, 0xffffffd0
mov edx, dword [ebp - 0xc4]
add edi, esi
mov eax, edi
mov byte [edx], al
inc dword [ebp - 8]
jmp 0x451628
push esi
call fcn.004a7c50
pop ecx
test eax, eax
je 0x451620
add esi, 0xffffffc9
mov edx, dword [ebp - 0xc4]
add edi, esi
mov eax, edi
mov byte [edx], al
inc dword [ebp - 8]
jmp 0x451628
mov ecx, dword [ebp - 0x60]
cmp byte [ecx], 0
jne 0x4515d0
cmp dword [ebp - 8], 0x1000
jge 0x45163d
mov eax, dword [ebp - 0x60]
cmp byte [eax], 0
jne 0x4515b6
mov edx, dword [ebp - 8]
cmp edx, dword [ebp - 0x4c]
jbe 0x45164b
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 8], ecx
cmp dword [ebx + 0x3a1], 0
je 0x451679
mov eax, dword [ebp - 8]
lea edx, [ebp - 0x10c8]
push eax
push edx
mov ecx, dword [ebx + 0x3a1]
add ecx, dword [ebp - 0x44]
sub ecx, dword [ebx + 0x375]
push ecx
call fcn.004a3530
add esp, 0xc
jmp 0x4516a2
push 5
mov eax, dword [ebp - 8]
push eax
mov edx, dword [ebp - 0x44]
push edx
lea ecx, [ebp - 0x10c8]
push ecx
call sym.ollydbg.exe__Writememory
add esp, 0x10
test byte [ebx + 0x25d], 0x10
je 0x4516a2
push ebx
call fcn.0044e54c
pop ecx
mov eax, dword [ebp - 8]
add dword [ebp - 0x44], eax
mov edx, dword [ebp - 8]
sub dword [ebp - 0x4c], edx
cmp dword [ebp - 0x4c], 0
jbe 0x4516c0
mov ecx, dword [ebp - 0x60]
cmp byte [ecx], 0
jne 0x451568
mov eax, dword [ebp - 0xc0]
push eax
call sub.KERNEL32.DLL_GlobalUnlock
call sub.USER32.DLL_CloseClipboard
jmp 0x452c7c
cmp edi, 0x78
jne 0x45178a
push edi
lea edi, [ebp - 0x22e0]
mov esi, ebx
mov ecx, 0xf3
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop edi
xor edx, edx
mov dword [ebp - 0x208b], 0x1201
mov eax, dword [ebp - 0x1f5b]
mov esi, dword [0x4e2750]
mov dword [ebp - 0x1f63], eax
mov dword [ebp - 0x219c], edx
mov ecx, dword [ebp - 0x20a7]
mov eax, dword [ecx*4 + 0x4d48f4]
lea ecx, [ebp - 0x22e0]
shl eax, 5
xor edx, edx
mov dword [0x4e2750], 2
lea eax, [eax + eax*2]
mov dword [ebp - 0x2198], eax
mov dword [ebp - 0x2194], edx
mov dword [ebp - 0x21a4], 3
mov eax, dword [ebp - 0x1f57]
push eax
mov edx, dword [ebp - 0x1f5b]
push edx
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.0044ae5c
add esp, 0x10
mov dword [0x4e2750], esi
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x79
jne 0x4518aa
mov edx, dword [ebp - 0x50]
lea ecx, [ebp - 0x10c8]
push edx
push str.Modify_data_at__08X
push ecx
call fcn.004a6c2c
add esp, 0xc
cmp dword [ebp - 0x30], 0x7000
jne 0x4517db
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x6c]
mov edx, dword [ebp - 0xc]
push edx
push 0
push 0
lea edx, [ebp - 0x10c8]
mov ecx, dword [ebp - 0x34]
push ecx
push eax
push edx
call sym.ollydbg.exe__Getfloatxy
add esp, 0x1c
mov esi, eax
jmp 0x451800
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x6c]
mov edx, dword [ebp - 0xc]
push edx
push 0
push 0
lea edx, [ebp - 0x10c8]
mov ecx, dword [ebp - 0x34]
push ecx
push eax
push edx
call sym.ollydbg.exe__Getlongxy
add esp, 0x1c
mov esi, eax
test esi, esi
je 0x45180b
xor eax, eax
jmp 0x453148
cmp dword [ebx + 0x3a1], 0
jne 0x451853
cmp dword [ebx + 0x251], 0
je 0x451853
mov edx, dword [ebp - 0x50]
push edx
call sym.ollydbg.exe__Findmemory
pop ecx
mov esi, eax
test esi, esi
je 0x451853
cmp dword [esi + 0x24], 0
jne 0x451853
mov eax, dword [esi]
cmp eax, dword [ebx + 0x375]
jne 0x451853
mov edx, dword [esi + 4]
cmp edx, dword [ebx + 0x379]
jne 0x451853
push 1
push ebx
call sym.ollydbg.exe__Dumpbackup
add esp, 8
cmp dword [ebx + 0x3a1], 0
je 0x45187b
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x6c]
push ecx
push eax
mov edx, dword [ebx + 0x3a1]
add edx, dword [ebp - 0x50]
push edx
call fcn.004a3530
add esp, 0xc
jmp 0x452c7c
push 5
mov ecx, dword [ebp - 0x34]
push ecx
mov eax, dword [ebp - 0x50]
push eax
lea edx, [ebp - 0x6c]
push edx
call sym.ollydbg.exe__Writememory
add esp, 0x10
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x7a
jne 0x451923
cmp dword [ebx + 0x3a1], 0
jne 0x4518f7
cmp dword [ebx + 0x251], 0
je 0x4518f7
mov ecx, dword [ebp - 0x50]
push ecx
call sym.ollydbg.exe__Findmemory
pop ecx
mov esi, eax
test esi, esi
je 0x4518f7
cmp dword [esi + 0x24], 0
jne 0x4518f7
mov eax, dword [esi]
cmp eax, dword [ebx + 0x375]
jne 0x4518f7
mov edx, dword [esi + 4]
cmp edx, dword [ebx + 0x379]
jne 0x4518f7
push 1
push ebx
call sym.ollydbg.exe__Dumpbackup
add esp, 8
mov ecx, dword [ebp - 0x10]
push ecx
mov eax, dword [ebp - 0xc]
push eax
push 0
push ebx
call fcn.0043e5f4
add esp, 0x10
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x7c
jne 0x451b68
cmp dword [ebp - 0x153c], 1
jne 0x45193e
mov dword [ebp - 0x4c], 1
jmp 0x45196a
cmp dword [ebp - 0x153c], 2
jne 0x451950
mov dword [ebp - 0x4c], 2
jmp 0x45196a
cmp dword [ebp - 0x153c], 4
je 0x451963
cmp dword [ebp - 0x14], 5
jne case.0x44e6fa.1136
mov dword [ebp - 0x4c], 4
push 0xa
push 0
lea edx, [ebp - 0x6c]
push edx
call fcn.004a35a0
add esp, 0xc
cmp dword [ebx + 0x3a1], 0
je 0x4519ce
mov ecx, dword [ebx + 0x375]
cmp ecx, dword [ebp - 0x50]
ja case.0x44e6fa.1136
mov eax, dword [ebp - 0x50]
mov edx, dword [ebx + 0x375]
add edx, dword [ebx + 0x379]
add eax, dword [ebp - 0x4c]
cmp eax, edx
ja case.0x44e6fa.1136
mov ecx, dword [ebp - 0x4c]
push ecx
mov eax, dword [ebx + 0x3a1]
add eax, dword [ebp - 0x50]
sub eax, dword [ebx + 0x375]
push eax
lea edx, [ebp - 0x6c]
push edx
call fcn.004a3530
add esp, 0xc
jmp 0x4519ed
push 1
mov ecx, dword [ebp - 0x4c]
push ecx
mov eax, dword [ebp - 0x50]
push eax
lea edx, [ebp - 0x6c]
push edx
call sym.ollydbg.exe__Readmemory
add esp, 0x10
cmp eax, dword [ebp - 0x4c]
jne case.0x44e6fa.1136
cmp dword [ebp - 0x153c], 1
je 0x451a08
cmp dword [ebp - 0x153c], 2
je 0x451a08
cmp dword [ebp - 0x153c], 4
jne 0x451a6d
mov ecx, dword [ebp - 0x50]
push ecx
cmp dword [ebp - 0x153c], 1
jne 0x451a1c
mov eax, 0x4babb3
jmp 0x451a31
cmp dword [ebp - 0x153c], 2
jne 0x451a2c
mov eax, 0x4bac56
jmp 0x451a31
mov eax, 0x4bafb0
push eax
push str.Modify__s_at__08X
lea edx, [ebp - 0x10c8]
push edx
call fcn.004a6c2c
add esp, 0x10
mov ecx, dword [ebp - 0x10]
push ecx
lea ecx, [ebp - 0x6c]
mov eax, dword [ebp - 0xc]
push eax
push 0
push 0
lea eax, [ebp - 0x10c8]
mov edx, dword [ebp - 0x4c]
push edx
push ecx
push eax
call sym.ollydbg.exe__Getlongxy
add esp, 0x1c
mov esi, eax
jmp 0x451ab8
cmp dword [ebp - 0x153c], 5
jne 0x451ab5
mov eax, dword [ebp - 0x50]
lea edx, [ebp - 0x10c8]
push eax
push str.Modify_float_at__08X
push edx
call fcn.004a6c2c
add esp, 0xc
mov ecx, dword [ebp - 0x10]
push ecx
lea ecx, [ebp - 0x6c]
mov eax, dword [ebp - 0xc]
push eax
push 0
push 0
lea eax, [ebp - 0x10c8]
mov edx, dword [ebp - 0x4c]
push edx
push ecx
push eax
call sym.ollydbg.exe__Getfloatxy
add esp, 0x1c
mov esi, eax
jmp 0x451ab8
or esi, 0xffffffff
test esi, esi
je 0x451ac3
xor eax, eax
jmp 0x453148
cmp dword [ebx + 0x3a1], 0
jne 0x451b0b
cmp dword [ebx + 0x251], 0
je 0x451b0b
mov edx, dword [ebp - 0x50]
push edx
call sym.ollydbg.exe__Findmemory
pop ecx
mov esi, eax
test esi, esi
je 0x451b0b
cmp dword [esi + 0x24], 0
jne 0x451b0b
mov eax, dword [esi]
cmp eax, dword [ebx + 0x375]
jne 0x451b0b
mov edx, dword [esi + 4]
cmp edx, dword [ebx + 0x379]
jne 0x451b0b
push 1
push ebx
call sym.ollydbg.exe__Dumpbackup
add esp, 8
cmp dword [ebx + 0x3a1], 0
je 0x451b39
mov ecx, dword [ebp - 0x4c]
lea eax, [ebp - 0x6c]
push ecx
push eax
mov edx, dword [ebx + 0x3a1]
add edx, dword [ebp - 0x50]
sub edx, dword [ebx + 0x375]
push edx
call fcn.004a3530
add esp, 0xc
jmp 0x452c7c
push 5
mov ecx, dword [ebp - 0x4c]
push ecx
mov eax, dword [ebp - 0x50]
push eax
lea edx, [ebp - 0x6c]
push edx
call sym.ollydbg.exe__Writememory
add esp, 0x10
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x7d
jne 0x451c29
lea ecx, [ebp - 0x10c8]
push ecx
push 0x31
mov eax, dword [ebp - 0x50]
push eax
call sym.ollydbg.exe__Findname
add esp, 0xc
mov edx, dword [ebp - 0x50]
push edx
cmp byte [ebp - 0x10c8], 0
jne 0x451b9a
mov ecx, 0x4bafdc
jmp 0x451b9f
mov ecx, 0x4bafe0
push ecx
push str._s_label_at__08X
lea eax, [ebp - 0x11c8]
push eax
call fcn.004a6c2c
add esp, 0x10
mov edx, dword [ebp - 0x10]
lea ecx, [ebp - 0x10c8]
push edx
mov eax, dword [ebp - 0xc]
push eax
lea eax, [ebp - 0x11c8]
mov edx, dword [ebx + 0x239]
push edx
push 0x71
push 0
push ecx
push eax
call sym.ollydbg.exe__Gettextxy
add esp, 0x1c
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jl 0x452c7c
lea edx, [ebp - 0x10c8]
push edx
push 0x31
mov ecx, dword [ebp - 0x50]
push ecx
call sym.ollydbg.exe__Insertname
add esp, 0xc
push 0
push 0
push 0x474
call sym.ollydbg.exe__Broadcast
add esp, 0xc
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x7e
jne 0x451c5c
mov eax, dword [ebp - 0x54]
sub eax, dword [ebp - 0x50]
push eax
mov edx, dword [ebp - 0x50]
push edx
push 3
call sym.ollydbg.exe__Setmembreakpoint
add esp, 0xc
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x7f
jne 0x451c8f
mov ecx, dword [ebp - 0x54]
sub ecx, dword [ebp - 0x50]
push ecx
mov eax, dword [ebp - 0x50]
push eax
push 2
call sym.ollydbg.exe__Setmembreakpoint
add esp, 0xc
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x80
jne 0x451caa
push 0
push 0
push 0
call sym.ollydbg.exe__Setmembreakpoint
add esp, 0xc
jmp 0x452c7c
cmp edi, 0x83
jne 0x451cdb
push 2
push 1
mov edx, dword [ebp - 0x50]
push edx
call sym.ollydbg.exe__Sethardwarebreakpoint
add esp, 0xc
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x84
jne 0x451d0c
push 3
push 1
mov ecx, dword [ebp - 0x50]
push ecx
call sym.ollydbg.exe__Sethardwarebreakpoint
add esp, 0xc
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x85
jne 0x451d3d
push 2
push 2
mov eax, dword [ebp - 0x50]
push eax
call sym.ollydbg.exe__Sethardwarebreakpoint
add esp, 0xc
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x86
jne 0x451d6e
push 3
push 2
mov edx, dword [ebp - 0x50]
push edx
call sym.ollydbg.exe__Sethardwarebreakpoint
add esp, 0xc
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x87
jne 0x451d9f
push 2
push 4
mov ecx, dword [ebp - 0x50]
push ecx
call sym.ollydbg.exe__Sethardwarebreakpoint
add esp, 0xc
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x88
jne 0x451dd0
push 3
push 4
mov eax, dword [ebp - 0x50]
push eax
call sym.ollydbg.exe__Sethardwarebreakpoint
add esp, 0xc
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0x8a
jne 0x451e01
push 1
push 1
mov edx, dword [ebp - 0x50]
push edx
call sym.ollydbg.exe__Sethardwarebreakpoint
add esp, 0xc
test byte [ebx + 0x25d], 0x10
je 0x452c7c
push ebx
call fcn.0044e54c
pop ecx
jmp 0x452c7c
cmp edi, 0xa1
jne 0x451e1d
push 0
push 7
push ebx
call fcn.0044d9e0
add esp, 0xc
xor edi, edi
jmp 0x452c7c
cmp edi, 0xa2
jne 0x451e4e
cmp dword [ebp - 0x34], 2
jne 0x451e3a
push 0
push 2
push ebx
call fcn.0044d9e0
add esp, 0xc
jmp 0x451e47
push 0
push 3
push ebx
call fcn.0044d9e0
add esp, 0xc
xor edi, edi
jmp 0x452c7c
cmp edi, 0xa3
jne 0x451e94
cmp dword [ebp - 0x34], 4
jne 0x451e6b
push 0
push 4
push ebx
call fcn.0044d9e0
add esp, 0xc
jmp 0x451e8d
cmp dword [ebp - 0x34], 8
jne 0x451e80
push 0
push 5
push ebx
call fcn.0044d9e0
add esp, 0xc
jmp 0x451e8d
push 0
push 6
push ebx
call fcn.0044d9e0
add esp, 0xc
xor edi, edi
jmp 0x452c7c
cmp edi, 0xa4
jne 0x451eb0
push 0
push 3
push ebx
call fcn.0044d9e0
add esp, 0xc
xor edi, edi
jmp 0x452c7c
cmp edi, 0xa5
jne 0x451ecc
push 0
push 1
push ebx
call fcn.0044d9e0
add esp, 0xc
xor edi, edi
jmp 0x452c7c
cmp edi, 0xa6
jne 0x451ee8
push 0
push 9
push ebx
call fcn.0044d9e0
add esp, 0xc
xor edi, edi
jmp 0x452c7c
cmp edi, 0xa7
jne 0x451f04
push 0
push 0
push ebx
call fcn.0044d9e0
add esp, 0xc
xor edi, edi
jmp 0x452c7c
cmp edi, 0xa8
jne 0x451f1b
mov eax, dword [ebp - 0x70]
push eax
call fcn.00466efc
pop ecx
jmp 0x452c7c
cmp edi, 0xab
jne 0x451f3c
push 5
push 0
push 0
mov edx, dword [ebp - 0x6c]
push edx
push 0
call sym.ollydbg.exe__Setcpu
add esp, 0x14
jmp 0x452c7c
cmp edi, 0xac
jne 0x451f5d
push 0x30
push 0
mov ecx, dword [ebp - 0x6c]
push ecx
push 0
push 0
call sym.ollydbg.exe__Setcpu
add esp, 0x14
jmp 0x452c7c
cmp edi, 0xae
jne 0x45201a
cmp dword [ebp - 0x70], 0
je 0x451f8c
cmp dword [0x4de818], 0
jne 0x451f8c
mov eax, dword [ebp - 0x70]
mov edx, dword [eax + 0xc]
mov dword [ebp - 0x44], edx
mov ecx, dword [ebp - 0x70]
mov eax, dword [ecx + 0x10]
mov dword [ebp - 0x4c], eax
jmp 0x451f9c
lea edx, [ebp - 0x4c]
push edx
lea ecx, [ebp - 0x44]
push ecx
call sym.ollydbg.exe__Getdisassemblerrange
add esp, 8
push 0x4baa79
lea eax, [ebp - 0x10c8]
push eax
call fcn.004a6c2c
add esp, 8
mov dword [ebp - 8], eax
lea edx, [ebp - 0x10c8]
add edx, dword [ebp - 8]
push edx
mov ecx, dword [ebp - 0x4c]
push ecx
mov eax, dword [ebp - 0x44]
push eax
call sym.ollydbg.exe__Decoderange
add dword [ebp - 8], eax
add esp, 0xc
mov edx, dword [ebp - 0x54]
lea eax, [ebp - 0x10c8]
dec edx
push edx
mov ecx, dword [ebp - 0x50]
push ecx
push str._to__08lX.._08lX
add eax, dword [ebp - 8]
push eax
call fcn.004a6c2c
add esp, 0x10
lea edx, [ebp - 0x10c8]
push edx
push 0
push 0
mov ecx, dword [ebp - 0x54]
push ecx
mov eax, dword [ebp - 0x50]
push eax
mov edx, dword [ebp - 0x4c]
push edx
mov ecx, dword [ebp - 0x44]
push ecx
call sym.ollydbg.exe__Findreferences
add esp, 0x1c
xor eax, eax
jmp 0x453148
cmp edi, 0xaf
jne 0x452106
mov edx, dword [ebx + 0x255]
mov dword [ebp - 0x11e0], edx
mov ecx, dword [ebp - 0x50]
push ecx
mov eax, dword [ebp - 0x70]
push eax
call sym.ollydbg.exe__Findfileoffset
mov dword [ebp - 0x11d8], eax
mov dword [ebp - 0x11dc], eax
add esp, 8
mov edx, dword [ebp - 0x54]
dec edx
push edx
mov ecx, dword [ebp - 0x70]
push ecx
call sym.ollydbg.exe__Findfileoffset
add esp, 8
mov dword [ebp - 0x11d4], eax
cmp dword [ebp - 0x11d4], 0
je 0x452074
inc dword [ebp - 0x11d4]
mov eax, dword [ebp - 0x11d4]
cmp eax, dword [ebp - 0x11d8]
ja 0x452090
xor edx, edx
mov dword [ebp - 0x11d4], edx
mov dword [ebp - 0x11d8], edx
mov eax, dword [ebp - 0x70]
lea ecx, [ebp - 0x11e0]
add eax, 0x50
push eax
push ecx
push 0x472
call sym.ollydbg.exe__Broadcast
add esp, 0xc
cmp eax, 0x1234
je 0x4520ff
mov eax, dword [ebx + 0x259]
push eax
mov edx, dword [ebx + 0x255]
push edx
mov ecx, dword [ebp - 0x11dc]
push ecx
push 0
push 0
mov eax, dword [ebp - 0x70]
add eax, 0x50
push eax
call sym.ollydbg.exe__Createdumpwindow
add esp, 0x18
mov dword [ebp - 0xbc], eax
mov edx, dword [ebp - 0x70]
add edx, 0x50
push edx
lea ecx, [ebp - 0x11e0]
push ecx
push 0x472
mov eax, dword [ebp - 0xbc]
push eax
call sub.USER32.DLL_SendMessageA
xor eax, eax
jmp 0x453148
cmp edi, 0xb0
jne 0x4525f4
mov edx, dword [ebx + 0x255]
mov dword [ebp - 0x11e0], edx
mov ecx, dword [ebp - 0x50]
push ecx
mov eax, dword [ebp - 0x70]
push eax
call sym.ollydbg.exe__Findfileoffset
mov dword [ebp - 0x11d8], eax
mov dword [ebp - 0x11dc], eax
add esp, 8
mov edx, dword [ebp - 0x54]
dec edx
push edx
mov ecx, dword [ebp - 0x70]
push ecx
call sym.ollydbg.exe__Findfileoffset
add esp, 8
mov dword [ebp - 0x11d4], eax
cmp dword [ebp - 0x11d4], 0
je 0x452160
inc dword [ebp - 0x11d4]
mov eax, dword [ebp - 0x11d4]
mov edx, dword [ebp - 0x54]
sub edx, dword [ebp - 0x50]
sub eax, dword [ebp - 0x11d8]
cmp eax, edx
je 0x452188
push str.Unable_to_locate_data_in_executable_file
call sym.ollydbg.exe__Error
pop ecx
xor eax, eax
jmp 0x453148
xor edx, edx
lea eax, [ebp - 0x11e0]
mov dword [ebp - 0x11d0], edx
mov ecx, dword [ebp - 0x70]
add ecx, 0x50
push ecx
push eax
push 0x472
call sym.ollydbg.exe__Broadcast
add esp, 0xc
cmp eax, 0x1234
je 0x4521ff
mov edx, dword [ebx + 0x259]
push edx
mov ecx, dword [ebx + 0x255]
push ecx
mov eax, dword [ebp - 0x11dc]
push eax
push 0
push 0
mov edx, dword [ebp - 0x70]
add edx, 0x50
push edx
call sym.ollydbg.exe__Createdumpwindow
add esp, 0x18
mov dword [ebp - 0xbc], eax
mov ecx, dword [ebp - 0x70]
add ecx, 0x50
push ecx
lea eax, [ebp - 0x11e0]
push eax
push 0x472
mov edx, dword [ebp - 0xbc]
push edx
call sub.USER32.DLL_SendMessageA
cmp dword [ebp - 0x11d0], 0
je 0x452216
mov ecx, dword [ebp - 0x11d4]
cmp ecx, dword [ebp - 0x11cc]
jbe 0x452228
push str.Unable_to_locate_data_in_executable_file
call sym.ollydbg.exe__Error
pop ecx
xor eax, eax
jmp 0x453148
mov edx, dword [ebp - 0x54]
sub edx, dword [ebp - 0x50]
mov dword [ebp - 0x4c], edx
mov ecx, dword [ebp - 0x4c]
push ecx
push 0
call sub.KERNEL32.DLL_GlobalAlloc
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0
jne 0x45225d
mov eax, dword [ebp - 0x4c]
push eax
push 0x4ba3b8
call sym.ollydbg.exe__Error
add esp, 8
xor eax, eax
jmp 0x453148
push 1
mov edx, dword [ebp - 0x4c]
push edx
mov ecx, dword [ebp - 0x50]
push ecx
mov eax, dword [ebp - 0x60]
push eax
call sym.ollydbg.exe__Readmemory
add esp, 0x10
cmp eax, dword [ebp - 0x4c]
jne 0x4525e6
xor edx, edx
mov dword [ebp - 0x40], edx
mov ecx, dword [ebp - 0x50]
push ecx
mov eax, dword [ebp - 0x70]
push eax
call sym.ollydbg.exe__Findfixup
add esp, 8
mov esi, eax
test esi, esi
je 0x4525a2
jmp 0x452469
cmp dword [esi + 4], 4
je 0x4522b2
mov dword [ebp - 0x40], 1
jmp 0x452466
mov eax, dword [esi]
cmp eax, dword [ebp - 0x50]
jae 0x452353
xor edx, edx
mov dword [ebp - 0x44], edx
mov ecx, dword [ebp - 0x50]
sub ecx, dword [esi]
mov eax, 4
sub eax, ecx
push eax
mov edx, dword [ebp - 0x60]
push edx
lea ecx, [ebp - 0x44]
add ecx, dword [ebp - 0x50]
sub ecx, dword [esi]
push ecx
call fcn.004a3530
add esp, 0xc
xor eax, eax
mov dword [ebp - 0x58], eax
mov edx, dword [ebp - 0x50]
sub edx, dword [esi]
mov ecx, 4
sub ecx, edx
push ecx
mov eax, dword [ebp - 0x11d0]
add eax, dword [ebp - 0x11d8]
push eax
lea edx, [ebp - 0x58]
add edx, dword [ebp - 0x50]
sub edx, dword [esi]
push edx
call fcn.004a3530
add esp, 0xc
mov ecx, dword [ebp - 0x50]
sub ecx, dword [esi]
shl ecx, 3
or eax, 0xffffffff
shl eax, cl
mov dword [ebp - 0x5c], eax
mov edx, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x44]
sub ecx, dword [edx]
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x58]
sub edx, dword [eax + 0x160]
xor ecx, edx
and ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x44], ecx
cmp dword [ebp - 0x44], 0
je 0x452466
or dword [ebp - 0x40], 2
jmp 0x452466
mov ecx, dword [esi]
add ecx, 4
cmp ecx, dword [ebp - 0x54]
jbe 0x4523eb
xor eax, eax
mov dword [ebp - 0x44], eax
mov edx, dword [ebp - 0x54]
sub edx, dword [esi]
push edx
mov ecx, dword [esi]
add ecx, dword [ebp - 0x60]
sub ecx, dword [ebp - 0x50]
push ecx
lea eax, [ebp - 0x44]
push eax
call fcn.004a3530
add esp, 0xc
xor edx, edx
mov dword [ebp - 0x58], edx
mov ecx, dword [ebp - 0x54]
sub ecx, dword [esi]
push ecx
mov eax, dword [ebp - 0x11d0]
add eax, dword [ebp - 0x11d8]
add eax, dword [esi]
sub eax, dword [ebp - 0x50]
push eax
lea edx, [ebp - 0x58]
push edx
call fcn.004a3530
add esp, 0xc
mov ecx, 4
sub ecx, dword [ebp - 0x54]
add ecx, dword [esi]
shl ecx, 3
or eax, 0xffffffff
shr eax, cl
mov dword [ebp - 0x5c], eax
mov edx, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x44]
sub ecx, dword [edx]
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x58]
sub edx, dword [eax + 0x160]
xor ecx, edx
and ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x44], ecx
cmp dword [ebp - 0x44], 0
je 0x452466
or dword [ebp - 0x40], 2
jmp 0x452466
push 4
mov ecx, dword [esi]
add ecx, dword [ebp - 0x60]
sub ecx, dword [ebp - 0x50]
push ecx
lea eax, [ebp - 0x44]
push eax
call fcn.004a3530
add esp, 0xc
push 4
mov edx, dword [ebp - 0x11d0]
add edx, dword [ebp - 0x11d8]
add edx, dword [esi]
sub edx, dword [ebp - 0x50]
push edx
lea ecx, [ebp - 0x58]
push ecx
call fcn.004a3530
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x70]
add esp, 0xc
sub edx, dword [eax]
mov eax, dword [ebp - 0x58]
sub eax, dword [ecx + 0x160]
cmp edx, eax
je 0x452466
mov edx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x70]
mov ecx, dword [edx]
lea edx, [ebp - 0x44]
sub ecx, dword [eax + 0x160]
sub dword [ebp - 0x44], ecx
push 4
push edx
mov ecx, dword [esi]
add ecx, dword [ebp - 0x60]
sub ecx, dword [ebp - 0x50]
push ecx
call fcn.004a3530
add esp, 0xc
or dword [ebp - 0x40], 1
add esi, 8
cmp dword [esi], 0
je 0x452479
mov eax, dword [esi]
cmp eax, dword [ebp - 0x54]
jb 0x4522a0
test byte [ebp - 0x40], 2
je 0x4524a6
push 0x2010
push str.Unable_to_update_fixups
push str.Some_modified_fixups_are_only_partialy_selected._OllyDbg_is_unable_to_update_such_fixups.
mov edx, dword [0x4d3b7c]
push edx
call sub.USER32.DLL_MessageBoxA
mov dword [ebp - 0x40], 2
jmp 0x4525a2
cmp dword [ebp - 0x40], 0
je 0x4525a2
mov dword [ebp - 4], 0x100
push str.Selection_contains_modified_fixups.
lea ecx, [ebp - 0x10c8]
push ecx
call fcn.004a6c2c
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 0x70], 0
je 0x452512
mov eax, dword [ebp - 0x70]
mov edx, dword [eax]
cmp edx, dword [0x4d7364]
jne 0x452512
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x70]
mov eax, dword [ecx]
cmp eax, dword [edx + 0x160]
jne 0x452512
push str.It_is_hardly_possible_that_main_program_module_will_be_loaded_on_different_base_addres._In_this_case__however_
lea ecx, [ebp - 0x10c8]
add ecx, dword [ebp - 8]
push ecx
call fcn.004a6c2c
add esp, 8
add dword [ebp - 8], eax
xor eax, eax
mov dword [ebp - 4], eax
jmp 0x45255e
cmp dword [ebp - 0x70], 0
je 0x452544
mov edx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x70]
mov ecx, dword [edx]
cmp ecx, dword [eax + 0x160]
je 0x452544
push str.When_loading_this_DLL_
lea edx, [ebp - 0x10c8]
add edx, dword [ebp - 8]
push edx
call fcn.004a6c2c
add esp, 8
add dword [ebp - 8], eax
jmp 0x45255e
push str.When_DLL_will_be_loaded_on_different_base_address_
lea ecx, [ebp - 0x10c8]
add ecx, dword [ebp - 8]
push ecx
call fcn.004a6c2c
add esp, 8
add dword [ebp - 8], eax
push str.OS_will_adjust_fixups__thus_modifying_your_code._Were_you_not_carefull_enough__this_may_have_disastrous_effects_on_the_debugged_program._Do_you_still_want_to_update_executable_file_
lea eax, [ebp - 0x10c8]
add eax, dword [ebp - 8]
push eax
call fcn.004a6c2c
add esp, 8
mov edx, dword [ebp - 4]
or edx, 0x2024
lea ecx, [ebp - 0x10c8]
push edx
push str.Please_confirm_updating_of_fixups
push ecx
mov eax, dword [0x4d3b7c]
push eax
call sub.USER32.DLL_MessageBoxA
mov esi, eax
cmp esi, 6
jne 0x4525a2
xor eax, eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x4525e6
mov edx, dword [ebp - 0x4c]
push edx
mov ecx, dword [ebp - 0x60]
push ecx
mov eax, dword [ebp - 0x11d0]
add eax, dword [ebp - 0x11d8]
push eax
call fcn.004a3530
add esp, 0xc
test byte [ebx + 0x25d], 0x10
je 0x4525d5
push ebx
call fcn.0044e54c
pop ecx
push 0
push 0
push 0x474
call sym.ollydbg.exe__Broadcast
add esp, 0xc
mov edx, dword [ebp - 0x60]
push edx
call sub.KERNEL32.DLL_GlobalFree
jmp 0x452c7c
cmp edi, 0xb1
jne 0x45260c
push 1
push ebx
call fcn.0044d614
add esp, 8
jmp 0x452c7c
cmp edi, 0xb5
jne 0x4528b2
cmp dword [ebx + 0x3a1], 0
jne 0x45266f
cmp dword [ebx + 0x251], 0
je 0x45266f
mov byte [ebp - 0x10c8], 0
mov ecx, dword [ebp - 0x10]
push ecx
mov eax, dword [ebp - 0xc]
push eax
lea eax, [ebp - 0x10c8]
mov edx, dword [ebx + 0x239]
push edx
mov ecx, dword [ebx + 0x251]
push ecx
push 0x4c
push 0
push eax
push str.Enter_expression_to_follow_in_Dump
call fcn.004436e8
add esp, 0x20
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jne 0x4526d0
xor eax, eax
jmp 0x453148
cmp dword [ebx + 0x3a1], 0
jne 0x452680
mov edx, dword [0x4dced8]
jmp 0x452682
xor edx, edx
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0xc]
push ecx
mov eax, 2
cmp dword [ebx + 0x3a1], 0
je 0x45269e
add eax, 0xfffffffe
push eax
push 0
push 4
lea edx, [ebp - 0x44]
push edx
cmp dword [ebx + 0x3a1], 0
jne 0x4526b7
mov ecx, str.Enter_address_to_follow
jmp 0x4526bc
mov ecx, str.Enter_offset_to_follow
push ecx
call sym.ollydbg.exe__Getlongxy
add esp, 0x1c
test eax, eax
je 0x4526d0
xor eax, eax
jmp 0x453148
cmp dword [ebx + 0x3a1], 0
jne 0x452863
mov edx, dword [ebp - 0x44]
push edx
call sym.ollydbg.exe__Findmemory
pop ecx
mov esi, eax
test esi, esi
jne 0x452705
mov eax, dword [ebp - 0x44]
push eax
push str.There_is_no_allocated_memory_on_the_specified_address___08lX_.
call sym.ollydbg.exe__Error
add esp, 8
xor eax, eax
jmp 0x453148
mov edx, dword [ebp - 0x44]
mov dword [0x4dced8], edx
cmp dword [ebx + 0x251], 0
je 0x452733
push 0x30
push 0
mov ecx, dword [0x4dced8]
push ecx
push 0
push 0
call sym.ollydbg.exe__Setcpu
add esp, 0x14
jmp 0x452c7c
mov eax, dword [esi]
cmp eax, dword [ebx + 0x375]
jne 0x45276a
mov edx, dword [esi + 4]
cmp edx, dword [ebx + 0x379]
jne 0x45276a
mov ecx, dword [0x4dced8]
mov dword [ebx + 0x37d], ecx
mov eax, dword [0x4dced8]
mov dword [ebx + 0x389], eax
mov dword [ebx + 0x385], eax
jmp 0x452c7c
push 7
push ebx
call sym.ollydbg.exe__Dumpbackup
add esp, 8
push 0x4baa38
lea edx, [ebp - 0x10c8]
push edx
call fcn.004a6c2c
add esp, 8
mov dword [ebp - 8], eax
mov ecx, dword [esi]
push ecx
call sym.ollydbg.exe__Findmodule
pop ecx
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0
je 0x4527fe
mov eax, dword [ebp - 0x70]
cmp byte [eax + 0x48], 0
je 0x4527fe
mov edx, dword [ebp - 0x70]
add edx, 0x48
push edx
push 8
push 0x4baa40
lea ecx, [ebp - 0x10c8]
add ecx, dword [ebp - 8]
push ecx
call fcn.004a6c2c
add esp, 0x10
add dword [ebp - 8], eax
cmp byte [esi + 0x1c], 0
je 0x4527f0
lea eax, [esi + 0x1c]
push eax
push 8
push str.:_.s
lea edx, [ebp - 0x10c8]
add edx, dword [ebp - 8]
push edx
call fcn.004a6c2c
add esp, 0x10
add dword [ebp - 8], eax
mov ecx, dword [ebp - 8]
mov byte [ebp + ecx - 0x10c8], 0x20
inc dword [ebp - 8]
mov eax, dword [esi]
lea ecx, [ebp - 0x10c8]
add eax, dword [ebp - 0x4c]
dec eax
push eax
mov edx, dword [esi]
push edx
push 0x4baa8c
add ecx, dword [ebp - 8]
push ecx
call fcn.004a6c2c
add esp, 0x10
lea eax, [ebp - 0x10c8]
push eax
mov edx, dword [ebp + 8]
push edx
call sub.USER32.DLL_SetWindowTextA
mov ecx, dword [esi]
mov dword [ebx + 0x375], ecx
mov eax, dword [esi + 4]
mov dword [ebx + 0x379], eax
mov edx, dword [0x4dced8]
mov dword [ebx + 0x37d], edx
mov ecx, dword [0x4dced8]
mov dword [ebx + 0x389], ecx
mov dword [ebx + 0x385], ecx
jmp 0x452c7c
mov eax, dword [ebx + 0x375]
cmp eax, dword [ebp - 0x44]
ja 0x45287f
mov edx, dword [ebx + 0x375]
add edx, dword [ebx + 0x379]
cmp edx, dword [ebp - 0x44]
ja 0x452895
mov eax, dword [ebp - 0x44]
push eax
push str.Specified_offset___08lX__is_outside_the_file.
call sym.ollydbg.exe__Error
add esp, 8
jmp 0x452c7c
mov edx, dword [ebp - 0x44]
mov dword [ebx + 0x37d], edx
mov ecx, dword [ebp - 0x44]
mov dword [ebx + 0x389], ecx
mov dword [ebx + 0x385], ecx
jmp 0x452c7c
cmp edi, 0xb6
jne 0x4529ad
mov eax, dword [0x4e9e9c]
cmp eax, dword [0x4e9e98]
jne 0x4528d2
push ebx
call fcn.0044e54c
pop ecx
cmp dword [0x4e9e9c], 2
jge 0x4528e2
xor eax, eax
jmp 0x453148
mov edx, dword [0x4e9e9c]
shl edx, 4
add edx, 0x4e5e78
mov dword [ebp - 0x78], edx
mov ecx, dword [ebp - 0x78]
mov eax, dword [ecx + 4]
push eax
call sym.ollydbg.exe__Findmemory
pop ecx
mov esi, eax
test esi, esi
je 0x45291e
mov eax, dword [ebp - 0x78]
mov edx, dword [eax + 4]
cmp edx, dword [esi]
jb 0x45291e
mov ecx, dword [esi]
mov eax, dword [ebp - 0x78]
add ecx, dword [esi + 4]
cmp ecx, dword [eax + 4]
jae 0x452925
xor eax, eax
jmp 0x453148
mov edx, dword [ebp - 0x78]
mov eax, dword [ebx + 0x255]
and eax, 0xffff
mov ecx, dword [edx]
cmp ecx, eax
je 0x452948
mov edx, dword [ebp - 0x78]
mov ecx, dword [edx]
push ecx
push ebx
call sym.ollydbg.exe__Setdumptype
add esp, 8
push 0
push 0
mov eax, dword [ebp - 0x78]
mov edx, dword [eax + 4]
push edx
push 0
push 0
call sym.ollydbg.exe__Setcpu
mov eax, dword [ebp - 0x78]
add esp, 0x14
mov ecx, dword [esi]
cmp ecx, dword [eax + 8]
ja 0x452990
mov edx, dword [esi]
mov ecx, dword [ebp - 0x78]
add edx, dword [esi + 4]
cmp edx, dword [ecx + 0xc]
jb 0x452990
mov eax, dword [ebp - 0x78]
mov edx, dword [eax + 8]
mov dword [ebx + 0x385], edx
mov ecx, dword [ebp - 0x78]
mov eax, dword [ecx + 0xc]
mov dword [ebx + 0x389], eax
jmp 0x4529a2
mov edx, dword [ebp - 0x78]
mov ecx, dword [edx + 4]
mov dword [ebx + 0x389], ecx
mov dword [ebx + 0x385], ecx
dec dword [0x4e9e9c]
jmp 0x452c7c
cmp edi, 0xb7
jne 0x452a98
mov eax, dword [0x4e9e9c]
cmp eax, dword [0x4e9e98]
jne 0x4529cd
xor eax, eax
jmp 0x453148
mov edx, dword [0x4e9e9c]
shl edx, 4
add edx, 0x4e5e98
mov dword [ebp - 0x78], edx
mov ecx, dword [ebp - 0x78]
mov eax, dword [ecx + 4]
push eax
call sym.ollydbg.exe__Findmemory
pop ecx
mov esi, eax
test esi, esi
je 0x452a09
mov eax, dword [ebp - 0x78]
mov edx, dword [eax + 4]
cmp edx, dword [esi]
jb 0x452a09
mov ecx, dword [esi]
mov eax, dword [ebp - 0x78]
add ecx, dword [esi + 4]
cmp ecx, dword [eax + 4]
jae 0x452a10
xor eax, eax
jmp 0x453148
mov edx, dword [ebp - 0x78]
mov eax, dword [ebx + 0x255]
and eax, 0xffff
mov ecx, dword [edx]
cmp ecx, eax
je 0x452a33
mov edx, dword [ebp - 0x78]
mov ecx, dword [edx]
push ecx
push ebx
call sym.ollydbg.exe__Setdumptype
add esp, 8
push 0
push 0
mov eax, dword [ebp - 0x78]
mov edx, dword [eax + 4]
push edx
push 0
push 0
call sym.ollydbg.exe__Setcpu
mov eax, dword [ebp - 0x78]
add esp, 0x14
mov ecx, dword [esi]
cmp ecx, dword [eax + 8]
ja 0x452a7b
mov edx, dword [esi]
mov ecx, dword [ebp - 0x78]
add edx, dword [esi + 4]
cmp edx, dword [ecx + 0xc]
jb 0x452a7b
mov eax, dword [ebp - 0x78]
mov edx, dword [eax + 8]
mov dword [ebx + 0x385], edx
mov ecx, dword [ebp - 0x78]
mov eax, dword [ecx + 0xc]
mov dword [ebx + 0x389], eax
jmp 0x452a8d
mov edx, dword [ebp - 0x78]
mov ecx, dword [edx + 4]
mov dword [ebx + 0x389], ecx
mov dword [ebx + 0x385], ecx
inc dword [0x4e9e9c]
jmp 0x452c7c
cmp edi, 0xb8
jne 0x452bc7
mov eax, dword [0x4d7218]
xor edi, edi
mov dword [ebp - 0x74], eax
jmp 0x452bb6
mov eax, dword [ebp - 0x74]
add eax, 0x50
push eax
lea edx, [ebx + 0x271]
push edx
call fcn.004a38bc
add esp, 8
test eax, eax
jne 0x452bae
mov ecx, dword [ebp - 0x74]
cmp dword [ecx + 0x158], 0
je 0x452bae
mov eax, dword [ebp - 0x74]
xor esi, esi
mov edx, dword [eax + 0x158]
mov dword [ebp - 0x7c], edx
jmp 0x452b9a
mov eax, dword [ebp - 0x7c]
mov edx, dword [eax + 0x14]
cmp edx, dword [ebx + 0x385]
ja 0x452b95
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x7c]
mov eax, dword [ecx + 0x14]
add eax, dword [edx + 0x10]
cmp eax, dword [ebx + 0x389]
jb 0x452b95
mov ecx, dword [ebp - 0x74]
mov edx, dword [ebp - 0x7c]
mov eax, dword [ecx]
mov ecx, dword [ebp - 0x7c]
add eax, dword [edx + 0xc]
mov edx, dword [ebx + 0x385]
sub edx, dword [ecx + 0x14]
add eax, edx
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax + 0xc]
cmp ecx, dword [ebp - 0x44]
ja 0x452b72
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x74]
mov edx, dword [eax + 0xc]
add edx, dword [ecx + 0x10]
cmp edx, dword [ebp - 0x44]
jbe 0x452b72
push 0xd
mov eax, dword [ebx + 0x389]
sub eax, dword [ebx + 0x385]
push eax
mov edx, dword [ebp - 0x44]
push edx
call sym.ollydbg.exe__Setdisasm
add esp, 0xc
jmp 0x452c7c
push 0xb0
mov ecx, dword [ebx + 0x389]
sub ecx, dword [ebx + 0x385]
push ecx
mov eax, dword [ebp - 0x44]
push eax
call fcn.0042df10
add esp, 0xc
jmp 0x452c7c
inc esi
add dword [ebp - 0x7c], 0x28
mov edx, dword [ebp - 0x74]
cmp esi, dword [edx + 0x154]
jl 0x452af4
jmp 0x452c7c
inc edi
add dword [ebp - 0x74], 0x465
cmp edi, dword [0x4d7200]
jl 0x452ab3
jmp 0x452c7c
cmp edi, 0x1000
jl 0x452c37
cmp edi, 0xdfff
jge 0x452c37
test byte [ebx + 0x25d], 0x10
je 0x452be7
push ebx
call fcn.0044e54c
pop ecx
mov ecx, edi
and ecx, 0xf000
cmp ecx, 0xd000
jne 0x452c23
cmp edi, 0xd001
jne 0x452c0b
mov dword [ebx + 0x259], 0x48f8a8
jmp 0x452c13
xor eax, eax
mov dword [ebx + 0x259], eax
push 0xd011
push ebx
call sym.ollydbg.exe__Setdumptype
add esp, 8
jmp 0x452c7c
cmp edi, dword [ebx + 0x255]
je 0x452c7c
push edi
push ebx
call sym.ollydbg.exe__Setdumptype
add esp, 8
jmp 0x452c7c
cmp edi, 0x2e0
jl 0x452c4e
cmp edi, 0x2ff
jg 0x452c4e
mov eax, edi
jmp 0x453148
push ebx
push edi
cmp dword [ebx + 0x251], 0
mov edx, 0xa
je 0x452c61
add edx, 0x16
push edx
call fcn.004965e4
add esp, 0xc
test eax, eax
jne 0x452c75
xor eax, eax
jmp 0x453148
mov eax, edi
jmp 0x453148
test edi, edi
je 0x452c8d
push 0
push 0
mov edx, dword [ebp + 8]
push edx
call sub.USER32.DLL_InvalidateRect
xor eax, eax
jmp 0x453148
mov edx, dword [ebx + 0x255]
and edx, 0xf000
mov dword [ebp - 0x14], edx
mov ecx, dword [ebx + 0x255]
and ecx, 0xff0
sar ecx, 4
mov dword [ebp - 0x18], ecx
test byte [ebx + 0x25e], 0x80
je 0x452cdd
cmp dword [ebp + 0x10], 0
jne 0x452cdd
cmp dword [0x4e2760], 0
sete al
and eax, 1
push eax
call fcn.00426204
pop ecx
jmp 0x452f90
cmp dword [ebx + 0x3a5], 0
je 0x452d08
cmp dword [ebp + 0x10], 0
jne 0x452d08
test byte [ebx + 0x257], 1
sete dl
and edx, 1
push edx
push ebx
call fcn.00446dbc
add esp, 8
jmp 0x452f90
cmp dword [ebp + 0x10], 1
jne 0x452d6d
mov dword [ebp - 0xc8], 0x4b9f98
xor edi, edi
jmp 0x452d3e
mov eax, dword [ebp - 0xc8]
mov ecx, dword [ebx + 0x255]
and ecx, 0xffff
mov edx, dword [eax]
cmp edx, ecx
je 0x452d49
add edi, 2
add dword [ebp - 0xc8], 8
mov eax, dword [ebp - 0xc8]
cmp dword [eax], 0
jne 0x452d1c
cmp dword [edi*4 + 0x4b9f98], 0
je 0x452f90
mov edx, dword [edi*4 + 0x4b9f9c]
push edx
push ebx
call sym.ollydbg.exe__Setdumptype
add esp, 8
jmp 0x452f90
cmp dword [ebp - 0x14], 0x1000
jne 0x452dd3
cmp dword [ebp + 0x10], 2
jne 0x452dd3
mov ecx, dword [ebx + 0x255]
and ecx, 0xffff0fff
or ecx, 0xa000
mov dword [ebx + 0x255], ecx
mov eax, dword [ebp - 0x18]
sar eax, 1
jns 0x452d9e
adc eax, 0
inc eax
mov dword [ebx + 0x190], eax
mov edx, dword [ebp - 0x18]
sar edx, 1
jns 0x452daf
adc edx, 0
inc edx
mov ecx, dword [ebx + 0x140]
imul edx, dword [ecx*4 + 0x4d48f4]
mov dword [ebx + 0x14c], edx
mov dword [ebx + 0x1d4], 0x4ba0cd
jmp 0x452f90
cmp dword [ebp - 0x14], 0xa000
jne 0x452e29
cmp dword [ebp + 0x10], 2
jne 0x452e29
mov eax, dword [ebx + 0x255]
and eax, 0xffff0fff
or eax, 0x1000
mov dword [ebx + 0x255], eax
mov edx, dword [ebp - 0x18]
inc edx
mov dword [ebx + 0x190], edx
mov eax, dword [ebx + 0x140]
mov ecx, dword [ebp - 0x18]
inc ecx
imul ecx, dword [eax*4 + 0x4d48f4]
mov dword [ebx + 0x14c], ecx
mov dword [ebx + 0x1d4], 0x4ba04e
jmp 0x452f90
cmp dword [ebp - 0x14], 0xb000
jne 0x452e7f
cmp dword [ebp + 0x10], 2
jne 0x452e7f
mov edx, dword [ebx + 0x255]
and edx, 0xffff0fff
or edx, 0xc000
mov dword [ebx + 0x255], edx
mov dword [ebx + 0x190], 3
mov ecx, dword [ebx + 0x140]
mov eax, dword [ecx*4 + 0x4d48f4]
lea eax, [eax + eax*2]
mov dword [ebx + 0x14c], eax
mov dword [ebx + 0x1d4], 0x4ba0cd
jmp 0x452f90
cmp dword [ebp - 0x14], 0xc000
jne 0x452ed5
cmp dword [ebp + 0x10], 2
jne 0x452ed5
mov edx, dword [ebx + 0x255]
and edx, 0xffff0fff
or edx, 0xb000
mov dword [ebx + 0x255], edx
mov dword [ebx + 0x190], 5
mov ecx, dword [ebx + 0x140]
mov eax, dword [ecx*4 + 0x4d48f4]
lea eax, [eax + eax*4]
mov dword [ebx + 0x14c], eax
mov dword [ebx + 0x1d4], 0x4ba04e
jmp 0x452f90
cmp dword [ebp - 0x14], 0x9000
jne 0x452f90
cmp dword [ebp + 0x10], 3
jne 0x452f90
cmp dword [ebx + 0x3a1], 0
jne 0x452efe
cmp dword [ebx + 0x251], 0
jne 0x452f12
mov dword [ebx + 0x1d8], 0x4ba0b9
xor edx, edx
mov dword [ebx + 0x26d], edx
jmp 0x452f7a
cmp dword [ebp + 0x14], 1
je 0x452f27
cmp dword [ebp + 0x14], 0
jne 0x452f3d
cmp dword [ebx + 0x26d], 0
jne 0x452f3d
mov dword [ebx + 0x1d8], 0x4bb23b
mov dword [ebx + 0x26d], 1
jmp 0x452f7a
cmp dword [ebp + 0x14], 2
je 0x452f52
cmp dword [ebp + 0x14], 0
jne 0x452f68
cmp dword [ebx + 0x26d], 1
jne 0x452f68
mov dword [ebx + 0x1d8], 0x4bb242
mov dword [ebx + 0x26d], 2
jmp 0x452f7a
mov dword [ebx + 0x1d8], 0x4ba0b9
xor ecx, ecx
mov dword [ebx + 0x26d], ecx
push 0
push 0
push 0x474
call sym.ollydbg.exe__Broadcast
add esp, 0xc
jmp case.0x44e6fa.1136
push 0
push 0
mov eax, dword [ebp + 8]
push eax
call sub.USER32.DLL_InvalidateRect
jmp case.0x44e6fa.1136
cmp dword [ebp + 0x14], 0
je 0x4530a9
cmp dword [ebx + 0x3a1], 0
je 0x4530a9
mov edx, dword [ebp + 0x14]
push edx
lea ecx, [ebx + 0x271]
push ecx
call fcn.004a38bc
add esp, 8
test eax, eax
jne 0x4530a9
mov eax, dword [ebp + 0x10]
mov edx, dword [eax]
push edx
push ebx
call sym.ollydbg.exe__Setdumptype
add esp, 8
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 4]
mov dword [ebp - 0x44], eax
mov edx, dword [ebx + 0x375]
cmp edx, dword [ebp - 0x44]
ja 0x45302b
mov ecx, dword [ebx + 0x375]
add ecx, dword [ebx + 0x379]
cmp ecx, dword [ebp - 0x44]
jbe 0x45302b
mov eax, dword [ebp - 0x44]
mov dword [ebx + 0x37d], eax
mov edx, dword [ebp + 0x10]
mov ecx, dword [edx + 8]
mov dword [ebx + 0x385], ecx
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0xc]
mov dword [ebx + 0x389], edx
jmp 0x453043
mov ecx, dword [ebx + 0x375]
mov dword [ebx + 0x389], ecx
mov dword [ebx + 0x385], ecx
mov dword [ebx + 0x37d], ecx
push 0
push 0
mov eax, dword [ebp + 8]
push eax
call sub.USER32.DLL_InvalidateRect
push 0
mov eax, dword [0x4d3b80]
mov edx, dword [ebp + 8]
push edx
push 0x222
push eax
call sub.USER32.DLL_SendMessageA
mov edx, dword [ebp + 8]
push edx
call sub.USER32.DLL_IsZoomed
test eax, eax
jne 0x45307e
push 9
mov ecx, dword [ebp + 8]
push ecx
call sub.USER32.DLL_ShowWindow
mov eax, dword [ebp + 8]
push eax
call sub.USER32.DLL_SetFocus
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebx + 0x3a1]
mov dword [edx + 0x10], ecx
mov eax, dword [ebp + 0x10]
mov edx, dword [ebx + 0x379]
mov dword [eax + 0x14], edx
mov eax, 0x1234
jmp 0x453148
xor eax, eax
jmp 0x453148
push 0
push 0
mov edx, dword [ebp + 8]
push edx
call sub.USER32.DLL_InvalidateRect
xor eax, eax
jmp 0x453148
cmp dword [ebx + 0x3a1], 0
jne 0x4530f6
mov edx, dword [ebx + 0x375]
cmp edx, dword [ebp + 0x14]
jae 0x4530f6
mov ecx, dword [ebx + 0x375]
add ecx, dword [ebx + 0x379]
cmp ecx, dword [ebp + 0x10]
jbe 0x4530f6
push 0
push 0
mov eax, dword [ebp + 8]
push eax
call sub.USER32.DLL_InvalidateRect
xor eax, eax
jmp 0x453148
cmp dword [ebx + 0x3a1], 0
jne 0x453119
cmp dword [ebx + 0x251], 0
je 0x453119
push 0
push 0
mov edx, dword [ebp + 8]
push edx
call sub.USER32.DLL_InvalidateRect
xor eax, eax
jmp 0x453148
push fcn.00447748
push ebx
mov edx, dword [ebp + 8]
push edx
call sym.ollydbg.exe__Painttable
add esp, 0xc
xor eax, eax
jmp 0x453148
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
mov eax, dword [ebp + 0xc]
push eax
mov edx, dword [ebp + 8]
push edx
call sub.USER32.DLL_DefMDIChildProcA
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10