Function at 0x451300
Capabilities:
Encode data using xor
Get file version info
Get session user name

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x8b0
push esi
mov dword [ebp - 0x3a0], 0x695465bb
mov byte [ebp - 0x399], 0x64
mov eax, 0x19cf
mov word [ebp - 0x208], ax
mov ecx, 0xa0b
mov word [ebp - 0x394], cx
movzx edx, word [ebp - 0x394]
mov dword [ebp - 0x7c4], edx
cmp dword [ebp - 0x7c4], 0x559
je 0x45143a
cmp dword [ebp - 0x7c4], 0xcdc
je 0x451361
jmp 0x451475
lea eax, [ebp - 0x4d8]
push eax
mov ecx, dword [ebp - 0x3f4]
push ecx
mov edx, dword [ebp - 0x544]
push edx
mov eax, dword [ebp - 0x7a4]
push eax
mov ecx, dword [ebp - 0x3f4]
push ecx
mov edx, dword [ebp - 0x1d0]
push edx
mov eax, dword [ebp - 0x7a4]
push eax
push 0xb
call sub.VERSION.dll_VerInstallFileA
mov dword [ebp - 0x4d8], eax
movzx ecx, word [ebp - 0x394]
sub ecx, 0x3d
mov word [ebp - 0x394], cx
movzx edx, word [ebp - 0x394]
cmp edx, 0x22e
jge 0x45141b
movzx eax, word [ebp - 0x394]
mov dword [ebp - 0x7c8], eax
cmp dword [ebp - 0x7c8], 0x75d
je 0x4513da
jmp 0x451403
lea ecx, [ebp - 0x778]
push ecx
lea edx, [ebp - 0x778]
push edx
mov eax, dword [ebp - 0x544]
push eax
lea ecx, [ebp - 0x4d8]
push ecx
call sub.VERSION.dll_VerQueryValueA
mov dword [ebp - 0x778], eax
jmp 0x45141b
movzx edx, word [ebp - 0x394]
push edx
movzx eax, word [section..data]
push eax
call section..text
add esp, 8
mov dword [ebp - 0x4d8], 0x5a7ef837
lea ecx, [ebp - 0x3f0]
push ecx
call dword [sym.imp.COMDLG32.dll_PrintDlgA]
mov dword [ebp - 0x1d4], eax
jmp 0x451475
movzx edx, word [ebp - 0x394]
add edx, 0x19f
mov word [ebp - 0x394], dx
lea eax, [ebp - 0x3f0]
push eax
lea ecx, [ebp - 0x3f0]
push ecx
mov edx, dword [ebp - 0x1d0]
push edx
lea eax, [ebp - 0x3f0]
push eax
call sub.VERSION.dll_VerQueryValueA
mov dword [ebp - 0x538], eax
mov dword [ebp - 0x68c], 0x10bd2
mov ecx, dword [ebp - 0x3a0]
and ecx, 0x6c4c29b4
mov dword [ebp - 0x3a0], ecx
mov dword [ebp - 0x658], 0xa259
mov edx, dword [ebp - 0x3a0]
shl edx, 0x1d
mov dword [ebp - 0x3a0], edx
movzx eax, word [ebp - 0x394]
sar eax, 0xa
mov word [ebp - 0x394], ax
movzx ecx, word [ebp - 0x394]
xor ecx, 0x586
mov word [ebp - 0x394], cx
movzx edx, word [ebp - 0x394]
or edx, 0xd17
mov word [ebp - 0x394], dx
movzx eax, word [ebp - 0x394]
sub eax, 0x5e4
mov word [ebp - 0x394], ax
mov ecx, dword [ebp - 0x3a0]
add ecx, 0x168402b8
mov dword [ebp - 0x3a0], ecx
mov dword [ebp - 0x4d8], 0xd679eba9
movzx edx, word [ebp - 0x394]
and edx, 0xdd0
mov word [ebp - 0x394], dx
movzx eax, word [ebp - 0x394]
sub eax, 0xe4
mov word [ebp - 0x394], ax
mov ecx, dword [ebp - 0x3a0]
add ecx, 0x21253ee8
mov dword [ebp - 0x3a0], ecx
mov edx, dword [ebp - 0x3a0]
add edx, 0x41d27c18
mov dword [ebp - 0x3a0], edx
mov eax, dword [ebp - 0x3a0]
sub eax, 0x55288c69
mov dword [ebp - 0x3a0], eax
mov ecx, dword [ebp - 0x4d8]
xor ecx, 0xab0ab0d7
mov dword [ebp - 0x4d8], ecx
mov edx, dword [ebp - 0x3a0]
sar edx, 2
mov dword [ebp - 0x3a0], edx
mov eax, dword [ebp - 0x3a0]
shl eax, 0xd
mov dword [ebp - 0x3a0], eax
mov ecx, dword [ebp - 0x3a0]
or ecx, 0x126045a9
mov dword [ebp - 0x3a0], ecx
mov edx, dword [ebp - 0x3a0]
and edx, 0x10fdca72
mov dword [ebp - 0x3a0], edx
mov eax, dword [ebp - 0x4d8]
sub eax, 0x7e81ed11
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x3a0]
sub ecx, 0x14accfe0
mov dword [ebp - 0x3a0], ecx
movzx edx, word [ebp - 0x394]
add edx, 0x737
mov word [ebp - 0x394], dx
mov eax, dword [ebp - 0x4d8]
sub eax, 0x35a75c19
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x3a0]
and ecx, 0x22b91a20
mov dword [ebp - 0x3a0], ecx
mov edx, dword [ebp - 0x3a0]
sub edx, 0x2beb78cf
mov dword [ebp - 0x3a0], edx
mov eax, dword [ebp - 0x3a0]
add eax, 0x327b5a70
mov dword [ebp - 0x3a0], eax
mov ecx, dword [ebp - 0x4d8]
sub ecx, 0x6bd1efad
mov dword [ebp - 0x4d8], ecx
mov edx, dword [ebp - 0x3a0]
sub edx, 0x7a094246
mov dword [ebp - 0x3a0], edx
mov eax, dword [ebp - 0x4d8]
xor eax, 0x4b7fee54
mov dword [ebp - 0x4d8], eax
movzx ecx, word [ebp - 0x394]
shl ecx, 1
mov word [ebp - 0x394], cx
movzx edx, word [ebp - 0x394]
sar edx, 0xb
mov word [ebp - 0x394], dx
movzx eax, word [ebp - 0x394]
or eax, 0x7a2
mov word [ebp - 0x394], ax
mov ecx, dword [ebp - 0x4d8]
and ecx, 0xdaf1465c
mov dword [ebp - 0x4d8], ecx
movzx edx, word [ebp - 0x394]
add edx, 0xf43
mov word [ebp - 0x394], dx
mov eax, dword [ebp - 0x3a0]
sub eax, 0xde10214
mov dword [ebp - 0x3a0], eax
mov ecx, dword [ebp - 0x3a0]
add ecx, 0x7ffb170e
mov dword [ebp - 0x3a0], ecx
mov edx, dword [ebp - 0x4d8]
add edx, 0x4270217e
mov dword [ebp - 0x4d8], edx
mov eax, dword [ebp - 0x4d8]
add eax, 0x7bce1808
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x68c]
sub ecx, 0xec
mov dword [ebp - 0x68c], ecx
mov edx, dword [ebp - 0x3a0]
and edx, 0x7cd97f44
mov dword [ebp - 0x3a0], edx
movzx eax, word [ebp - 0x394]
sub eax, 0xd6
mov word [ebp - 0x394], ax
movzx ecx, word [ebp - 0x394]
sub ecx, 9
mov word [ebp - 0x394], cx
movzx edx, word [ebp - 0x394]
add edx, 0xac1
mov word [ebp - 0x394], dx
mov eax, dword [ebp - 0x4d8]
or eax, 0xdf81bb4e
mov dword [ebp - 0x4d8], eax
cmp dword [ebp - 0x68c], 0xe8ca
jae 0x45149b
movzx ecx, word [ebp - 0x394]
mov dword [ebp - 0x7cc], ecx
cmp dword [ebp - 0x7cc], 0x20c7
je 0x4517ac
jmp 0x451826
movsx edx, word [section..data]
mov dword [ebp - 0x7d0], edx
cmp dword [ebp - 0x7d0], 0xffffacbd
je 0x4517c7
jmp 0x451807
lea eax, [ebp - 0x3a0]
mov dword [ebp - 0x33c], eax
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ecx]
mov dword [ebp - 0x7d4], edx
cmp dword [ebp - 0x7d4], 0x55f76c4e
je 0x4517ef
jmp 0x451805
mov eax, dword [ebp - 0x3a0]
sar eax, 0xe
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
call fcn.00449860
jmp 0x45181a
mov edx, dword [ebp - 0x33c]
mov eax, dword [edx]
xor eax, 0x502ee20b
mov dword [ebp - 0x3a0], eax
mov dword [ebp - 0x494], 0xe557
jmp 0x451880
mov ecx, dword [ebp - 0x3a0]
shl ecx, 6
mov edx, dword [ebp - 0x33c]
mov dword [edx], ecx
call dword [sym.imp.COMDLG32.dll_CommDlgExtendedError]
mov dword [ebp - 0x400], eax
mov eax, dword [ebp - 0x3a0]
and eax, 0x6e28fea2
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
movzx edx, word [ebp - 0x394]
sub edx, 0x591
mov word [ebp - 0x394], dx
mov eax, dword [ebp - 0x33c]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x3a0]
mov edx, dword [ebp - 0x33c]
mov dword [edx], ecx
cmp dword [ebp - 0x494], 0xf513
jae 0x451b95
mov eax, dword [ebp - 0x3a0]
add eax, 0x4ce5e4a0
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x33c]
mov eax, dword [edx]
sub eax, dword [ebp - 0x3a0]
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x3a0]
sub edx, 0x607948be
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ecx]
add edx, 0xe71ac9b
mov dword [ebp - 0x3a0], edx
mov eax, dword [ebp - 0x33c]
mov ecx, dword [eax]
and ecx, 0x40aacd5e
mov dword [ebp - 0x3a0], ecx
movzx edx, word [ebp - 0x394]
add edx, 0x5d0
mov word [ebp - 0x394], dx
mov eax, dword [ebp - 0x33c]
mov ecx, dword [eax]
or ecx, dword [ebp - 0x3a0]
mov edx, dword [ebp - 0x33c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x3a0]
shl eax, 0xb
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x3a0]
xor edx, 0x193e3fb7
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x3a0]
sar edx, cl
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
movzx ecx, word [ebp - 0x394]
sub ecx, 0xcda
mov word [ebp - 0x394], cx
movzx edx, word [ebp - 0x394]
and edx, 0x128
mov word [ebp - 0x394], dx
mov eax, dword [ebp - 0x3a0]
add eax, 0x73830b00
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x33c]
mov eax, dword [edx]
sub eax, dword [ebp - 0x3a0]
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x3a0]
add edx, 0x52f7faec
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x4d8]
mov dword [ebp - 0x400], ecx
mov edx, dword [ebp - 0x33c]
mov eax, dword [edx]
sub eax, dword [ebp - 0x3a0]
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x3a0]
sub edx, 0x471353f2
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ecx]
add edx, 0x5d54e752
mov dword [ebp - 0x3a0], edx
mov eax, dword [ebp - 0x3a0]
add eax, 0x67b27122
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x33c]
mov eax, dword [edx]
and eax, dword [ebp - 0x3a0]
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x33c]
mov eax, dword [edx]
or eax, 0x1fd59ca
mov dword [ebp - 0x3a0], eax
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x3a0]
sar edx, cl
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ecx]
xor edx, dword [ebp - 0x3a0]
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x3a0]
shl ecx, 0x1a
mov edx, dword [ebp - 0x33c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x33c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x3a0]
mov edx, dword [ebp - 0x33c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x494]
add eax, 0xd4
mov dword [ebp - 0x494], eax
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ecx]
add edx, dword [ebp - 0x3a0]
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x400]
and ecx, 0xa0f264f8
mov dword [ebp - 0x4d8], ecx
mov edx, dword [ebp - 0x3a0]
sub edx, 0x4b7ccbab
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ecx]
sub edx, 0xdba82e2
mov dword [ebp - 0x3a0], edx
movzx eax, word [ebp - 0x394]
add eax, 0xb99
mov word [ebp - 0x394], ax
mov ecx, dword [ebp - 0x400]
add ecx, 0x54507163
mov dword [ebp - 0x4d8], ecx
mov edx, dword [ebp - 0x3a0]
add edx, 0x39644205
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x3a0]
sub ecx, 0xc7dfb07
mov edx, dword [ebp - 0x33c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x4d8]
sub eax, 0x49e3a62d
mov dword [ebp - 0x400], eax
mov ecx, dword [ebp - 0x3a0]
sub ecx, 0x2dac4229
mov edx, dword [ebp - 0x33c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x400]
or eax, 0x4ffc1b8e
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ecx]
shl edx, 1
mov dword [ebp - 0x3a0], edx
jmp 0x451880
movzx eax, word [ebp - 0x394]
cdq
mov ecx, 0x8fc
idiv ecx
cmp eax, 0xd81
je 0x451c3a
lea edx, [ebp - 0x394]
mov dword [ebp - 0x7c0], edx
mov eax, dword [ebp - 0x3a0]
mov dword [ebp - 0x7d8], eax
cmp dword [ebp - 0x7d8], 0x3515f8c7
je 0x451bd5
jmp 0x451c3a
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ecx]
xor edx, 0x395dbfb5
mov dword [ebp - 0x3a0], edx
lea eax, [ebp - 0x124]
push eax
call dword [sym.imp.COMDLG32.dll_FindTextA]
mov dword [ebp - 0x408], eax
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x3a0]
sar edx, cl
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
lea ecx, [ebp - 0x758]
push ecx
call dword [sym.imp.COMDLG32.dll_GetSaveFileNameA]
mov dword [ebp - 0x778], eax
mov edx, dword [ebp - 0x33c]
mov eax, dword [edx]
and eax, 0x6af2acc8
mov dword [ebp - 0x3a0], eax
mov dword [ebp - 0x32c], 0x4261
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
mov dword [ebp - 0x7dc], edx
cmp dword [ebp - 0x7dc], 0x6d2
je 0x451c61
jmp 0x451c89
mov eax, dword [ebp - 0x3a0]
add eax, 0x15d8a0c5
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
lea edx, [ebp - 0x1b8]
push edx
call dword [sym.imp.COMDLG32.dll_ChooseColorA]
mov dword [ebp - 8], eax
jmp 0x451d38
mov byte [ebp - 0x409], 0x51
mov dword [ebp - 0x314], 0xf3af
mov byte [ebp - 0x7b9], 0xde
mov dword [ebp - 0x4a0], 0x62f2
mov eax, dword [ebp - 0x400]
mov dword [ebp - 0x188], eax
mov cl, byte [ebp - 0x7b9]
mov byte [ebp - 0x7e0], cl
cmp byte [ebp - 0x7e0], 0xde
je 0x451cce
jmp 0x451d18
mov edx, dword [ebp - 0x7c0]
mov ax, word [edx]
mov word [ebp - 0x338], ax
lea ecx, [ebp - 0x188]
mov dword [ebp - 0x54c], ecx
mov dword [ebp - 0x490], 0xee57
lea edx, [ebp - 0x188]
mov dword [ebp - 0x214], edx
lea eax, [ebp - 0x3a0]
mov dword [ebp - 0x324], eax
mov dword [ebp - 0x190], 0x9f87
jmp 0x451d2e
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ecx]
add edx, dword [ebp - 0x3a0]
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
mov dword [ebp - 0x690], 0x6da5
mov dword [ebp - 0x320], 0xc89b
mov ecx, dword [ebp - 0x400]
mov dword [ebp - 0x7e4], ecx
cmp dword [ebp - 0x7e4], 0xc7bdc1cd
je 0x451d5c
jmp 0x451d94
mov edx, dword [ebp - 0x324]
mov eax, dword [ebp - 0x33c]
mov ecx, dword [edx]
and ecx, dword [eax]
mov dword [ebp - 0x3a0], ecx
lea edx, [ebp - 0x758]
push edx
push 2
push 0xba
mov eax, dword [ebp - 0x544]
push eax
call sub.VERSION.dll_GetFileVersionInfoA
mov dword [ebp - 8], eax
jmp 0x451e67
mov cx, word [ebp - 0x338]
mov word [ebp - 0x4d4], cx
mov dword [ebp - 0x31c], 0xfb97
movsx edx, word [section..data]
cmp edx, 0x75bb
jge 0x451e67
mov eax, dword [ebp - 0x3a0]
mov dword [ebp - 0x7e8], eax
cmp dword [ebp - 0x7e8], 0x4c056c90
je 0x451dd9
jmp 0x451e4c
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x394]
imul edx, eax
movzx ecx, word [ebp - 0x338]
movzx eax, word [ebp - 0x4d4]
sub ecx, eax
cmp edx, ecx
jle 0x451e4a
lea ecx, [ebp - 0x7b9]
mov dword [ebp - 0x640], ecx
lea edx, [ebp - 0x400]
mov dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x324]
mov ecx, dword [eax]
mov dword [ebp - 0x390], ecx
lea edx, [ebp - 0x3a0]
mov dword [ebp - 0x410], edx
mov eax, dword [ebp - 0x4d8]
sub eax, dword [ebp - 0x188]
mov dword [ebp - 0x400], eax
lea ecx, [ebp - 0x7b9]
mov dword [ebp - 0x68], ecx
jmp 0x451e67
mov edx, dword [ebp - 0x7c0]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x4d4]
add eax, ecx
mov edx, dword [ebp - 0x7c0]
mov word [edx], ax
mov ax, word [section..data]
mov word [ebp - 0x1cc], ax
mov cl, byte [ebp - 0x409]
mov byte [ebp - 0x7ec], cl
cmp byte [ebp - 0x7ec], 0x58
je 0x451e8b
jmp 0x451ec5
mov edx, dword [ebp - 0x188]
push edx
call fcn.00457a40
lea eax, [ebp - 0x2b4]
push eax
call dword [sym.imp.COMDLG32.dll_ChooseFontA]
mov dword [ebp - 0x778], eax
mov ecx, dword [ebp - 0x400]
sub ecx, dword [ebp - 0x188]
mov edx, dword [ebp - 0x64]
mov dword [edx], ecx
call fcn.00449860
jmp 0x457a21
lea eax, [ebp - 0x390]
mov dword [ebp - 0x1c8], eax
mov dword [ebp - 0xb4], 0x35f4
mov dword [ebp - 0x334], 0xc7fe
lea ecx, [ebp - 0x4d4]
mov dword [ebp - 0x534], ecx
mov dl, byte [ebp - 0x7b9]
mov byte [ebp - 0x41d], dl
mov eax, dword [ebp - 0x410]
mov edx, dword [ebp - 0x3a0]
mov ecx, dword [eax]
sar edx, cl
mov eax, dword [ebp - 0x1c8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x214]
mov edx, dword [ebp - 0x4d8]
mov ecx, dword [ecx]
shl edx, cl
mov eax, dword [ebp - 0x64]
mov dword [eax], edx
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ebp - 0x390]
or edx, dword [ecx]
mov eax, dword [ebp - 0x1c8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x324]
mov edx, dword [ebp - 0x3a0]
xor edx, dword [ecx]
mov dword [ebp - 0x390], edx
movzx eax, word [ebp - 0x394]
movzx ecx, word [ebp - 0x4d4]
and eax, ecx
mov edx, dword [ebp - 0x534]
mov word [edx], ax
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x41d], cl
mov ecx, dword [ebp - 0x54c]
mov edx, dword [ebp - 0x400]
add edx, dword [ecx]
mov eax, dword [ebp - 0x64]
mov dword [eax], edx
mov ecx, dword [ebp - 0x324]
mov edx, dword [ebp - 0x33c]
mov eax, dword [ecx]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x410]
mov dword [ecx], eax
mov edx, dword [ebp - 0x3a0]
add edx, dword [ebp - 0x390]
mov eax, dword [ebp - 0x410]
mov dword [eax], edx
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ebp - 0x390]
and edx, dword [ecx]
mov dword [ebp - 0x3a0], edx
mov eax, dword [ebp - 0x3a0]
add eax, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c8]
mov eax, dword [ebp - 0x33c]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x324]
mov dword [edx], ecx
movsx eax, word [section..data]
sub eax, 0x68ce
mov word [ebp - 0x1cc], ax
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x7b9]
add edx, eax
mov byte [ebp - 0x41d], dl
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x7c0]
movzx ecx, word [eax]
shl edx, cl
mov ecx, dword [ebp - 0x534]
mov word [ecx], dx
mov edx, dword [ebp - 0x400]
mov ecx, dword [ebp - 0x188]
shr edx, cl
mov dword [ebp - 0x4d8], edx
mov eax, dword [ebp - 0x188]
or eax, dword [ebp - 0x4d8]
mov ecx, dword [ebp - 0x64]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7c0]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x394]
xor eax, ecx
mov word [ebp - 0x4d4], ax
movzx edx, byte [ebp - 0x41d]
movzx eax, byte [ebp - 0x7b9]
and edx, eax
mov ecx, dword [ebp - 0x68]
mov byte [ecx], dl
mov edx, dword [ebp - 0x33c]
mov eax, dword [edx]
add eax, dword [ebp - 0x3a0]
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x400]
sub ecx, dword [ebp - 0x4d8]
mov dword [ebp - 0x188], ecx
mov edx, dword [ebp - 0x410]
mov eax, dword [edx]
add eax, dword [ebp - 0x3a0]
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x324]
mov eax, dword [ebp - 0x3a0]
sub eax, dword [edx]
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x534]
movzx ecx, word [eax]
add edx, ecx
mov word [ebp - 0x4d4], dx
movzx edx, byte [ebp - 0x7b9]
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
and edx, ecx
mov byte [ebp - 0x41d], dl
mov edx, dword [ebp - 0x54c]
mov eax, dword [edx]
sub eax, dword [ebp - 0x400]
mov ecx, dword [ebp - 0x54c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x334]
add edx, 0xc9
mov dword [ebp - 0x334], edx
mov eax, dword [ebp - 0x410]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x3a0]
mov edx, dword [ebp - 0x1c8]
mov dword [edx], ecx
movzx eax, word [ebp - 0x338]
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x7c0]
mov word [ecx], ax
cmp dword [ebp - 0x334], 0xe5d4
jne 0x451efd
movsx edx, word [ebp - 0x1cc]
movsx eax, word [section..data]
xor edx, eax
mov word [ebp - 0x208], dx
movzx ecx, word [ebp - 0x338]
movzx edx, word [ebp - 0x4d4]
or ecx, edx
mov word [ebp - 0x394], cx
mov eax, dword [ebp - 0x68]
movzx edx, byte [eax]
movzx ecx, byte [ebp - 0x41d]
sar edx, cl
mov eax, dword [ebp - 0x640]
mov byte [eax], dl
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x54c]
mov eax, dword [ecx]
mov ecx, dword [edx]
shl eax, cl
mov ecx, dword [ebp - 0x64]
mov dword [ecx], eax
mov edx, dword [ebp - 0x390]
and edx, dword [ebp - 0x3a0]
mov eax, dword [ebp - 0x1c8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x324]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x3a0]
mov dword [ebp - 0x390], edx
mov eax, dword [ebp - 0x214]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x400]
mov edx, dword [ebp - 0x64]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1c8]
mov ecx, dword [ebp - 0x390]
sub ecx, dword [eax]
mov dword [ebp - 0x3a0], ecx
mov edx, dword [ebp - 0x534]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
add eax, edx
mov word [ebp - 0x4d4], ax
movzx eax, byte [ebp - 0x41d]
movzx ecx, byte [ebp - 0x7b9]
sub eax, ecx
mov edx, dword [ebp - 0x68]
mov byte [edx], al
mov eax, dword [ebp - 0x410]
mov ecx, dword [ebp - 0x390]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x1c8]
mov dword [edx], ecx
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x400]
mov edx, dword [ebp - 0x64]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1c8]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x3a0]
mov dword [ebp - 0x390], ecx
mov edx, dword [ebp - 0x410]
mov eax, dword [ebp - 0x3a0]
mov ecx, dword [edx]
shl eax, cl
mov dword [ebp - 0x390], eax
movzx ecx, word [ebp - 0x394]
movzx edx, word [ebp - 0x4d4]
or ecx, edx
mov eax, dword [ebp - 0x534]
mov word [eax], cx
movzx ecx, byte [ebp - 0x41d]
movzx edx, byte [ebp - 0x7b9]
xor ecx, edx
mov eax, dword [ebp - 0x68]
mov byte [eax], cl
mov ecx, dword [ebp - 0x190]
add ecx, 0xb1
mov dword [ebp - 0x190], ecx
movsx edx, byte [ebp - 0x409]
sar edx, 7
mov byte [ebp - 0x409], dl
mov eax, dword [ebp - 0x324]
mov ecx, dword [ebp - 0x390]
add ecx, dword [eax]
mov edx, dword [ebp - 0x1c8]
mov dword [edx], ecx
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x214]
mov edx, dword [eax]
and edx, dword [ecx]
mov eax, dword [ebp - 0x54c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ebp - 0x390]
add edx, dword [ecx]
mov dword [ebp - 0x3a0], edx
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x640]
movzx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x41d], cl
movzx ecx, word [ebp - 0x4d4]
mov edx, dword [ebp - 0x7c0]
movzx eax, word [edx]
sub ecx, eax
mov word [ebp - 0x394], cx
mov ecx, dword [ebp - 0x54c]
mov edx, dword [ebp - 0x214]
mov eax, dword [ecx]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x54c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x410]
mov eax, dword [ebp - 0x3a0]
add eax, dword [edx]
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x324]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x390]
mov dword [ebp - 0x3a0], edx
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x188]
add ecx, dword [eax]
mov edx, dword [ebp - 0x54c]
mov dword [edx], ecx
movzx eax, byte [ebp - 0x41d]
movzx ecx, byte [ebp - 0x7b9]
and eax, ecx
mov edx, dword [ebp - 0x640]
mov byte [edx], al
mov eax, dword [ebp - 0x534]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x338]
xor ecx, edx
mov eax, dword [ebp - 0x7c0]
mov word [eax], cx
mov ecx, dword [ebp - 0x3a0]
or ecx, dword [ebp - 0x390]
mov edx, dword [ebp - 0x33c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x33c]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x3a0]
shl edx, cl
mov eax, dword [ebp - 0x1c8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x54c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x400]
shr edx, cl
mov eax, dword [ebp - 0x214]
mov dword [eax], edx
mov ecx, dword [ebp - 0x324]
mov edx, dword [ecx]
add edx, dword [ebp - 0x3a0]
mov dword [ebp - 0x390], edx
mov eax, dword [ebp - 0x324]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x1c8]
add ecx, dword [edx]
mov eax, dword [ebp - 0x33c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x4d4]
and edx, eax
mov ecx, dword [ebp - 0x534]
mov word [ecx], dx
movsx edx, byte [ebp - 0x409]
sub edx, 0x76
mov byte [ebp - 0x409], dl
movzx eax, word [ebp - 0x394]
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x7c0]
mov word [ecx], ax
movzx edx, byte [ebp - 0x41d]
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x7b9], dl
mov edx, dword [ebp - 0x214]
mov eax, dword [ebp - 0x54c]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov dword [ebp - 0x400], ecx
mov edx, dword [ebp - 0x1c8]
mov eax, dword [edx]
sub eax, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
movzx edx, word [ebp - 0x394]
movzx eax, word [ebp - 0x338]
add edx, eax
mov ecx, dword [ebp - 0x7c0]
mov word [ecx], dx
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x640]
movzx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x7b9], al
mov eax, dword [ebp - 0x4d8]
sub eax, dword [ebp - 0x400]
mov ecx, dword [ebp - 0x54c]
mov dword [ecx], eax
cmp dword [ebp - 0x190], 0xca65
jne 0x45219b
mov dl, byte [ebp - 0x409]
mov byte [ebp - 0x7f0], dl
cmp byte [ebp - 0x7f0], 0x89
je 0x452563
cmp byte [ebp - 0x7f0], 0xa
je 0x4525fe
jmp 0x452615
mov eax, dword [ebp - 0x390]
mov dword [ebp - 0x424], eax
mov edx, dword [ebp - 0x424]
mov ecx, dword [ebp - 0x3a0]
shl edx, cl
mov eax, dword [ebp - 0x1c8]
mov dword [eax], edx
mov dword [ebp - 0x554], 0xc1c
mov cl, byte [ebp - 0x7b9]
mov byte [ebp - 0x7f4], cl
cmp byte [ebp - 0x7f4], 0
je 0x4525a6
jmp 0x4525ec
lea edx, [ebp - 0x4d8]
mov dword [ebp - 0x20c], edx
lea eax, [ebp - 0x7b9]
mov dword [ebp - 0x1d8], eax
lea ecx, [ebp - 0x394]
mov dword [ebp - 0x4a8], ecx
mov edx, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x3a0]
sar edx, cl
mov dword [ebp - 0x424], edx
lea eax, [ebp - 0x3a0]
mov dword [ebp - 0x318], eax
jmp 0x4525fc
movsx ecx, byte [ebp - 0x409]
xor ecx, 0x6f
mov byte [ebp - 0x409], cl
jmp 0x452615
movzx edx, byte [ebp - 0x7b9]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
or edx, ecx
mov eax, dword [ebp - 0x68]
mov byte [eax], dl
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x338]
and edx, eax
mov ecx, dword [ebp - 0x7c0]
movzx eax, word [ecx]
movzx ecx, word [ebp - 0x4d4]
add eax, ecx
cmp edx, eax
jg 0x45274a
movzx edx, word [ebp - 0x338]
imul edx, edx, 0x2d8
mov word [ebp - 0x394], dx
mov dword [ebp - 0x498], 0xf3fc
movsx eax, byte [ebp - 0x409]
cmp eax, 0x1e
jg 0x452709
movzx ecx, byte [ebp - 0x7b9]
movzx edx, byte [ebp - 0x41d]
add ecx, edx
mov eax, dword [ebp - 0x68]
mov byte [eax], cl
lea ecx, [ebp - 0x400]
mov dword [ebp - 0x3f8], ecx
mov edx, dword [ebp - 0x3f8]
mov eax, dword [edx]
add eax, dword [ebp - 0x188]
mov dword [ebp - 0x400], eax
mov ecx, dword [ebp - 0x68]
mov dl, byte [ecx]
mov byte [ebp - 0x7f8], dl
cmp byte [ebp - 0x7f8], 0x57
je 0x4526ba
jmp 0x452707
mov eax, dword [ebp - 0x400]
push eax
call fcn.00457a40
lea ecx, [ebp - 0x6b8]
push ecx
call dword [sym.imp.COMDLG32.dll_FindTextA]
mov dword [ebp - 0x76c], eax
mov edx, dword [ebp - 0x410]
mov eax, dword [ebp - 0x318]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x324]
mov dword [edx], ecx
mov eax, dword [ebp - 0x318]
mov ecx, dword [ebp - 0x324]
mov edx, dword [eax]
or edx, dword [ecx]
mov dword [ebp - 0x424], edx
jmp 0x452745
movzx eax, word [ebp - 0x394]
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
sub eax, edx
movzx ecx, word [ebp - 0x338]
movzx edx, word [ebp - 0x4d4]
sub ecx, edx
cmp eax, ecx
jg 0x452745
mov eax, dword [ebp - 0x410]
mov ecx, dword [ebp - 0x424]
xor ecx, dword [eax]
mov edx, dword [ebp - 0x318]
mov dword [edx], ecx
jmp 0x452832
mov eax, dword [ebp - 0x390]
add eax, dword [ebp - 0x3a0]
mov ecx, dword [ebp - 0x318]
mov edx, dword [ecx]
and edx, dword [ebp - 0x424]
cmp eax, edx
jge 0x452832
movzx esi, word [ebp - 0x338]
movzx ecx, word [ebp - 0x4d4]
sar esi, cl
mov eax, dword [ebp - 0x7c0]
movzx eax, word [eax]
movzx ecx, word [ebp - 0x394]
cdq
idiv ecx
cmp esi, eax
jge 0x4527c3
movzx edx, word [ebp - 0x338]
mov eax, dword [ebp - 0x534]
movzx ecx, word [eax]
and edx, ecx
mov word [ebp - 0x4d4], dx
lea edx, [ebp - 0x1fc]
push edx
call dword [sym.imp.COMDLG32.dll_ChooseColorA]
mov dword [ebp - 8], eax
call fcn.00449860
jmp 0x452832
movsx eax, word [ebp - 0x208]
movsx ecx, word [ebp - 0x1cc]
shl eax, cl
movsx ecx, word [section..data]
cmp eax, ecx
jne 0x452832
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x41d]
add eax, ecx
mov edx, dword [ebp - 0x640]
mov byte [edx], al
lea eax, [ebp - 0x4d0]
push eax
call dword [sym.imp.COMDLG32.dll_ChooseColorA]
mov dword [ebp - 0x330], eax
mov ecx, dword [ebp - 0x54c]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x4d8]
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x318]
mov ecx, dword [ebp - 0x390]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x33c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x400]
add ecx, dword [eax]
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x54c]
mov edx, dword [edx]
and edx, dword [eax]
cmp ecx, edx
jb 0x45293a
lea eax, [ebp - 0x390]
mov dword [ebp - 0x200], eax
mov ecx, dword [ebp - 0x640]
mov dl, byte [ecx]
mov byte [ebp - 0x7fc], dl
cmp byte [ebp - 0x7fc], 0
je 0x45287d
jmp 0x452923
mov eax, dword [ebp - 0x3f8]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x188]
mov edx, dword [ebp - 0x3f8]
mov dword [edx], ecx
mov al, byte [ebp - 0x409]
mov byte [ebp - 0x800], al
cmp byte [ebp - 0x800], 0x89
je 0x4528b3
cmp byte [ebp - 0x800], 0x6b
je 0x4528e9
jmp 0x452921
movzx ecx, byte [ebp - 0x41d]
movzx edx, byte [ebp - 0x7b9]
add ecx, edx
mov eax, dword [ebp - 0x1d8]
mov byte [eax], cl
mov ecx, dword [ebp - 0x7c0]
mov dx, word [ecx]
mov word [ebp - 0x204], dx
mov al, byte [ebp - 0x409]
mov byte [ebp - 0x53d], al
jmp 0x452921
lea ecx, [ebp - 0x310]
push ecx
call dword [sym.imp.COMDLG32.dll_GetSaveFileNameA]
mov dword [ebp - 8], eax
mov edx, dword [ebp - 0x20c]
mov eax, dword [edx]
push eax
call fcn.00457a40
mov ecx, dword [ebp - 0x324]
mov edx, dword [ebp - 0x318]
mov eax, dword [ecx]
mov ecx, dword [edx]
shl eax, cl
mov ecx, dword [ebp - 0x1c8]
mov dword [ecx], eax
jmp 0x452935
mov edx, dword [ebp - 0x188]
or edx, dword [ebp - 0x4d8]
mov dword [ebp - 0x400], edx
jmp 0x452a21
mov eax, dword [ebp - 0x3f8]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x20c]
add ecx, dword [edx]
mov eax, dword [ebp - 0x214]
mov edx, dword [eax]
sub edx, dword [ebp - 0x400]
cmp ecx, edx
jae 0x452a21
lea eax, [ebp - 0x278]
push eax
call dword [sym.imp.COMDLG32.dll_GetSaveFileNameA]
mov dword [ebp - 0x330], eax
mov ecx, dword [ebp - 0x188]
mov dword [ebp - 0x804], ecx
cmp dword [ebp - 0x804], 0x32b13c8d
je 0x45298d
jmp 0x452a0b
mov edx, dword [ebp - 0x410]
mov eax, dword [ebp - 0x1c8]
mov edx, dword [edx]
mov ecx, dword [eax]
sar edx, cl
mov eax, dword [ebp - 0x200]
mov dword [eax], edx
movzx ecx, byte [ebp - 0x41d]
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [edx]
xor ecx, eax
mov byte [ebp - 0x7b9], cl
call fcn.00451300
push 0xd2
mov ecx, dword [ebp - 0x1d0]
push ecx
call dword [sym.imp.ADVAPI32.dll_DecryptFileA]
mov dword [ebp - 0x538], eax
movzx edx, word [ebp - 0x338]
movzx eax, word [ebp - 0x204]
and edx, eax
mov ecx, dword [ebp - 0x7c0]
mov word [ecx], dx
mov edx, dword [ebp - 0x410]
mov eax, dword [edx]
sub eax, dword [ebp - 0x3a0]
mov dword [ebp - 0x424], eax
jmp 0x452a21
mov ecx, dword [ebp - 0x54c]
mov edx, dword [ebp - 0x400]
add edx, dword [ecx]
mov eax, dword [ebp - 0x20c]
mov dword [eax], edx
mov dword [ebp - 0x1c4], 0x12a2
mov ecx, dword [ebp - 0x324]
mov edx, dword [ebp - 0x3a0]
add edx, dword [ecx]
mov dword [ebp - 0x390], edx
lea eax, [ebp - 0x424]
mov dword [ebp - 0x774], eax
mov ecx, dword [ebp - 0x214]
mov edx, dword [ebp - 0x188]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x20c]
add ecx, dword [eax]
cmp edx, ecx
jae 0x452a94
lea ecx, [ebp - 0x278]
push ecx
call dword [sym.imp.COMDLG32.dll_GetSaveFileNameA]
mov dword [ebp - 0x6fc], eax
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x7b9]
and eax, ecx
mov edx, dword [ebp - 0x68]
mov byte [edx], al
movzx eax, word [ebp - 0x4d4]
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x7c0]
mov word [ecx], ax
mov edx, dword [ebp - 0x400]
mov dword [ebp - 0x808], edx
cmp dword [ebp - 0x808], 0x1ea16838
je 0x452ac9
jmp 0x452af3
mov eax, dword [ebp - 0x188]
sub eax, dword [ebp - 0x400]
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x410]
mov edx, dword [ecx]
add edx, dword [ebp - 0x3a0]
mov eax, dword [ebp - 0x410]
mov dword [eax], edx
jmp 0x452b49
mov ecx, dword [ebp - 0x390]
or ecx, dword [ebp - 0x3a0]
mov dword [ebp - 0x424], ecx
lea edx, [ebp - 0x390]
mov dword [ebp - 0x7a8], edx
mov dword [ebp - 0x18c], 0x8184
mov eax, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x424]
sar eax, cl
mov ecx, dword [ebp - 0x774]
mov dword [ecx], eax
mov dl, byte [ebp - 0x409]
mov byte [ebp - 0x761], dl
lea eax, [ebp - 0x208]
mov dword [ebp - 0x184], eax
mov ecx, dword [ebp - 0x410]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x424]
shl edx, cl
mov eax, dword [ebp - 0x318]
mov ecx, dword [ebp - 0x390]
xor ecx, dword [eax]
cmp edx, ecx
jge 0x452c5e
movsx edx, word [ebp - 0x208]
mov eax, dword [ebp - 0x184]
movsx ecx, word [eax]
and edx, ecx
movsx eax, word [ebp - 0x1cc]
movsx ecx, word [section..data]
imul eax, ecx
cmp edx, eax
je 0x452c4b
mov dl, byte [ebp - 0x53d]
mov byte [ebp - 0x80c], dl
cmp byte [ebp - 0x80c], 0xd
je 0x452c33
cmp byte [ebp - 0x80c], 0x11
je 0x452bc1
jmp 0x452c49
movzx eax, byte [ebp - 0x7b9]
mov ecx, dword [ebp - 0x640]
movzx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x41d], al
lea eax, [ebp - 0x3f8]
push eax
push 0x2a
push 0xc5
mov ecx, dword [ebp - 0x7a4]
push ecx
call sub.VERSION.dll_GetFileVersionInfoA
mov dword [ebp - 0x778], eax
mov edx, dword [ebp - 0x188]
push edx
call fcn.00457a40
movzx eax, word [ebp - 0x338]
movzx ecx, word [ebp - 0x394]
add eax, ecx
mov edx, dword [ebp - 0x534]
mov word [edx], ax
lea eax, [ebp - 0x4d0]
push eax
call dword [sym.imp.COMDLG32.dll_ChooseColorA]
mov dword [ebp - 0x550], eax
jmp 0x452c49
mov ecx, dword [ebp - 0x214]
mov edx, dword [ebp - 0x20c]
mov eax, dword [ecx]
sub eax, dword [edx]
mov dword [ebp - 0x4d8], eax
jmp 0x452c5e
mov ecx, dword [ebp - 0x20c]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x400]
mov eax, dword [ebp - 0x64]
mov dword [eax], edx
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x41d]
add edx, eax
mov byte [ebp - 0x7b9], dl
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x7c0]
movzx ecx, word [eax]
and edx, ecx
mov word [ebp - 0x4d4], dx
mov edx, dword [ebp - 0x7a8]
mov eax, dword [ebp - 0x424]
sub eax, dword [edx]
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x20c]
mov edx, dword [ebp - 0x4d8]
or edx, dword [ecx]
mov dword [ebp - 0x400], edx
mov eax, dword [ebp - 0x1c8]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x390]
shl edx, cl
mov eax, dword [ebp - 0x7a8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x424]
xor ecx, dword [ebp - 0x3a0]
mov dword [ebp - 0x390], ecx
movzx edx, byte [ebp - 0x7b9]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 0x41d], dl
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x394]
add edx, eax
mov word [ebp - 0x204], dx
mov ecx, dword [ebp - 0x54c]
mov edx, dword [ebp - 0x188]
and edx, dword [ecx]
mov dword [ebp - 0x400], edx
mov eax, dword [ebp - 0x200]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x3a0]
mov dword [ebp - 0x390], ecx
mov edx, dword [ebp - 0x184]
movsx eax, word [edx]
movsx ecx, word [ebp - 0x208]
add eax, ecx
mov edx, dword [ebp - 0x184]
mov word [edx], ax
movsx eax, byte [ebp - 0x409]
movsx ecx, byte [ebp - 0x53d]
sub eax, ecx
mov byte [ebp - 0x761], al
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x7b9]
sub eax, ecx
mov byte [ebp - 0x41d], al
mov edx, dword [ebp - 0x658]
add edx, 0x49
mov dword [ebp - 0x658], edx
mov eax, dword [ebp - 0x534]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x7c0]
movzx eax, word [edx]
sub ecx, eax
mov word [ebp - 0x394], cx
mov ecx, dword [ebp - 0x400]
sub ecx, dword [ebp - 0x4d8]
mov edx, dword [ebp - 0x3f8]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x318]
add ecx, dword [edx]
mov eax, dword [ebp - 0x1c8]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [ebp - 0x424]
and edx, dword [ecx]
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x64]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x188]
shl edx, cl
mov dword [ebp - 0x4d8], edx
mov eax, dword [ebp - 0x1c8]
mov ecx, dword [ebp - 0x200]
mov edx, dword [eax]
xor edx, dword [ecx]
mov eax, dword [ebp - 0x774]
mov dword [eax], edx
movzx ecx, word [ebp - 0x204]
movzx edx, word [ebp - 0x338]
or ecx, edx
mov eax, dword [ebp - 0x7c0]
mov word [eax], cx
movzx edx, byte [ebp - 0x7b9]
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 0x41d], dl
mov ecx, dword [ebp - 0x200]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x7a8]
add edx, dword [eax]
mov dword [ebp - 0x424], edx
cmp dword [ebp - 0x658], 0xa931
jb 0x452c5e
mov ecx, dword [ebp - 0x410]
mov edx, dword [ecx]
mov dword [ebp - 0x810], edx
cmp dword [ebp - 0x810], 0
je 0x452ea9
cmp dword [ebp - 0x810], 0x13ff23a9
je 0x452e8f
jmp 0x452eef
lea eax, [ebp - 0x180]
push eax
call dword [sym.imp.COMDLG32.dll_PageSetupDlgA]
mov dword [ebp - 0x550], eax
call fcn.00449860
jmp 0x452eef
lea ecx, [ebp - 0x400]
mov dword [ebp - 0x75c], ecx
mov edx, dword [ebp - 0x3a0]
sub edx, dword [ebp - 0x424]
mov eax, dword [ebp - 0x200]
mov dword [eax], edx
mov ecx, dword [ebp - 0x424]
mov dword [ebp - 0x7b0], ecx
movzx edx, word [ebp - 0x204]
mov eax, dword [ebp - 0x534]
movzx ecx, word [eax]
imul edx, ecx
mov word [ebp - 0x4d4], dx
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x41d]
and eax, ecx
mov edx, dword [ebp - 0x640]
mov byte [edx], al
movsx eax, byte [ebp - 0x409]
movsx ecx, byte [ebp - 0x53d]
sub eax, ecx
mov byte [ebp - 0x761], al
movsx edx, word [ebp - 0x208]
movsx eax, word [section..data]
sub edx, eax
mov word [ebp - 0x1cc], dx
mov ecx, dword [ebp - 0x400]
add ecx, dword [ebp - 0x4d8]
mov edx, dword [ebp - 0x64]
mov dword [edx], ecx
mov eax, dword [ebp - 0x424]
add eax, dword [ebp - 0x3a0]
mov ecx, dword [ebp - 0x324]
mov dword [ecx], eax
mov edx, dword [ebp - 0x640]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x640]
mov byte [ecx], al
movzx edx, word [ebp - 0x4d4]
movzx eax, word [ebp - 0x204]
add edx, eax
mov word [ebp - 0x394], dx
mov ecx, dword [ebp - 0x4d8]
add ecx, dword [ebp - 0x400]
mov edx, dword [ebp - 0x214]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [ebp - 0x390]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x200]
mov dword [edx], ecx
mov eax, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x424]
sar eax, cl
mov ecx, dword [ebp - 0x324]
mov dword [ecx], eax
mov edx, dword [ebp - 0x3f8]
mov eax, dword [edx]
or eax, dword [ebp - 0x400]
mov ecx, dword [ebp - 0x75c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x4a8]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x338]
shl eax, cl
mov ecx, dword [ebp - 0x4a8]
mov word [ecx], ax
movzx edx, byte [ebp - 0x7b9]
movzx eax, byte [ebp - 0x41d]
xor edx, eax
mov ecx, dword [ebp - 0x68]
mov byte [ecx], dl
mov edx, dword [ebp - 0x4a0]
sub edx, 0xb6
mov dword [ebp - 0x4a0], edx
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x3a0]
mov dword [ebp - 0x7b0], ecx
mov edx, dword [ebp - 0x1c8]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x33c]
add eax, dword [ecx]
mov edx, dword [ebp - 0x200]
mov dword [edx], eax
mov eax, dword [ebp - 0x20c]
mov ecx, dword [ebp - 0x54c]
mov edx, dword [eax]
sub edx, dword [ecx]
mov dword [ebp - 0x4d8], edx
mov eax, dword [ebp - 0x200]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x390]
mov edx, dword [ebp - 0x7a8]
mov dword [edx], ecx
mov eax, dword [ebp - 0x33c]
mov ecx, dword [ebp - 0x7b0]
add ecx, dword [eax]
mov edx, dword [ebp - 0x410]
mov dword [edx], ecx
mov eax, dword [ebp - 0x184]
movsx ecx, word [eax]
movsx edx, word [ebp - 0x208]
sub ecx, edx
mov word [ebp - 0x1cc], cx
movsx eax, byte [ebp - 0x409]
movsx ecx, byte [ebp - 0x761]
sub eax, ecx
mov byte [ebp - 0x53d], al
mov edx, dword [ebp - 0x7c0]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
add eax, edx
mov ecx, dword [ebp - 0x4a8]
mov word [ecx], ax
movzx edx, byte [ebp - 0x7b9]
mov eax, dword [ebp - 0x1d8]
movzx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x41d], dl
mov edx, dword [ebp - 0x3f8]
mov eax, dword [ebp - 0x214]
mov ecx, dword [edx]
or ecx, dword [eax]
mov dword [ebp - 0x400], ecx
mov edx, dword [ebp - 0x200]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x390]
shl eax, cl
mov dword [ebp - 0x3a0], eax
movzx ecx, byte [ebp - 0x7b9]
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [edx]
xor ecx, eax
mov byte [ebp - 0x41d], cl
movzx edx, word [ebp - 0x4d4]
movzx ecx, word [ebp - 0x204]
sar edx, cl
mov eax, dword [ebp - 0x4a8]
mov word [eax], dx
mov ecx, dword [ebp - 0x214]
mov edx, dword [ebp - 0x4d8]
and edx, dword [ecx]
mov eax, dword [ebp - 0x3f8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x324]
mov edx, dword [ecx]
add edx, dword [ebp - 0x390]
mov dword [ebp - 0x3a0], edx
mov eax, dword [ebp - 0x410]
mov ecx, dword [ebp - 0x424]
add ecx, dword [eax]
mov edx, dword [ebp - 0x200]
mov dword [edx], ecx
mov eax, dword [ebp - 0x3f8]
mov ecx, dword [ebp - 0x400]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x64]
mov dword [edx], ecx
movzx eax, word [ebp - 0x394]
movzx ecx, word [ebp - 0x338]
sub eax, ecx
mov edx, dword [ebp - 0x7c0]
mov word [edx], ax
movzx eax, byte [ebp - 0x7b9]
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
and eax, edx
mov byte [ebp - 0x41d], al
mov eax, dword [ebp - 0x33c]
mov ecx, dword [ebp - 0x200]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x774]
mov dword [eax], edx
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ebp - 0x3a0]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x774]
mov dword [eax], edx
movsx ecx, word [ebp - 0x208]
movsx edx, word [ebp - 0x1cc]
add ecx, edx
mov eax, dword [ebp - 0x184]
mov word [eax], cx
cmp dword [ebp - 0x4a0], 0x4b7c
ja 0x452eef
mov ecx, dword [ebp - 0x184]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x1cc]
add edx, eax
mov word [ebp - 0x208], dx
movzx ecx, word [ebp - 0x4d4]
movzx edx, word [ebp - 0x204]
xor ecx, edx
mov eax, dword [ebp - 0x7c0]
mov word [eax], cx
movzx edx, byte [ebp - 0x41d]
movzx ecx, byte [ebp - 0x7b9]
sar edx, cl
mov eax, dword [ebp - 0x68]
mov byte [eax], dl
mov edx, dword [ebp - 0x400]
mov ecx, dword [ebp - 0x4d8]
shl edx, cl
mov eax, dword [ebp - 0x3f8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x400]
or edx, dword [ecx]
mov eax, dword [ebp - 0x54c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ebp - 0x424]
and edx, dword [ecx]
mov eax, dword [ebp - 0x318]
mov dword [eax], edx
mov ecx, dword [ebp - 0x410]
mov edx, dword [ecx]
add edx, dword [ebp - 0x3a0]
mov dword [ebp - 0x424], edx
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [ebp - 0x424]
add ecx, dword [eax]
mov edx, dword [ebp - 0x324]
mov dword [edx], ecx
movzx eax, byte [ebp - 0x41d]
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x7b9], al
mov eax, dword [ebp - 0x7c0]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x204]
sub ecx, edx
mov word [ebp - 0x4d4], cx
mov eax, dword [ebp - 0x3f8]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x400]
mov edx, dword [ebp - 0x75c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x318]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x390]
mov dword [ebp - 0x3a0], ecx
mov edx, dword [ebp - 0x390]
add edx, dword [ebp - 0x7b0]
mov eax, dword [ebp - 0x324]
mov dword [eax], edx
mov ecx, dword [ebp - 0x54c]
mov edx, dword [ebp - 0x400]
sub edx, dword [ecx]
mov dword [ebp - 0x4d8], edx
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x7b9], cl
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
movzx ecx, word [ebp - 0x338]
sar edx, cl
mov word [ebp - 0x4d4], dx
mov eax, dword [ebp - 0x75c]
mov ecx, dword [ebp - 0x214]
mov edx, dword [eax]
or edx, dword [ecx]
mov eax, dword [ebp - 0x3f8]
mov dword [eax], edx
movsx edx, word [ebp - 0x1cc]
movsx ecx, word [ebp - 0x208]
shl edx, cl
mov eax, dword [ebp - 0x184]
mov word [eax], dx
mov ecx, dword [ebp - 0x75c]
mov edx, dword [ebp - 0x188]
xor edx, dword [ecx]
mov eax, dword [ebp - 0x214]
mov dword [eax], edx
mov ecx, dword [ebp - 0x200]
mov edx, dword [ecx]
and edx, dword [ebp - 0x7b0]
mov eax, dword [ebp - 0x318]
mov dword [eax], edx
mov ecx, dword [ebp - 0x1d8]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x41d], dl
mov edx, dword [ebp - 0x534]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x338]
sub eax, ecx
mov edx, dword [ebp - 0x4a8]
mov word [edx], ax
mov eax, dword [ebp - 0x1c8]
mov ecx, dword [ebp - 0x3a0]
sub ecx, dword [eax]
mov dword [ebp - 0x390], ecx
mov edx, dword [ebp - 0x3f8]
mov eax, dword [edx]
add eax, dword [ebp - 0x4d8]
mov ecx, dword [ebp - 0x54c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x774]
mov eax, dword [ebp - 0x390]
add eax, dword [edx]
mov ecx, dword [ebp - 0x200]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7a8]
mov eax, dword [ebp - 0x424]
add eax, dword [edx]
mov ecx, dword [ebp - 0x774]
mov dword [ecx], eax
movzx edx, byte [ebp - 0x41d]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
and edx, ecx
mov byte [ebp - 0x7b9], dl
movzx edx, word [ebp - 0x338]
mov eax, dword [ebp - 0x4a8]
movzx ecx, word [eax]
sub edx, ecx
mov eax, dword [ebp - 0x534]
mov word [eax], dx
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x400]
or edx, dword [ecx]
mov eax, dword [ebp - 0x54c]
mov dword [eax], edx
mov edx, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x3a0]
shl edx, cl
mov eax, dword [ebp - 0x774]
mov dword [eax], edx
mov ecx, dword [ebp - 0x7b0]
xor ecx, dword [ebp - 0x424]
mov dword [ebp - 0x390], ecx
mov edx, dword [ebp - 0x774]
mov eax, dword [ebp - 0x1c8]
mov edx, dword [edx]
mov ecx, dword [eax]
sar edx, cl
mov eax, dword [ebp - 0x200]
mov dword [eax], edx
mov ecx, dword [ebp - 0x424]
add ecx, dword [ebp - 0x3a0]
mov dword [ebp - 0x7b0], ecx
movsx edx, byte [ebp - 0x409]
movsx eax, byte [ebp - 0x761]
and edx, eax
mov byte [ebp - 0x53d], dl
mov ecx, dword [ebp - 0x184]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x1cc]
sub edx, eax
mov word [ebp - 0x208], dx
mov ecx, dword [ebp - 0x640]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x41d]
sub edx, eax
mov byte [ebp - 0x7b9], dl
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x4d4]
sub edx, eax
mov ecx, dword [ebp - 0x7c0]
mov word [ecx], dx
mov edx, dword [ebp - 0x4d8]
add edx, dword [ebp - 0x188]
mov dword [ebp - 0x400], edx
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x400]
add ecx, dword [eax]
mov edx, dword [ebp - 0x54c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7c0]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x4a8]
movzx eax, word [edx]
sub ecx, eax
mov edx, dword [ebp - 0x534]
mov word [edx], cx
mov eax, dword [ebp - 0x320]
sub eax, 0xc8
mov dword [ebp - 0x320], eax
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x7b9]
add edx, eax
mov ecx, dword [ebp - 0x640]
mov byte [ecx], dl
mov edx, dword [ebp - 0x324]
mov eax, dword [edx]
and eax, dword [ebp - 0x7b0]
mov dword [ebp - 0x3a0], eax
mov ecx, dword [ebp - 0x3f8]
mov edx, dword [ecx]
xor edx, dword [ebp - 0x4d8]
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x200]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x390]
shl edx, cl
mov dword [ebp - 0x3a0], edx
mov eax, dword [ebp - 0x7b0]
or eax, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x318]
mov dword [ecx], eax
movzx edx, word [ebp - 0x394]
mov eax, dword [ebp - 0x534]
movzx ecx, word [eax]
sar edx, cl
mov ecx, dword [ebp - 0x7c0]
mov word [ecx], dx
movzx edx, byte [ebp - 0x7b9]
mov eax, dword [ebp - 0x1d8]
movzx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x41d], dl
mov edx, dword [ebp - 0x20c]
mov eax, dword [ebp - 0x188]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x75c]
mov dword [ecx], eax
cmp dword [ebp - 0x320], 0x856b
ja 0x453227
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x75c]
mov ecx, dword [edx]
and ecx, dword [eax]
mov edx, dword [ebp - 0x3f8]
mov eax, dword [ebp - 0x54c]
mov edx, dword [edx]
sub edx, dword [eax]
cmp ecx, edx
jb 0x457952
movzx eax, word [ebp - 0x4d4]
movzx ecx, word [ebp - 0x338]
add eax, ecx
mov edx, dword [ebp - 0x7c0]
mov word [edx], ax
mov eax, dword [ebp - 0x20c]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x3f8]
add ecx, dword [edx]
mov dword [ebp - 0x188], ecx
mov eax, dword [ebp - 0x18c]
add eax, 0x19
mov dword [ebp - 0x18c], eax
mov ecx, dword [ebp - 0x7b0]
add ecx, dword [ebp - 0x390]
mov edx, dword [ebp - 0x1c8]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1c8]
mov edx, dword [ebp - 0x390]
mov ecx, dword [eax]
shl edx, cl
mov dword [ebp - 0x3a0], edx
mov eax, dword [ebp - 0x3f8]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x4d8]
shr edx, cl
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x390]
xor eax, dword [ebp - 0x424]
mov ecx, dword [ebp - 0x774]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7c0]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
or eax, edx
mov word [ebp - 0x4d4], ax
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
and ecx, eax
mov edx, dword [ebp - 0x1d8]
mov byte [edx], cl
mov eax, dword [ebp - 0x1c8]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x7a8]
add ecx, dword [edx]
mov eax, dword [ebp - 0x774]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x20c]
mov edx, dword [ebp - 0x400]
add edx, dword [ecx]
mov eax, dword [ebp - 0x54c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x324]
mov edx, dword [ebp - 0x7b0]
and edx, dword [ecx]
mov dword [ebp - 0x424], edx
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x390]
mov dword [ebp - 0x7b0], ecx
mov edx, dword [ebp - 0x640]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x1d8]
movzx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x41d], al
mov eax, dword [ebp - 0x534]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x4a8]
movzx eax, word [edx]
sub ecx, eax
mov edx, dword [ebp - 0x534]
mov word [edx], cx
movsx eax, byte [ebp - 0x53d]
movsx ecx, byte [ebp - 0x409]
sub eax, ecx
mov byte [ebp - 0x761], al
mov edx, dword [ebp - 0x184]
movsx eax, word [edx]
movsx ecx, word [ebp - 0x1cc]
sub eax, ecx
mov word [ebp - 0x208], ax
mov edx, dword [ebp - 0x64]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x400]
shr eax, cl
mov ecx, dword [ebp - 0x75c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x324]
mov eax, dword [edx]
xor eax, dword [ebp - 0x424]
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x640]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x1d8]
movzx ecx, byte [eax]
or edx, ecx
mov byte [ebp - 0x7b9], dl
mov edx, dword [ebp - 0x534]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x4a8]
movzx ecx, word [ecx]
shl eax, cl
mov edx, dword [ebp - 0x7c0]
mov word [edx], ax
mov eax, dword [ebp - 0x214]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x188]
mov edx, dword [ebp - 0x54c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x324]
mov ecx, dword [ebp - 0x390]
add ecx, dword [eax]
mov edx, dword [ebp - 0x200]
mov dword [edx], ecx
mov eax, dword [ebp - 0x774]
mov ecx, dword [ebp - 0x390]
add ecx, dword [eax]
mov dword [ebp - 0x3a0], ecx
mov edx, dword [ebp - 0x20c]
mov eax, dword [edx]
add eax, dword [ebp - 0x188]
mov ecx, dword [ebp - 0x54c]
mov dword [ecx], eax
movzx edx, byte [ebp - 0x41d]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x1d8]
mov byte [eax], dl
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x338]
and edx, eax
mov word [ebp - 0x204], dx
mov ecx, dword [ebp - 0x7a8]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x424]
mov eax, dword [ebp - 0x324]
mov dword [eax], edx
mov ecx, dword [ebp - 0x200]
mov edx, dword [ebp - 0x3a0]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x774]
mov dword [eax], edx
mov ecx, dword [ebp - 0x188]
sub ecx, dword [ebp - 0x400]
mov dword [ebp - 0x4d8], ecx
mov edx, dword [ebp - 0x774]
mov eax, dword [ebp - 0x7b0]
add eax, dword [edx]
mov ecx, dword [ebp - 0x318]
mov dword [ecx], eax
mov edx, dword [ebp - 0x3a0]
mov ecx, dword [ebp - 0x424]
sar edx, cl
mov eax, dword [ebp - 0x410]
mov dword [eax], edx
movsx ecx, word [ebp - 0x208]
movsx edx, word [ebp - 0x1cc]
or ecx, edx
mov eax, dword [ebp - 0x184]
mov word [eax], cx
movsx edx, byte [ebp - 0x53d]
movsx ecx, byte [ebp - 0x409]
shl edx, cl
mov byte [ebp - 0x761], dl
mov eax, dword [ebp - 0x1d8]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
xor ecx, eax
mov edx, dword [ebp - 0x1d8]
mov byte [edx], cl
movzx eax, word [ebp - 0x204]
movzx ecx, word [ebp - 0x4d4]
and eax, ecx
mov edx, dword [ebp - 0x534]
mov word [edx], ax
mov eax, dword [ebp - 0x400]
sub eax, dword [ebp - 0x188]
mov ecx, dword [ebp - 0x214]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c8]
mov eax, dword [ebp - 0x390]
sub eax, dword [edx]
mov dword [ebp - 0x7b0], eax
cmp dword [ebp - 0x18c], 0x8a35
jb 0x4536c1
cmp dword [ebp - 0x690], 0x55cd
jb 0x453e5e
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x4a8]
movzx ecx, word [eax]
add edx, ecx
mov eax, dword [ebp - 0x7c0]
mov word [eax], dx
movzx ecx, byte [ebp - 0x41d]
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x7b9], cl
mov ecx, dword [ebp - 0x4d8]
add ecx, dword [ebp - 0x188]
mov edx, dword [ebp - 0x214]
mov dword [edx], ecx
mov eax, dword [ebp - 0x33c]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x7b0]
mov dword [ebp - 0x424], ecx
mov edx, dword [ebp - 0x410]
mov eax, dword [ebp - 0x424]
add eax, dword [edx]
mov ecx, dword [ebp - 0x774]
mov dword [ecx], eax
mov edx, dword [ebp - 0x4d8]
sub edx, dword [ebp - 0x188]
mov dword [ebp - 0x400], edx
movzx eax, word [ebp - 0x204]
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
add eax, edx
mov ecx, dword [ebp - 0x4a8]
mov word [ecx], ax
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x1d8]
movzx edx, byte [ecx]
or eax, edx
mov byte [ebp - 0x41d], al
mov eax, dword [ebp - 0x200]
mov ecx, dword [ebp - 0x7a8]
mov edx, dword [eax]
mov ecx, dword [ecx]
sar edx, cl
mov dword [ebp - 0x424], edx
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [eax]
xor ecx, dword [ebp - 0x424]
mov dword [ebp - 0x390], ecx
movsx edx, word [ebp - 0x1cc]
movsx ecx, word [ebp - 0x208]
shl edx, cl
mov eax, dword [ebp - 0x184]
mov word [eax], dx
movsx ecx, byte [ebp - 0x53d]
movsx edx, byte [ebp - 0x761]
and ecx, edx
mov byte [ebp - 0x409], cl
movzx eax, word [ebp - 0x338]
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
sub eax, edx
mov word [ebp - 0x394], ax
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x41d]
add ecx, edx
mov eax, dword [ebp - 0x640]
mov byte [eax], cl
mov ecx, dword [ebp - 0x54c]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x4d8]
mov eax, dword [ebp - 0x75c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x188]
add ecx, dword [ebp - 0x4d8]
mov dword [ebp - 0x400], ecx
mov edx, dword [ebp - 0x1c8]
mov eax, dword [edx]
sub eax, dword [ebp - 0x390]
mov dword [ebp - 0x424], eax
mov ecx, dword [ebp - 0x3a0]
add ecx, dword [ebp - 0x7b0]
mov edx, dword [ebp - 0x1c8]
mov dword [edx], ecx
mov eax, dword [ebp - 0x318]
mov ecx, dword [ebp - 0x7b0]
and ecx, dword [eax]
mov dword [ebp - 0x390], ecx
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x7b9]
add eax, ecx
mov byte [ebp - 0x41d], al
movzx edx, word [ebp - 0x204]
movzx ecx, word [ebp - 0x394]
sar edx, cl
mov eax, dword [ebp - 0x4a8]
mov word [eax], dx
mov ecx, dword [ebp - 0x54c]
mov edx, dword [ebp - 0x3f8]
mov eax, dword [ecx]
or eax, dword [edx]
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ebp - 0x324]
mov eax, dword [ecx]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x200]
mov dword [ecx], eax
mov edx, dword [ebp - 0x424]
mov ecx, dword [ebp - 0x3a0]
shl edx, cl
mov eax, dword [ebp - 0x1c8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x400]
add ecx, dword [ebp - 0x188]
mov dword [ebp - 0x4d8], ecx
movzx edx, byte [ebp - 0x41d]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
and edx, ecx
mov eax, dword [ebp - 0x1d8]
mov byte [eax], dl
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x4d4]
sub edx, eax
mov word [ebp - 0x204], dx
mov ecx, dword [ebp - 0x324]
mov edx, dword [ebp - 0x3a0]
add edx, dword [ecx]
mov eax, dword [ebp - 0x1c8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x184]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x208]
sub edx, eax
mov ecx, dword [ebp - 0x184]
mov word [ecx], dx
mov edx, dword [ebp - 0x54c]
mov eax, dword [ebp - 0x64]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov dword [ebp - 0x4d8], ecx
mov edx, dword [ebp - 0x200]
mov eax, dword [ebp - 0x3a0]
sub eax, dword [edx]
mov dword [ebp - 0x390], eax
movzx ecx, byte [ebp - 0x41d]
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x7b9], cl
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x534]
movzx ecx, word [eax]
add edx, ecx
mov eax, dword [ebp - 0x4a8]
mov word [eax], dx
mov ecx, dword [ebp - 0x774]
mov edx, dword [ecx]
and edx, dword [ebp - 0x424]
mov dword [ebp - 0x390], edx
mov eax, dword [ebp - 0x54c]
mov ecx, dword [eax]
xor ecx, dword [ebp - 0x188]
mov dword [ebp - 0x4d8], ecx
mov edx, dword [ebp - 0x1c8]
mov eax, dword [ebp - 0x390]
or eax, dword [edx]
mov ecx, dword [ebp - 0x318]
mov dword [ecx], eax
mov edx, dword [ebp - 0x33c]
mov eax, dword [ebp - 0x424]
mov ecx, dword [edx]
shl eax, cl
mov ecx, dword [ebp - 0x200]
mov dword [ecx], eax
movzx edx, word [ebp - 0x394]
mov eax, dword [ebp - 0x534]
movzx ecx, word [eax]
sar edx, cl
mov word [ebp - 0x4d4], dx
mov ecx, dword [ebp - 0x1d8]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x68]
mov byte [eax], dl
mov ecx, dword [ebp - 0x400]
add ecx, dword [ebp - 0x4d8]
mov edx, dword [ebp - 0x20c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x424]
and eax, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x774]
mov dword [ecx], eax
mov edx, dword [ebp - 0x200]
mov eax, dword [ebp - 0x324]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov dword [ebp - 0x424], ecx
mov edx, dword [ebp - 0x410]
mov eax, dword [ebp - 0x390]
add eax, dword [edx]
mov dword [ebp - 0x7b0], eax
mov ecx, dword [ebp - 0x318]
mov edx, dword [ecx]
add edx, dword [ebp - 0x390]
mov eax, dword [ebp - 0x324]
mov dword [eax], edx
movsx ecx, word [ebp - 0x208]
movsx edx, word [ebp - 0x1cc]
add ecx, edx
mov eax, dword [ebp - 0x184]
mov word [eax], cx
mov ecx, dword [ebp - 0x690]
sub ecx, 0x6d
mov dword [ebp - 0x690], ecx
movsx edx, word [ebp - 0x1cc]
mov eax, dword [ebp - 0x184]
movsx ecx, word [eax]
sub edx, ecx
mov word [ebp - 0x208], dx
movzx edx, byte [ebp - 0x41d]
movzx eax, byte [ebp - 0x7b9]
sub edx, eax
mov ecx, dword [ebp - 0x640]
mov byte [ecx], dl
jmp 0x453a16
mov dx, word [ebp - 0x338]
mov word [ebp - 0x558], dx
mov eax, dword [ebp - 0x54c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x4d8]
mov edx, dword [ebp - 0x54c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x20c]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x188]
mov edx, dword [ebp - 0x64]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1d8]
movzx edx, byte [eax]
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
shl edx, cl
mov ecx, dword [ebp - 0x640]
mov byte [ecx], dl
movzx edx, word [ebp - 0x204]
movzx ecx, word [ebp - 0x4d4]
sar edx, cl
mov word [ebp - 0x558], dx
mov eax, dword [ebp - 0x3a0]
xor eax, dword [ebp - 0x424]
mov dword [ebp - 0x7b0], eax
mov ecx, dword [ebp - 0x214]
mov edx, dword [ecx]
or edx, dword [ebp - 0x400]
mov eax, dword [ebp - 0x64]
mov dword [eax], edx
mov ecx, dword [ebp - 0x3a0]
and ecx, dword [ebp - 0x7b0]
mov dword [ebp - 0x424], ecx
mov edx, dword [ebp - 0x7a8]
mov eax, dword [ebp - 0x3a0]
add eax, dword [edx]
mov dword [ebp - 0x424], eax
movzx ecx, byte [ebp - 0x7b9]
movzx edx, byte [ebp - 0x41d]
sub ecx, edx
mov eax, dword [ebp - 0x640]
mov byte [eax], cl
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x338]
and edx, eax
mov ecx, dword [ebp - 0x534]
mov word [ecx], dx
mov edx, dword [ebp - 0x188]
sub edx, dword [ebp - 0x4d8]
mov eax, dword [ebp - 0x75c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x200]
mov edx, dword [ebp - 0x7b0]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x7a8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x534]
movzx ecx, word [eax]
add edx, ecx
mov eax, dword [ebp - 0x4a8]
mov word [eax], dx
movsx ecx, word [ebp - 0x1cc]
mov edx, dword [ebp - 0x184]
movsx eax, word [edx]
sub ecx, eax
mov word [ebp - 0x208], cx
movzx ecx, word [ebp - 0x204]
mov edx, dword [ebp - 0x534]
movzx eax, word [edx]
add ecx, eax
mov edx, dword [ebp - 0x7c0]
mov word [edx], cx
mov eax, dword [ebp - 0x1d8]
movzx edx, byte [eax]
movzx ecx, byte [ebp - 0x7b9]
shl edx, cl
mov eax, dword [ebp - 0x1d8]
mov byte [eax], dl
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x4d8]
xor edx, dword [ecx]
mov eax, dword [ebp - 0x3f8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x324]
mov edx, dword [ebp - 0x390]
mov ecx, dword [ecx]
sar edx, cl
mov eax, dword [ebp - 0x774]
mov dword [eax], edx
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ebp - 0x7b0]
or edx, dword [ecx]
mov eax, dword [ebp - 0x7a8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x400]
and ecx, dword [ebp - 0x4d8]
mov edx, dword [ebp - 0x3f8]
mov dword [edx], ecx
mov eax, dword [ebp - 0x424]
sub eax, dword [ebp - 0x7b0]
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
movzx edx, word [ebp - 0x558]
movzx eax, word [ebp - 0x338]
sub edx, eax
mov ecx, dword [ebp - 0x534]
mov word [ecx], dx
mov edx, dword [ebp - 0x640]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x7b9]
sub eax, ecx
mov edx, dword [ebp - 0x640]
mov byte [edx], al
mov eax, dword [ebp - 0x390]
add eax, dword [ebp - 0x3a0]
mov ecx, dword [ebp - 0x774]
mov dword [ecx], eax
mov edx, dword [ebp - 0x54c]
mov eax, dword [ebp - 0x188]
and eax, dword [edx]
mov ecx, dword [ebp - 0x64]
mov dword [ecx], eax
mov edx, dword [ebp - 0x774]
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov dword [ebp - 0x424], ecx
mov edx, dword [ebp - 0x774]
mov eax, dword [edx]
add eax, dword [ebp - 0x7b0]
mov dword [ebp - 0x3a0], eax
movzx ecx, byte [ebp - 0x41d]
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x7b9], cl
movzx ecx, word [ebp - 0x558]
mov edx, dword [ebp - 0x534]
movzx eax, word [edx]
add ecx, eax
mov edx, dword [ebp - 0x7c0]
mov word [edx], cx
movsx eax, word [ebp - 0x208]
movsx ecx, word [ebp - 0x1cc]
or eax, ecx
mov edx, dword [ebp - 0x184]
mov word [edx], ax
mov eax, dword [ebp - 0x33c]
mov ecx, dword [ebp - 0x774]
mov edx, dword [eax]
mov ecx, dword [ecx]
sar edx, cl
mov eax, dword [ebp - 0x200]
mov dword [eax], edx
mov ecx, dword [ebp - 0x214]
mov edx, dword [ebp - 0x4d8]
xor edx, dword [ecx]
mov eax, dword [ebp - 0x20c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x324]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x3a0]
shl edx, cl
mov eax, dword [ebp - 0x1c8]
mov dword [eax], edx
movzx ecx, byte [ebp - 0x7b9]
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
and ecx, eax
mov byte [ebp - 0x41d], cl
mov ecx, dword [ebp - 0x490]
sub ecx, 0x7f
mov dword [ebp - 0x490], ecx
mov edx, dword [ebp - 0x534]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x7c0]
mov word [ecx], ax
mov edx, dword [ebp - 0x3f8]
mov eax, dword [edx]
sub eax, dword [ebp - 0x400]
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x318]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x324]
add edx, dword [eax]
mov ecx, dword [ebp - 0x7a8]
mov dword [ecx], edx
mov edx, dword [ebp - 0x410]
mov eax, dword [edx]
add eax, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x410]
mov dword [ecx], eax
mov edx, dword [ebp - 0x214]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x3f8]
add eax, dword [ecx]
mov dword [ebp - 0x4d8], eax
mov edx, dword [ebp - 0x640]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x7b9]
and eax, ecx
mov edx, dword [ebp - 0x640]
mov byte [edx], al
movzx eax, word [ebp - 0x204]
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
sub eax, edx
mov word [ebp - 0x558], ax
mov eax, dword [ebp - 0x774]
mov ecx, dword [ebp - 0x7b0]
add ecx, dword [eax]
mov edx, dword [ebp - 0x200]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [eax]
sub edx, dword [ecx]
mov dword [ebp - 0x390], edx
mov eax, dword [ebp - 0x54c]
mov edx, dword [ebp - 0x400]
mov ecx, dword [eax]
shl edx, cl
mov eax, dword [ebp - 0x64]
mov dword [eax], edx
mov edx, dword [ebp - 0x424]
mov ecx, dword [ebp - 0x7b0]
sar edx, cl
mov eax, dword [ebp - 0x1c8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x200]
mov edx, dword [ecx]
or edx, dword [ebp - 0x390]
mov eax, dword [ebp - 0x7a8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x184]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x208]
xor edx, eax
mov ecx, dword [ebp - 0x184]
mov word [ecx], dx
movzx edx, byte [ebp - 0x7b9]
movzx eax, byte [ebp - 0x41d]
and edx, eax
mov ecx, dword [ebp - 0x68]
mov byte [ecx], dl
cmp dword [ebp - 0x490], 0xca9f
jae 0x453e6c
movzx edx, byte [ebp - 0x41d]
mov eax, dword [ebp - 0x1d8]
movzx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x640]
mov byte [eax], dl
movzx ecx, word [ebp - 0x558]
movzx edx, word [ebp - 0x338]
add ecx, edx
mov word [ebp - 0x204], cx
mov eax, dword [ebp - 0x400]
add eax, dword [ebp - 0x4d8]
mov ecx, dword [ebp - 0x75c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x424]
add edx, dword [ebp - 0x7b0]
mov eax, dword [ebp - 0x774]
mov dword [eax], edx
mov ecx, dword [ebp - 0x640]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x1d8]
movzx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x41d], dl
movzx edx, word [ebp - 0x4d4]
mov eax, dword [ebp - 0x7c0]
movzx ecx, word [eax]
sub edx, ecx
mov word [ebp - 0x338], dx
mov edx, dword [ebp - 0x20c]
mov eax, dword [ebp - 0x4d8]
and eax, dword [edx]
mov ecx, dword [ebp - 0x214]
mov dword [ecx], eax
mov edx, dword [ebp - 0x318]
mov eax, dword [edx]
sub eax, dword [ebp - 0x3a0]
mov dword [ebp - 0x424], eax
mov edx, dword [ebp - 0x7b0]
mov ecx, dword [ebp - 0x424]
shl edx, cl
mov dword [ebp - 0x390], edx
mov eax, dword [ebp - 0x1c4]
add eax, 0xaa
mov dword [ebp - 0x1c4], eax
mov ecx, dword [ebp - 0x64]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x4d8]
shr edx, cl
mov eax, dword [ebp - 0x3f8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x41d]
xor edx, eax
mov ecx, dword [ebp - 0x68]
mov byte [ecx], dl
mov edx, dword [ebp - 0x534]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
or eax, edx
mov word [ebp - 0x204], ax
mov eax, dword [ebp - 0x410]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x200]
add ecx, dword [edx]
mov eax, dword [ebp - 0x318]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x324]
mov edx, dword [ebp - 0x774]
mov eax, dword [ecx]
and eax, dword [edx]
mov dword [ebp - 0x7b0], eax
mov ecx, dword [ebp - 0x184]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x208]
sub edx, eax
mov ecx, dword [ebp - 0x184]
mov word [ecx], dx
movsx edx, byte [ebp - 0x53d]
movsx eax, byte [ebp - 0x409]
sub edx, eax
mov byte [ebp - 0x761], dl
movzx ecx, word [ebp - 0x558]
mov edx, dword [ebp - 0x534]
movzx eax, word [edx]
add ecx, eax
mov edx, dword [ebp - 0x7c0]
mov word [edx], cx
movzx eax, byte [ebp - 0x41d]
movzx ecx, byte [ebp - 0x7b9]
add eax, ecx
mov edx, dword [ebp - 0x640]
mov byte [edx], al
mov eax, dword [ebp - 0x54c]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x188]
mov edx, dword [ebp - 0x64]
mov dword [edx], ecx
mov eax, dword [ebp - 0x4d8]
sub eax, dword [ebp - 0x400]
mov ecx, dword [ebp - 0x3f8]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7b0]
sub edx, dword [ebp - 0x3a0]
mov dword [ebp - 0x424], edx
mov eax, dword [ebp - 0x410]
mov ecx, dword [ebp - 0x324]
mov edx, dword [eax]
and edx, dword [ecx]
mov eax, dword [ebp - 0x7a8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x200]
mov edx, dword [ebp - 0x33c]
mov eax, dword [ecx]
mov ecx, dword [edx]
sar eax, cl
mov dword [ebp - 0x7b0], eax
movzx edx, byte [ebp - 0x7b9]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 0x41d], dl
movzx ecx, word [ebp - 0x394]
mov edx, dword [ebp - 0x7c0]
movzx eax, word [edx]
xor ecx, eax
mov edx, dword [ebp - 0x4a8]
mov word [edx], cx
mov eax, dword [ebp - 0x214]
mov ecx, dword [eax]
or ecx, dword [ebp - 0x4d8]
mov dword [ebp - 0x188], ecx
mov edx, dword [ebp - 0x7a8]
mov eax, dword [ebp - 0x318]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov dword [ebp - 0x7b0], ecx
mov edx, dword [ebp - 0x390]
add edx, dword [ebp - 0x7b0]
mov eax, dword [ebp - 0x1c8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x400]
and ecx, dword [ebp - 0x188]
mov edx, dword [ebp - 0x20c]
mov dword [edx], ecx
movzx eax, byte [ebp - 0x41d]
mov ecx, dword [ebp - 0x1d8]
movzx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x68]
mov byte [ecx], al
mov edx, dword [ebp - 0x7c0]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
add eax, edx
mov ecx, dword [ebp - 0x7c0]
mov word [ecx], ax
movsx edx, byte [ebp - 0x409]
movsx eax, byte [ebp - 0x761]
sub edx, eax
mov byte [ebp - 0x53d], dl
movsx ecx, word [ebp - 0x208]
mov edx, dword [ebp - 0x184]
movsx eax, word [edx]
add ecx, eax
mov word [ebp - 0x1cc], cx
mov ecx, dword [ebp - 0x400]
add ecx, dword [ebp - 0x188]
mov edx, dword [ebp - 0x3f8]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7b0]
sub eax, dword [ebp - 0x3a0]
mov dword [ebp - 0x390], eax
movzx ecx, byte [ebp - 0x41d]
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x7b9], cl
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x4d4]
add edx, eax
mov ecx, dword [ebp - 0x4a8]
mov word [ecx], dx
mov edx, dword [ebp - 0x3a0]
xor edx, dword [ebp - 0x390]
mov eax, dword [ebp - 0x318]
mov dword [eax], edx
mov ecx, dword [ebp - 0x400]
or ecx, dword [ebp - 0x188]
mov dword [ebp - 0x4d8], ecx
mov edx, dword [ebp - 0x774]
mov eax, dword [ebp - 0x424]
mov ecx, dword [edx]
sar eax, cl
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x410]
mov eax, dword [ebp - 0x3a0]
mov ecx, dword [edx]
shl eax, cl
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x534]
movzx ecx, word [eax]
and edx, ecx
mov eax, dword [ebp - 0x7c0]
mov word [eax], dx
mov ecx, dword [ebp - 0x1d8]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x7b9]
add edx, eax
mov ecx, dword [ebp - 0x68]
mov byte [ecx], dl
mov edx, dword [ebp - 0x3f8]
mov eax, dword [edx]
sub eax, dword [ebp - 0x400]
mov ecx, dword [ebp - 0x20c]
mov dword [ecx], eax
cmp dword [ebp - 0x1c4], 0x29e0
jb 0x4542d2
movzx edx, word [ebp - 0x394]
mov dword [ebp - 0x814], edx
cmp dword [ebp - 0x814], 0xed8
je 0x454861
cmp dword [ebp - 0x814], 0xf33f
je 0x454706
jmp 0x45488c
mov eax, dword [ebp - 0x54c]
mov ecx, dword [ebp - 0x400]
and ecx, dword [eax]
mov edx, dword [ebp - 0x64]
mov eax, dword [edx]
mov edx, dword [ebp - 0x20c]
add eax, dword [edx]
cmp ecx, eax
jb 0x454820
movsx eax, word [ebp - 0x1cc]
movsx ecx, word [ebp - 0x208]
sub eax, ecx
mov edx, dword [ebp - 0x184]
movsx ecx, word [edx]
movsx edx, word [section..data]
sub ecx, edx
cmp eax, ecx
jle 0x45481e
lea eax, [ebp - 0x1fc]
push eax
call dword [sym.imp.COMDLG32.dll_ChooseColorA]
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x184]
movsx edx, word [ecx]
mov dword [ebp - 0x818], edx
cmp dword [ebp - 0x818], 0x50d2
je 0x454808
cmp dword [ebp - 0x818], 0x51cc
je 0x454793
jmp 0x45481e
mov eax, dword [ebp - 0x33c]
mov ecx, dword [ebp - 0x3a0]
or ecx, dword [eax]
mov edx, dword [ebp - 0x318]
mov dword [edx], ecx
mov eax, dword [ebp - 0x20c]
mov ecx, dword [eax]
push ecx
call fcn.00457a40
mov edx, dword [ebp - 0x318]
mov eax, dword [ebp - 0x424]
mov ecx, dword [edx]
shl eax, cl
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x774]
mov edx, dword [ebp - 0x3a0]
xor edx, dword [ecx]
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
lea ecx, [ebp - 0x408]
push ecx
push 0x92
push 0xcb
mov edx, dword [ebp - 0x64c]
push edx
call sub.VERSION.dll_GetFileVersionInfoA
mov dword [ebp - 0x778], eax
jmp 0x45481e
mov eax, dword [ebp - 0x7b0]
mov ecx, dword [ebp - 0x3a0]
sar eax, cl
mov ecx, dword [ebp - 0x410]
mov dword [ecx], eax
jmp 0x45485f
movsx edx, word [ebp - 0x208]
movsx eax, word [ebp - 0x1cc]
add edx, eax
mov ecx, dword [ebp - 0x184]
movsx eax, word [ecx]
movsx ecx, word [section..data]
sub eax, ecx
cmp edx, eax
jle 0x45485f
mov edx, dword [ebp - 0x184]
movsx eax, word [edx]
movsx ecx, word [ebp - 0x208]
and eax, ecx
mov word [ebp - 0x1cc], ax
jmp 0x45488c
mov edx, dword [ebp - 0x4d8]
sub edx, dword [ebp - 0x188]
mov eax, dword [ebp - 0x54c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x1d8]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x7b9], dl
movzx edx, word [ebp - 0x558]
mov eax, dword [ebp - 0x534]
movzx ecx, word [eax]
sub edx, ecx
mov word [ebp - 0x204], dx
mov edx, dword [ebp - 0x324]
mov eax, dword [ebp - 0x3a0]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [ecx]
and edx, dword [ebp - 0x424]
cmp eax, edx
jge 0x45495a
mov eax, dword [ebp - 0x400]
add eax, dword [ebp - 0x188]
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x64]
mov edx, dword [ecx]
mov dword [ebp - 0x81c], edx
cmp dword [ebp - 0x81c], 0x6f025919
je 0x4548f6
jmp 0x45490a
mov eax, dword [ebp - 0x324]
mov ecx, dword [ebp - 0x390]
or ecx, dword [eax]
mov dword [ebp - 0x7b0], ecx
movzx edx, word [ebp - 0x338]
movzx eax, word [ebp - 0x204]
sub edx, eax
mov ecx, dword [ebp - 0x534]
mov word [ecx], dx
push 0x23
mov edx, dword [ebp - 0x768]
push edx
call dword [sym.imp.ADVAPI32.dll_DecryptFileA]
mov dword [ebp - 0x1d4], eax
call fcn.00451300
movzx eax, byte [ebp - 0x41d]
movzx ecx, byte [ebp - 0x7b9]
shl eax, cl
mov ecx, dword [ebp - 0x1d8]
mov byte [ecx], al
jmp 0x457916
mov edx, dword [ebp - 0x7c0]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
imul eax, edx
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
movzx ecx, word [ebp - 0x558]
add edx, ecx
cmp eax, edx
je 0x457916
mov edx, dword [ebp - 0x4a8]
movzx eax, word [edx]
mov dword [ebp - 0x820], eax
cmp dword [ebp - 0x820], 0x5b
je 0x4549a3
jmp 0x4549eb
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ecx]
and edx, dword [ebp - 0x424]
mov eax, dword [ebp - 0x410]
mov dword [eax], edx
movzx ecx, word [ebp - 0x204]
mov edx, dword [ebp - 0x4a8]
movzx eax, word [edx]
add ecx, eax
mov word [ebp - 0x394], cx
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x7b9]
sub edx, eax
mov ecx, dword [ebp - 0x68]
mov byte [ecx], dl
jmp 0x457873
lea edx, [ebp - 0x484]
mov dword [ebp - 0x1bc], edx
mov eax, dword [ebp - 0x1c8]
mov ecx, dword [ebp - 0x424]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x33c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x184]
mov cx, word [eax]
mov word [ebp - 0x548], cx
mov edx, dword [ebp - 0x184]
movsx eax, word [edx]
mov dword [ebp - 0x824], eax
cmp dword [ebp - 0x824], 0
je 0x454a4a
cmp dword [ebp - 0x824], 0x480d
je 0x45778a
jmp 0x4577b0
mov ecx, dword [ebp - 0x184]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x208]
sub edx, eax
movsx eax, word [ebp - 0x1cc]
movsx ecx, word [ebp - 0x548]
shl eax, cl
cmp edx, eax
jge 0x454aba
movzx eax, word [ebp - 0x394]
mov dword [ebp - 0x828], eax
cmp dword [ebp - 0x828], 0x9e4
je 0x454a8b
jmp 0x454a9e
lea ecx, [ebp - 0x7a0]
push ecx
call dword [sym.imp.COMDLG32.dll_FindTextA]
mov dword [ebp - 0x76c], eax
mov edx, dword [ebp - 0x424]
sub edx, dword [ebp - 0x3a0]
mov dword [ebp - 0x390], edx
call fcn.00449860
jmp 0x457668
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
xor ecx, dword [ebp - 0x484]
mov edx, dword [ebp - 0x54c]
mov eax, dword [edx]
or eax, dword [ebp - 0x400]
cmp ecx, eax
jb 0x457668
mov ecx, dword [ebp - 0x54c]
mov edx, dword [ecx]
mov dword [ebp - 0x484], edx
mov eax, dword [ebp - 0x3a0]
mov dword [ebp - 0x21c], eax
mov ecx, dword [ebp - 0x318]
mov edx, dword [ecx]
or edx, dword [ebp - 0x3a0]
mov dword [ebp - 0x7b0], edx
mov eax, dword [ebp - 0xb4]
add eax, 0xd5
mov dword [ebp - 0xb4], eax
movzx ecx, byte [ebp - 0x7b9]
movzx edx, byte [ebp - 0x41d]
xor ecx, edx
mov eax, dword [ebp - 0x640]
mov byte [eax], cl
movzx edx, word [ebp - 0x558]
mov eax, dword [ebp - 0x7c0]
movzx ecx, word [eax]
sar edx, cl
mov ecx, dword [ebp - 0x534]
mov word [ecx], dx
movsx edx, word [ebp - 0x770]
movsx ecx, word [ebp - 0x208]
shl edx, cl
mov eax, dword [ebp - 0x184]
mov word [eax], dx
mov ecx, dword [ebp - 0x184]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x770]
add edx, eax
mov ecx, dword [ebp - 0x184]
mov word [ecx], dx
mov edx, dword [ebp - 0x54c]
mov eax, dword [edx]
and eax, dword [ebp - 0x188]
mov dword [ebp - 0x400], eax
mov ecx, dword [ebp - 0x7a8]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x318]
add edx, dword [eax]
mov dword [ebp - 0x390], edx
mov ecx, dword [ebp - 0x1d8]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x640]
mov byte [eax], dl
movzx ecx, word [ebp - 0x204]
movzx edx, word [ebp - 0x4d4]
add ecx, edx
mov eax, dword [ebp - 0x7c0]
mov word [eax], cx
mov ecx, dword [ebp - 0x3f8]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x484]
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x7b0]
mov edx, dword [ebp - 0x774]
mov dword [edx], ecx
mov eax, dword [ebp - 0x200]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x7a8]
add ecx, dword [edx]
mov dword [ebp - 0x390], ecx
mov eax, dword [ebp - 0x3f8]
mov ecx, dword [ebp - 0x75c]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x3f8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x338]
and edx, eax
mov ecx, dword [ebp - 0x7c0]
mov word [ecx], dx
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x640]
movzx edx, byte [ecx]
xor eax, edx
mov byte [ebp - 0x7b9], al
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [ebp - 0x200]
mov edx, dword [eax]
mov ecx, dword [ecx]
shl edx, cl
mov dword [ebp - 0x21c], edx
mov eax, dword [ebp - 0x3a0]
or eax, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x3f8]
mov eax, dword [ebp - 0x484]
mov ecx, dword [edx]
shr eax, cl
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x21c]
add ecx, dword [ebp - 0x390]
mov edx, dword [ebp - 0x318]
mov dword [edx], ecx
mov eax, dword [ebp - 0x410]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x3a0]
mov dword [ebp - 0x390], ecx
movsx edx, word [ebp - 0x1cc]
movsx eax, word [ebp - 0x208]
and edx, eax
mov ecx, dword [ebp - 0x184]
mov word [ecx], dx
movsx edx, word [ebp - 0x548]
mov eax, dword [ebp - 0x184]
movsx ecx, word [eax]
add edx, ecx
mov word [ebp - 0x1cc], dx
mov edx, dword [ebp - 0x7c0]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x4a8]
mov word [ecx], ax
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x7b9]
sub eax, ecx
mov edx, dword [ebp - 0x1d8]
mov byte [edx], al
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x4d8]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x20c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [ebp - 0x3a0]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x33c]
mov dword [edx], ecx
movzx eax, word [ebp - 0x338]
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
add eax, edx
mov word [ebp - 0x4d4], ax
movzx eax, byte [ebp - 0x41d]
movzx ecx, byte [ebp - 0x7b9]
add eax, ecx
mov edx, dword [ebp - 0x1d8]
mov byte [edx], al
mov eax, dword [ebp - 0x484]
add eax, dword [ebp - 0x400]
mov dword [ebp - 0x188], eax
mov ecx, dword [ebp - 0x410]
mov edx, dword [ebp - 0x7a8]
mov eax, dword [ecx]
or eax, dword [edx]
mov dword [ebp - 0x424], eax
mov edx, dword [ebp - 0x21c]
mov ecx, dword [ebp - 0x7b0]
sar edx, cl
mov eax, dword [ebp - 0x318]
mov dword [eax], edx
mov ecx, dword [ebp - 0x54c]
mov edx, dword [ebp - 0x1bc]
mov eax, dword [ecx]
xor eax, dword [edx]
mov dword [ebp - 0x188], eax
movzx edx, word [ebp - 0x338]
mov eax, dword [ebp - 0x4a8]
movzx ecx, word [eax]
shl edx, cl
mov ecx, dword [ebp - 0x7c0]
mov word [ecx], dx
movzx edx, byte [ebp - 0x41d]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
and edx, ecx
mov byte [ebp - 0x7b9], dl
mov edx, dword [ebp - 0x424]
add edx, dword [ebp - 0x7b0]
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x410]
mov edx, dword [ebp - 0x774]
mov eax, dword [ecx]
sub eax, dword [edx]
mov dword [ebp - 0x21c], eax
mov ecx, dword [ebp - 0x184]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x548]
and edx, eax
mov word [ebp - 0x1cc], dx
movsx ecx, byte [ebp - 0x761]
movsx edx, byte [ebp - 0x409]
sub ecx, edx
mov byte [ebp - 0x53d], cl
movzx eax, word [ebp - 0x204]
movzx ecx, word [ebp - 0x394]
add eax, ecx
mov edx, dword [ebp - 0x7c0]
mov word [edx], ax
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x41d]
add ecx, edx
mov eax, dword [ebp - 0x68]
mov byte [eax], cl
mov ecx, dword [ebp - 0x64]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x4d8]
mov dword [ebp - 0x484], edx
mov eax, dword [ebp - 0x54c]
mov ecx, dword [ebp - 0x75c]
mov edx, dword [eax]
sub edx, dword [ecx]
mov dword [ebp - 0x4d8], edx
cmp dword [ebp - 0xb4], 0x6db3
jb 0x454af5
mov eax, dword [ebp - 0x324]
mov ecx, dword [eax]
xor ecx, dword [ebp - 0x7b0]
mov edx, dword [ebp - 0x33c]
mov eax, dword [edx]
or eax, dword [ebp - 0x424]
cmp ecx, eax
jle 0x45501f
mov cl, byte [ebp - 0x53d]
mov byte [ebp - 0x82c], cl
cmp byte [ebp - 0x82c], 8
je 0x455006
cmp byte [ebp - 0x82c], 0x11
je 0x454f26
jmp 0x45501a
mov edx, dword [ebp - 0x534]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x4d4]
add eax, ecx
mov edx, dword [ebp - 0x7c0]
movzx ecx, word [edx]
mov edx, dword [ebp - 0x4a8]
movzx edx, word [edx]
sub ecx, edx
cmp eax, ecx
jne 0x454fc8
mov eax, dword [ebp - 0x33c]
mov ecx, dword [ebp - 0x200]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x1c8]
mov dword [eax], edx
lea ecx, [ebp - 0x600]
push ecx
call dword [sym.imp.COMDLG32.dll_PageSetupDlgA]
mov dword [ebp - 0x41c], eax
movzx edx, byte [ebp - 0x41d]
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x1d8]
mov byte [eax], dl
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x4d4]
add edx, eax
mov word [ebp - 0x394], dx
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
push edx
mov eax, dword [ebp - 0x33c]
mov ecx, dword [eax]
push ecx
call fcn.004461d0
add esp, 8
jmp 0x455004
movzx edx, byte [ebp - 0x7b9]
movzx eax, byte [ebp - 0x41d]
sub edx, eax
mov ecx, dword [ebp - 0x640]
movzx eax, byte [ecx]
mov ecx, dword [ebp - 0x1d8]
movzx ecx, byte [ecx]
and eax, ecx
cmp edx, eax
jne 0x455004
mov edx, dword [ebp - 0x4d8]
add edx, dword [ebp - 0x484]
mov eax, dword [ebp - 0x75c]
mov dword [eax], edx
jmp 0x45501a
mov ecx, dword [ebp - 0x324]
mov edx, dword [ecx]
or edx, dword [ebp - 0x7b0]
mov dword [ebp - 0x3a0], edx
jmp 0x45763a
mov eax, dword [ebp - 0x20c]
mov edx, dword [ebp - 0x400]
xor edx, dword [eax]
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x4d8]
shr eax, cl
cmp edx, eax
jb 0x4551da
movzx edx, byte [ebp - 0x7b9]
movzx ecx, byte [ebp - 0x41d]
shl edx, cl
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
mov eax, dword [ebp - 0x640]
movzx eax, byte [eax]
and ecx, eax
cmp edx, ecx
jne 0x455126
mov ecx, dword [ebp - 0x774]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x7b0]
mov dword [ebp - 0x424], edx
movzx eax, word [ebp - 0x558]
mov dword [ebp - 0x830], eax
cmp dword [ebp - 0x830], 0
je 0x4550a6
cmp dword [ebp - 0x830], 0x9a
je 0x4550ea
jmp 0x455126
lea ecx, [ebp - 0x188]
mov dword [ebp - 0x210], ecx
mov edx, dword [ebp - 0x534]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x534]
mov word [ecx], ax
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x640]
movzx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x68]
mov byte [ecx], al
jmp 0x455126
lea edx, [ebp - 0x4a8]
push edx
mov eax, dword [ebp - 0x4a4]
push eax
lea ecx, [ebp - 0x53d]
push ecx
lea edx, [ebp - 0x684]
push edx
mov eax, dword [ebp - 0x1d0]
push eax
mov ecx, dword [ebp - 0x3f4]
push ecx
push str.NotionDisadvantagesSocialists_sidesteppedIllconceived
push 0xb
call sub.VERSION.dll_VerFindFileA
mov dword [ebp - 0x188], eax
movsx edx, byte [ebp - 0x53d]
movsx eax, byte [ebp - 0x761]
add edx, eax
movsx ecx, byte [ebp - 0x409]
cmp edx, ecx
jge 0x4551ce
mov edx, dword [ebp - 0x68]
mov al, byte [edx]
mov byte [ebp - 0x834], al
cmp byte [ebp - 0x834], 0x59
je 0x4551be
cmp byte [ebp - 0x834], 0x6f
je 0x455164
jmp 0x4551ce
movzx ecx, byte [ebp - 0x41d]
movzx edx, byte [ebp - 0x7b9]
add ecx, edx
mov eax, dword [ebp - 0x1d8]
mov byte [eax], cl
lea ecx, [ebp - 0xf4]
push ecx
call dword [sym.imp.COMDLG32.dll_ChooseFontA]
mov dword [ebp - 0x330], eax
movsx edx, word [ebp - 0x770]
movsx eax, word [ebp - 0x548]
and edx, eax
mov word [ebp - 0x1cc], dx
mov ecx, dword [ebp - 0x20c]
mov edx, dword [ecx]
add edx, dword [ebp - 0x4d8]
mov eax, dword [ebp - 0x54c]
mov dword [eax], edx
jmp 0x4551ce
lea ecx, [ebp - 0x6f8]
push ecx
call dword [sym.imp.COMDLG32.dll_ChooseFontA]
mov dword [ebp - 8], eax
lea edx, [ebp - 0x7b0]
mov dword [ebp - 0x7ac], edx
movzx eax, word [ebp - 0x558]
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
add eax, edx
mov word [ebp - 0x338], ax
mov dword [ebp - 0x1c0], 0x65c5
movzx eax, byte [ebp - 0x41d]
movzx ecx, byte [ebp - 0x7b9]
sub eax, ecx
mov edx, dword [ebp - 0x68]
movzx edx, byte [edx]
mov ecx, dword [ebp - 0x1d8]
movzx ecx, byte [ecx]
sar edx, cl
cmp eax, edx
jle 0x45523c
movzx edx, word [ebp - 0x558]
push edx
mov eax, dword [ebp - 0x184]
movzx ecx, word [eax]
push ecx
call section..text
add esp, 8
mov edx, dword [ebp - 0x424]
mov dword [ebp - 0x838], edx
cmp dword [ebp - 0x838], 0
je 0x455266
cmp dword [ebp - 0x838], 0x6202e413
je 0x45531e
jmp 0x45534d
mov eax, dword [ebp - 0x184]
movsx ecx, word [eax]
mov dword [ebp - 0x83c], ecx
cmp dword [ebp - 0x83c], 0
je 0x4552df
cmp dword [ebp - 0x83c], 0x1983
je 0x45528f
jmp 0x45531c
mov edx, dword [ebp - 0x640]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x41d]
shl eax, cl
mov ecx, dword [ebp - 0x640]
mov byte [ecx], al
mov edx, dword [ebp - 0x7a8]
mov eax, dword [edx]
xor eax, dword [ebp - 0x390]
mov dword [ebp - 0x3a0], eax
call dword [sym.imp.COMDLG32.dll_CommDlgExtendedError]
mov dword [ebp - 0x400], eax
mov ecx, dword [ebp - 0x400]
or ecx, dword [ebp - 0x4d8]
mov edx, dword [ebp - 0x54c]
mov dword [edx], ecx
jmp 0x45531c
lea eax, [ebp - 0x424]
mov dword [ebp - 0x3fc], eax
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ebp - 0x1c8]
mov eax, dword [ecx]
and eax, dword [edx]
mov ecx, dword [ebp - 0x318]
mov dword [ecx], eax
movzx edx, word [ebp - 0x394]
mov eax, dword [ebp - 0x534]
movzx ecx, word [eax]
sub edx, ecx
mov word [ebp - 0x4d4], dx
jmp 0x45534d
movzx edx, byte [ebp - 0x41d]
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x7b9], dl
movzx edx, word [ebp - 0x338]
push edx
mov eax, dword [ebp - 0x184]
movzx ecx, word [eax]
push ecx
call section..text
add esp, 8
mov dl, byte [ebp - 0x409]
mov byte [ebp - 0x840], dl
cmp byte [ebp - 0x840], 0
je 0x455367
jmp 0x455415
lea eax, [ebp - 0x400]
mov dword [ebp - 0x4ac], eax
mov ecx, dword [ebp - 0x7b0]
sub ecx, dword [ebp - 0x424]
mov edx, dword [ebp - 0x33c]
mov dword [edx], ecx
mov al, byte [ebp - 0x761]
mov byte [ebp - 0x844], al
cmp byte [ebp - 0x844], 0
je 0x45539e
jmp 0x4553fd
movsx ecx, word [ebp - 0x1cc]
mov dword [ebp - 0x848], ecx
cmp dword [ebp - 0x848], 0
je 0x4553dd
cmp dword [ebp - 0x848], 0x4218
je 0x4553c2
jmp 0x4553fb
lea edx, [ebp - 0x2b4]
push edx
mov eax, dword [ebp - 0x48c]
push eax
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov dword [ebp - 0x484], eax
jmp 0x4553fb
lea ecx, [ebp - 0x3a0]
mov dword [ebp - 0x608], ecx
mov edx, dword [ebp - 0x424]
add edx, dword [ebp - 0x7b0]
mov dword [ebp - 0x21c], edx
jmp 0x455413
mov eax, dword [ebp - 0x410]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x424]
mov edx, dword [ebp - 0x410]
mov dword [edx], ecx
jmp 0x455443
movsx eax, word [ebp - 0x548]
mov ecx, dword [ebp - 0x184]
movsx edx, word [ecx]
add eax, edx
mov word [ebp - 0x208], ax
movzx eax, byte [ebp - 0x7b9]
movzx ecx, byte [ebp - 0x41d]
and eax, ecx
mov edx, dword [ebp - 0x68]
mov byte [edx], al
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x7b9]
sub ecx, edx
mov byte [ebp - 0x399], cl
lea eax, [ebp - 0x4d4]
mov dword [ebp - 0x328], eax
mov ecx, dword [ebp - 0x75c]
mov edx, dword [ebp - 0x1bc]
mov eax, dword [ecx]
or eax, dword [edx]
mov ecx, dword [ebp - 0x210]
mov dword [ecx], eax
mov edx, dword [ebp - 0x75c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x484]
shr eax, cl
mov ecx, dword [ebp - 0x20c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
xor eax, edx
mov ecx, dword [ebp - 0x640]
mov byte [ecx], al
movzx edx, word [ebp - 0x338]
mov eax, dword [ebp - 0x7c0]
movzx ecx, word [eax]
shl edx, cl
mov word [ebp - 0x204], dx
mov ecx, dword [ebp - 0x3fc]
mov edx, dword [ecx]
add edx, dword [ebp - 0x424]
mov eax, dword [ebp - 0x200]
mov dword [eax], edx
mov ecx, dword [ebp - 0x4d8]
and ecx, dword [ebp - 0x484]
mov edx, dword [ebp - 0x214]
mov dword [edx], ecx
mov eax, dword [ebp - 0x424]
sub eax, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x608]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7a8]
mov eax, dword [ebp - 0x424]
add eax, dword [edx]
mov dword [ebp - 0x3a0], eax
movzx ecx, word [ebp - 0x4d4]
mov edx, dword [ebp - 0x328]
movzx eax, word [edx]
add ecx, eax
mov word [ebp - 0x558], cx
mov ecx, dword [ebp - 0x640]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x399]
sub edx, eax
mov byte [ebp - 0x7b9], dl
mov ecx, dword [ebp - 0x3f8]
mov edx, dword [ebp - 0x400]
sub edx, dword [ecx]
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x324]
mov ecx, dword [ebp - 0x3a0]
add ecx, dword [eax]
mov edx, dword [ebp - 0x200]
mov dword [edx], ecx
mov eax, dword [ebp - 0x184]
movsx ecx, word [eax]
movsx edx, word [ebp - 0x548]
sub ecx, edx
mov eax, dword [ebp - 0x184]
mov word [eax], cx
movsx ecx, word [ebp - 0x208]
movsx edx, word [ebp - 0x548]
and ecx, edx
mov word [ebp - 0x1cc], cx
movzx eax, byte [ebp - 0x399]
mov ecx, dword [ebp - 0x1d8]
movzx ecx, byte [ecx]
sar eax, cl
mov edx, dword [ebp - 0x640]
mov byte [edx], al
movzx eax, word [ebp - 0x204]
movzx ecx, word [ebp - 0x558]
shl eax, cl
mov word [ebp - 0x394], ax
mov ecx, dword [ebp - 0x1bc]
mov edx, dword [ebp - 0x4d8]
xor edx, dword [ecx]
mov dword [ebp - 0x484], edx
mov eax, dword [ebp - 0x324]
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [eax]
or edx, dword [ecx]
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x7a8]
mov edx, dword [ebp - 0x324]
mov eax, dword [ecx]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x7ac]
mov dword [ecx], eax
mov edx, dword [ebp - 0x20c]
mov eax, dword [edx]
add eax, dword [ebp - 0x4d8]
mov ecx, dword [ebp - 0x4ac]
mov dword [ecx], eax
mov edx, dword [ebp - 0x324]
mov eax, dword [ebp - 0x3a0]
and eax, dword [edx]
mov ecx, dword [ebp - 0x7ac]
mov dword [ecx], eax
movzx edx, word [ebp - 0x558]
movzx eax, word [ebp - 0x338]
add edx, eax
mov ecx, dword [ebp - 0x4a8]
mov word [ecx], dx
mov edx, dword [ebp - 0x498]
add edx, 0x8d
mov dword [ebp - 0x498], edx
mov eax, dword [ebp - 0x1d8]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x399]
add ecx, edx
mov eax, dword [ebp - 0x640]
mov byte [eax], cl
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x21c]
mov eax, dword [ebp - 0x7a8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x400]
add edx, dword [ecx]
mov dword [ebp - 0x484], edx
mov eax, dword [ebp - 0x608]
mov ecx, dword [ebp - 0x390]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x324]
mov dword [edx], ecx
mov eax, dword [ebp - 0x774]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x390]
mov edx, dword [ebp - 0x608]
mov dword [edx], ecx
mov eax, dword [ebp - 0x328]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x394]
sub ecx, edx
mov eax, dword [ebp - 0x534]
mov word [eax], cx
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x41d]
add edx, eax
mov byte [ebp - 0x399], dl
movsx ecx, word [ebp - 0x208]
movsx edx, word [ebp - 0x1cc]
or ecx, edx
mov eax, dword [ebp - 0x184]
mov word [eax], cx
mov ecx, dword [ebp - 0x3f8]
mov edx, dword [ecx]
xor edx, dword [ebp - 0x4d8]
mov eax, dword [ebp - 0x64]
mov dword [eax], edx
mov ecx, dword [ebp - 0x4ac]
mov edx, dword [ebp - 0x210]
mov eax, dword [ecx]
mov ecx, dword [edx]
shl eax, cl
mov dword [ebp - 0x4d8], eax
mov edx, dword [ebp - 0x7b0]
mov ecx, dword [ebp - 0x390]
sar edx, cl
mov eax, dword [ebp - 0x1c8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x328]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x338]
and edx, eax
mov ecx, dword [ebp - 0x328]
mov word [ecx], dx
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x640]
movzx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x399], al
mov eax, dword [ebp - 0x54c]
mov ecx, dword [ebp - 0x188]
add ecx, dword [eax]
mov dword [ebp - 0x4d8], ecx
mov edx, dword [ebp - 0x324]
mov eax, dword [ebp - 0x7ac]
mov ecx, dword [edx]
and ecx, dword [eax]
mov dword [ebp - 0x424], ecx
mov edx, dword [ebp - 0x318]
mov eax, dword [ebp - 0x424]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x7ac]
mov dword [ecx], eax
mov edx, dword [ebp - 0x4d8]
add edx, dword [ebp - 0x484]
mov eax, dword [ebp - 0x3f8]
mov dword [eax], edx
movzx ecx, byte [ebp - 0x7b9]
movzx edx, byte [ebp - 0x41d]
sub ecx, edx
mov byte [ebp - 0x399], cl
movzx eax, word [ebp - 0x338]
movzx ecx, word [ebp - 0x4d4]
sub eax, ecx
mov edx, dword [ebp - 0x7c0]
mov word [edx], ax
mov eax, dword [ebp - 0x33c]
mov ecx, dword [ebp - 0x390]
sub ecx, dword [eax]
mov dword [ebp - 0x7b0], ecx
mov edx, dword [ebp - 0x318]
mov eax, dword [edx]
xor eax, dword [ebp - 0x7b0]
mov ecx, dword [ebp - 0x410]
mov dword [ecx], eax
mov edx, dword [ebp - 0x484]
mov ecx, dword [ebp - 0x188]
shr edx, cl
mov dword [ebp - 0x4d8], edx
mov eax, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x3a0]
shl eax, cl
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x318]
mov eax, dword [ebp - 0x7b0]
or eax, dword [edx]
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
movsx edx, word [ebp - 0x1cc]
movsx eax, word [ebp - 0x770]
and edx, eax
mov word [ebp - 0x548], dx
cmp dword [ebp - 0x498], 0x129f6
jbe 0x455467
lea ecx, [ebp - 0x409]
mov dword [ebp - 0x418], ecx
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x640]
mov byte [ecx], al
movzx edx, byte [ebp - 0x41d]
movzx eax, byte [ebp - 0x7b9]
add edx, eax
mov ecx, dword [ebp - 0x640]
movzx eax, byte [ecx]
mov ecx, dword [ebp - 0x68]
movzx ecx, byte [ecx]
sub eax, ecx
cmp edx, eax
jg 0x455ad9
mov edx, dword [ebp - 0x390]
mov dword [ebp - 0x84c], edx
cmp dword [ebp - 0x84c], 0
je 0x45592c
cmp dword [ebp - 0x84c], 0x5976d347
je 0x455aa9
jmp 0x455ac1
mov eax, dword [ebp - 0x318]
mov ecx, dword [eax]
mov dword [ebp - 0x850], ecx
cmp dword [ebp - 0x850], 0x1ab21c76
je 0x455948
jmp 0x4559b0
mov dl, byte [ebp - 0x409]
mov byte [ebp - 0x854], dl
cmp byte [ebp - 0x854], 0x29
je 0x45595f
jmp 0x45597e
push 0x4d
mov eax, dword [ebp - 0x768]
push eax
mov ecx, dword [ebp - 0x1d0]
push ecx
call dword [sym.imp.COMDLG32.dll_GetFileTitleA]
mov word [ebp - 0x1cc], ax
jmp 0x4559ab
movzx edx, word [ebp - 0x558]
movzx eax, word [ebp - 0x394]
sub edx, eax
mov ecx, dword [ebp - 0x4a8]
mov word [ecx], dx
mov edx, dword [ebp - 0x214]
mov eax, dword [edx]
and eax, dword [ebp - 0x4d8]
mov dword [ebp - 0x188], eax
jmp 0x455aa7
movsx ecx, byte [ebp - 0x409]
mov edx, dword [ebp - 0x418]
movsx eax, byte [edx]
sub ecx, eax
movsx edx, byte [ebp - 0x761]
movsx eax, byte [ebp - 0x53d]
add edx, eax
cmp ecx, edx
jle 0x455aa7
mov ecx, dword [ebp - 0x188]
push ecx
call fcn.00457a40
mov edx, dword [ebp - 0x7ac]
mov eax, dword [edx]
or eax, dword [ebp - 0x424]
mov ecx, dword [ebp - 0x318]
mov dword [ecx], eax
mov edx, dword [ebp - 0x390]
mov dword [ebp - 0x858], edx
cmp dword [ebp - 0x858], 0x25c6023a
je 0x455a25
cmp dword [ebp - 0x858], 0x53fce08a
je 0x455a91
jmp 0x455aa7
movzx eax, word [ebp - 0x338]
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
xor eax, edx
mov word [ebp - 0x204], ax
lea eax, [ebp - 0x1b8]
push eax
mov ecx, dword [ebp - 0x53c]
push ecx
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov dword [ebp - 0x4d8], eax
movzx edx, byte [ebp - 0x41d]
movzx ecx, byte [ebp - 0x399]
shl edx, cl
mov eax, dword [ebp - 0x640]
mov byte [eax], dl
push 0x96
mov ecx, dword [ebp - 0x768]
push ecx
mov edx, dword [ebp - 0x48c]
push edx
call dword [sym.imp.COMDLG32.dll_GetFileTitleA]
mov word [ebp - 0x770], ax
jmp 0x455aa7
mov eax, dword [ebp - 0x210]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x484]
shr edx, cl
mov dword [ebp - 0x4d8], edx
jmp 0x455ac1
mov eax, dword [ebp - 0x200]
mov ecx, dword [ebp - 0x33c]
mov edx, dword [eax]
and edx, dword [ecx]
mov eax, dword [ebp - 0x608]
mov dword [eax], edx
mov ecx, dword [ebp - 0x608]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x324]
add edx, dword [eax]
mov ecx, dword [ebp - 0x3fc]
mov dword [ecx], edx
movzx edx, word [ebp - 0x338]
mov dword [ebp - 0x85c], edx
cmp dword [ebp - 0x85c], 0xc5d
je 0x457543
cmp dword [ebp - 0x85c], 0xcc1
je 0x455b07
jmp 0x4575f6
cmp dword [ebp - 0x32c], 0x43c1
ja 0x455edd
movsx eax, byte [ebp - 0x53d]
movsx ecx, byte [ebp - 0x409]
add eax, ecx
mov edx, dword [ebp - 0x418]
mov byte [edx], al
mov eax, dword [ebp - 0x184]
movsx ecx, word [eax]
movsx edx, word [ebp - 0x770]
sub ecx, edx
mov eax, dword [ebp - 0x184]
mov word [eax], cx
mov ecx, dword [ebp - 0x640]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x399], dl
mov edx, dword [ebp - 0x328]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x4d4]
xor eax, ecx
mov word [ebp - 0x204], ax
mov edx, dword [ebp - 0x75c]
mov eax, dword [ebp - 0x484]
or eax, dword [edx]
mov ecx, dword [ebp - 0x3f8]
mov dword [ecx], eax
mov edx, dword [ebp - 0x54c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x4d8]
shl eax, cl
mov dword [ebp - 0x188], eax
mov ecx, dword [ebp - 0x410]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x390]
sar edx, cl
mov dword [ebp - 0x7b0], edx
mov eax, dword [ebp - 0x324]
mov ecx, dword [ebp - 0x21c]
and ecx, dword [eax]
mov dword [ebp - 0x390], ecx
mov edx, dword [ebp - 0x410]
mov eax, dword [ebp - 0x21c]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x608]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7c0]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x4a8]
movzx edx, word [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x7c0]
mov word [ecx], ax
movzx edx, byte [ebp - 0x399]
mov eax, dword [ebp - 0x1d8]
movzx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x640]
mov byte [eax], dl
mov ecx, dword [ebp - 0x1bc]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x210]
add edx, dword [eax]
mov dword [ebp - 0x188], edx
mov ecx, dword [ebp - 0x200]
mov edx, dword [ebp - 0x390]
add edx, dword [ecx]
mov dword [ebp - 0x7b0], edx
mov eax, dword [ebp - 0x424]
add eax, dword [ebp - 0x3a0]
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x75c]
mov eax, dword [ebp - 0x64]
mov ecx, dword [edx]
and ecx, dword [eax]
mov dword [ebp - 0x400], ecx
mov edx, dword [ebp - 0x534]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x328]
movzx edx, word [ecx]
add eax, edx
mov word [ebp - 0x204], ax
mov eax, dword [ebp - 0x1d8]
movzx edx, byte [eax]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 0x7b9], dl
mov ecx, dword [ebp - 0x418]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x53d]
or edx, eax
mov byte [ebp - 0x761], dl
mov ecx, dword [ebp - 0x184]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x770]
xor edx, eax
mov ecx, dword [ebp - 0x184]
mov word [ecx], dx
mov edx, dword [ebp - 0x4ac]
mov eax, dword [ebp - 0x214]
mov edx, dword [edx]
mov ecx, dword [eax]
shr edx, cl
mov eax, dword [ebp - 0x3f8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x424]
sub ecx, dword [ebp - 0x390]
mov dword [ebp - 0x21c], ecx
mov edx, dword [ebp - 0x4a8]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
and eax, edx
mov word [ebp - 0x558], ax
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x41d], cl
mov ecx, dword [ebp - 0x7a8]
mov edx, dword [ebp - 0x424]
add edx, dword [ecx]
mov dword [ebp - 0x3a0], edx
mov eax, dword [ebp - 0x4ac]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x400]
mov edx, dword [ebp - 0x20c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7b0]
sub eax, dword [ebp - 0x424]
mov ecx, dword [ebp - 0x7a8]
mov dword [ecx], eax
mov edx, dword [ebp - 0x21c]
sub edx, dword [ebp - 0x390]
mov eax, dword [ebp - 0x324]
mov dword [eax], edx
movzx ecx, byte [ebp - 0x399]
movzx edx, byte [ebp - 0x7b9]
add ecx, edx
mov eax, dword [ebp - 0x68]
mov byte [eax], cl
movzx ecx, word [ebp - 0x394]
movzx edx, word [ebp - 0x338]
sub ecx, edx
mov eax, dword [ebp - 0x534]
mov word [eax], cx
mov ecx, dword [ebp - 0x54c]
mov edx, dword [ecx]
and edx, dword [ebp - 0x484]
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x410]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x7b0]
shl edx, cl
mov eax, dword [ebp - 0x318]
mov dword [eax], edx
mov ecx, dword [ebp - 0x7a8]
mov edx, dword [ecx]
or edx, dword [ebp - 0x3a0]
mov eax, dword [ebp - 0x200]
mov dword [eax], edx
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [ebp - 0x3a0]
mov ecx, dword [ecx]
sar edx, cl
mov dword [ebp - 0x390], edx
mov eax, dword [ebp - 0x21c]
xor eax, dword [ebp - 0x3a0]
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x184]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x770]
add edx, eax
mov ecx, dword [ebp - 0x184]
mov word [ecx], dx
movsx edx, byte [ebp - 0x53d]
movsx eax, byte [ebp - 0x761]
add edx, eax
mov ecx, dword [ebp - 0x418]
mov byte [ecx], dl
mov edx, dword [ebp - 0x32c]
add edx, 0x10
mov dword [ebp - 0x32c], edx
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x41d]
and ecx, edx
mov eax, dword [ebp - 0x68]
mov byte [eax], cl
mov ecx, dword [ebp - 0x7c0]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x328]
movzx ecx, word [eax]
add edx, ecx
mov eax, dword [ebp - 0x534]
mov word [eax], dx
mov ecx, dword [ebp - 0x20c]
mov edx, dword [ebp - 0x400]
sub edx, dword [ecx]
mov dword [ebp - 0x484], edx
mov eax, dword [ebp - 0x3f8]
mov ecx, dword [ebp - 0x1bc]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x210]
mov dword [eax], edx
movzx ecx, word [ebp - 0x4d4]
mov edx, dword [ebp - 0x4a8]
movzx eax, word [edx]
add ecx, eax
mov edx, dword [ebp - 0x7c0]
mov word [edx], cx
jmp 0x455b07
mov eax, dword [ebp - 0x4a8]
movzx ecx, word [eax]
mov dword [ebp - 0x860], ecx
cmp dword [ebp - 0x860], 0xf33f
je 0x455efd
jmp 0x45600f
mov edx, dword [ebp - 0x390]
mov dword [ebp - 0x864], edx
cmp dword [ebp - 0x864], 0
je 0x455f17
jmp 0x455ff6
movzx eax, word [ebp - 0x4d4]
mov dword [ebp - 0x868], eax
cmp dword [ebp - 0x868], 0x79b
je 0x455f45
cmp dword [ebp - 0x868], 0xf33f
je 0x455fd0
jmp 0x455ff4
mov ecx, dword [ebp - 0x7a8]
mov edx, dword [ecx]
mov dword [ebp - 0x86c], edx
cmp dword [ebp - 0x86c], 0xabc7d17
je 0x455f6d
cmp dword [ebp - 0x86c], 0x494f97c0
je 0x455fb9
jmp 0x455fce
mov eax, dword [ebp - 0x4ac]
mov ecx, dword [eax]
push ecx
call fcn.00457a40
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x399]
sub eax, ecx
mov byte [ebp - 0x41d], al
mov edx, dword [ebp - 0x424]
sub edx, dword [ebp - 0x21c]
mov eax, dword [ebp - 0x410]
mov dword [eax], edx
lea ecx, [ebp - 0x278]
push ecx
call dword [sym.imp.COMDLG32.dll_GetOpenFileNameA]
mov dword [ebp - 0x778], eax
jmp 0x455fce
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x20c]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x4ac]
mov dword [edx], ecx
jmp 0x455ff4
lea eax, [ebp - 0x424]
mov dword [ebp - 0x194], eax
mov ecx, dword [ebp - 0x200]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x608]
add edx, dword [eax]
mov ecx, dword [ebp - 0x194]
mov dword [ecx], edx
jmp 0x45600d
mov edx, dword [ebp - 0x640]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x68]
movzx ecx, byte [ecx]
sar eax, cl
mov byte [ebp - 0x41d], al
jmp 0x456029
movzx edx, word [ebp - 0x558]
push edx
mov eax, dword [ebp - 0x184]
movzx ecx, word [eax]
push ecx
call section..text
add esp, 8
lea edx, [ebp - 0x204]
mov dword [ebp - 0x488], edx
mov dword [ebp - 0x604], 0x38c1
mov eax, dword [ebp - 0x400]
mov ecx, dword [ebp - 0x188]
shl eax, cl
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x774]
mov edx, dword [ebp - 0x1c8]
mov eax, dword [ecx]
xor eax, dword [edx]
mov dword [ebp - 0x7b0], eax
lea ecx, [ebp - 0x1cc]
mov dword [ebp - 0x648], ecx
lea edx, [ebp - 0x761]
mov dword [ebp - 0x398], edx
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x7b9]
or ecx, edx
mov eax, dword [ebp - 0x1d8]
mov byte [eax], cl
movzx ecx, word [ebp - 0x394]
movzx edx, word [ebp - 0x558]
and ecx, edx
mov eax, dword [ebp - 0x7c0]
mov word [eax], cx
mov ecx, dword [ebp - 0x484]
add ecx, dword [ebp - 0x4d8]
mov dword [ebp - 0x400], ecx
mov edx, dword [ebp - 0x194]
mov eax, dword [ebp - 0x390]
add eax, dword [edx]
mov dword [ebp - 0x3a0], eax
mov ecx, dword [ebp - 0x7a8]
mov edx, dword [ebp - 0x7ac]
mov eax, dword [ecx]
and eax, dword [edx]
mov ecx, dword [ebp - 0x774]
mov dword [ecx], eax
mov edx, dword [ebp - 0x3f8]
mov eax, dword [ebp - 0x188]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x75c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x200]
mov eax, dword [edx]
sub eax, dword [ebp - 0x21c]
mov dword [ebp - 0x7b0], eax
mov ecx, dword [ebp - 0x640]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x7b9]
sub edx, eax
mov ecx, dword [ebp - 0x1d8]
mov byte [ecx], dl
mov edx, dword [ebp - 0x534]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x204]
add eax, ecx
mov word [ebp - 0x394], ax
mov edx, dword [ebp - 0x554]
add edx, 0x52
mov dword [ebp - 0x554], edx
mov eax, dword [ebp - 0x1c8]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x3a0]
mov dword [ebp - 0x390], ecx
mov edx, dword [ebp - 0x1bc]
mov eax, dword [ebp - 0x188]
mov ecx, dword [edx]
shr eax, cl
mov ecx, dword [ebp - 0x214]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7b0]
or edx, dword [ebp - 0x390]
mov dword [ebp - 0x424], edx
mov eax, dword [ebp - 0x3a0]
mov ecx, dword [ebp - 0x7b0]
shl eax, cl
mov dword [ebp - 0x21c], eax
mov ecx, dword [ebp - 0x1d8]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
xor edx, ecx
mov byte [ebp - 0x399], dl
mov edx, dword [ebp - 0x7c0]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x4d4]
and eax, ecx
mov edx, dword [ebp - 0x534]
mov word [edx], ax
mov eax, dword [ebp - 0x398]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x418]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x53d], cl
mov cx, word [ebp - 0x1cc]
mov word [ebp - 0x770], cx
mov edx, dword [ebp - 0x4ac]
mov eax, dword [edx]
add eax, dword [ebp - 0x400]
mov ecx, dword [ebp - 0x54c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x774]
mov eax, dword [ebp - 0x3a0]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x324]
mov dword [ecx], eax
movzx edx, byte [ebp - 0x7b9]
movzx eax, byte [ebp - 0x41d]
sub edx, eax
mov ecx, dword [ebp - 0x68]
mov byte [ecx], dl
movzx edx, word [ebp - 0x4d4]
mov eax, dword [ebp - 0x534]
movzx ecx, word [eax]
and edx, ecx
mov word [ebp - 0x558], dx
mov edx, dword [ebp - 0x54c]
mov eax, dword [edx]
add eax, dword [ebp - 0x400]
mov ecx, dword [ebp - 0x20c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x194]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x410]
add eax, dword [ecx]
mov edx, dword [ebp - 0x318]
mov dword [edx], eax
mov eax, dword [ebp - 0x390]
add eax, dword [ebp - 0x21c]
mov ecx, dword [ebp - 0x7ac]
mov dword [ecx], eax
mov edx, dword [ebp - 0x4d8]
sub edx, dword [ebp - 0x188]
mov eax, dword [ebp - 0x54c]
mov dword [eax], edx
cmp dword [ebp - 0x554], 0x2a8a
jb 0x456081
movsx edx, byte [ebp - 0x409]
mov eax, dword [ebp - 0x418]
movsx ecx, byte [eax]
or edx, ecx
movsx eax, byte [ebp - 0x53d]
mov ecx, dword [ebp - 0x398]
movsx ecx, byte [ecx]
shl eax, cl
cmp edx, eax
jne 0x457527
movzx edx, word [ebp - 0x4d4]
mov dword [ebp - 0x870], edx
cmp dword [ebp - 0x870], 0xe3f
je 0x4574b2
cmp dword [ebp - 0x870], 0x1101
je 0x456327
jmp 0x4574c6
mov eax, dword [ebp - 0x4d8]
mov dword [ebp - 0x874], eax
cmp dword [ebp - 0x874], 0xf2f6376d
je 0x456344
jmp 0x456415
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x4a8]
movzx ecx, word [eax]
add edx, ecx
mov eax, dword [ebp - 0x328]
movzx ecx, word [eax]
mov eax, dword [ebp - 0x7c0]
movzx eax, word [eax]
sub ecx, eax
cmp edx, ecx
je 0x4563f9
lea ecx, [ebp - 0x4a8]
push ecx
mov edx, dword [ebp - 0x654]
push edx
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov dword [ebp - 0x4d8], eax
mov eax, dword [ebp - 0x774]
mov ecx, dword [ebp - 0x390]
add ecx, dword [eax]
mov edx, dword [ebp - 0x324]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7b0]
sub eax, dword [ebp - 0x390]
mov dword [ebp - 0x424], eax
lea ecx, [ebp - 0x761]
push ecx
lea edx, [ebp - 0x184]
push edx
mov eax, dword [ebp - 0x760]
push eax
lea ecx, [ebp - 0x3fc]
push ecx
call sub.VERSION.dll_VerQueryValueA
mov dword [ebp - 0x550], eax
movsx edx, word [ebp - 0x1cc]
mov eax, dword [ebp - 0x184]
movsx ecx, word [eax]
sub edx, ecx
mov eax, dword [ebp - 0x648]
mov word [eax], dx
jmp 0x456413
mov ecx, dword [ebp - 0x418]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x398]
movsx ecx, byte [eax]
or edx, ecx
mov byte [ebp - 0x409], dl
jmp 0x456482
lea edx, [ebp - 0x399]
mov dword [ebp - 0x49c], edx
movzx eax, word [ebp - 0x4d4]
movzx ecx, word [ebp - 0x204]
cdq
idiv ecx
mov edx, dword [ebp - 0x534]
mov word [edx], ax
lea eax, [ebp - 0x4d8]
mov dword [ebp - 0x55c], eax
mov edx, dword [ebp - 0x424]
mov ecx, dword [ebp - 0x21c]
shl edx, cl
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x328]
movzx edx, word [ecx]
movzx ecx, word [ebp - 0x558]
sar edx, cl
mov word [ebp - 0x338], dx
lea eax, [ebp - 0x7b9]
mov dword [ebp - 0x688], eax
mov ecx, dword [ebp - 0x400]
xor ecx, dword [ebp - 0x188]
mov dword [ebp - 0x4d8], ecx
mov edx, dword [ebp - 0x1d8]
mov al, byte [edx]
mov byte [ebp - 0x878], al
cmp byte [ebp - 0x878], 0
je 0x4565cc
cmp byte [ebp - 0x878], 0x8d
je 0x4564bd
jmp 0x4574ab
lea ecx, [ebp - 0x1b8]
push ecx
call dword [sym.imp.COMDLG32.dll_ChooseColorA]
mov dword [ebp - 0x550], eax
mov edx, dword [ebp - 0x7b0]
and edx, dword [ebp - 0x21c]
mov eax, dword [ebp - 0x7a8]
mov dword [eax], edx
movzx ecx, word [ebp - 0x338]
mov edx, dword [ebp - 0x488]
movzx eax, word [edx]
sub ecx, eax
mov edx, dword [ebp - 0x7c0]
movzx eax, word [edx]
movzx edx, word [ebp - 0x4d4]
sub eax, edx
cmp ecx, eax
jle 0x45659a
mov eax, dword [ebp - 0x418]
mov cl, byte [eax]
mov byte [ebp - 0x87c], cl
cmp byte [ebp - 0x87c], 0x2e
je 0x456529
jmp 0x456582
mov edx, dword [ebp - 0x33c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x774]
add eax, dword [ecx]
mov dword [ebp - 0x3a0], eax
mov edx, dword [ebp - 0x75c]
mov eax, dword [ebp - 0x400]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x54c]
mov dword [ecx], eax
lea edx, [ebp - 0x60]
push edx
call dword [sym.imp.COMDLG32.dll_GetSaveFileNameA]
mov dword [ebp - 0x41c], eax
movzx eax, word [ebp - 0x4d4]
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
and eax, edx
mov ecx, dword [ebp - 0x488]
mov word [ecx], ax
jmp 0x456598
movzx edx, byte [ebp - 0x7b9]
movzx eax, byte [ebp - 0x41d]
add edx, eax
mov byte [ebp - 0x399], dl
jmp 0x4565c7
movsx ecx, byte [ebp - 0x761]
mov edx, dword [ebp - 0x398]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x418]
movsx eax, byte [edx]
movsx edx, byte [ebp - 0x409]
sub eax, edx
cmp ecx, eax
jge 0x4565c7
call fcn.00449860
jmp 0x4574ab
mov eax, dword [ebp - 0x33c]
mov ecx, dword [eax]
mov dword [ebp - 0xf8], ecx
mov edx, dword [ebp - 0x328]
movzx eax, word [edx]
mov dword [ebp - 0x880], eax
cmp dword [ebp - 0x880], 0
je 0x456607
cmp dword [ebp - 0x880], 0x377
je 0x456691
jmp 0x45671e
mov ecx, dword [ebp - 0x200]
mov edx, dword [ebp - 0x1c8]
mov eax, dword [ecx]
xor eax, dword [edx]
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x424]
mov dword [ebp - 0x884], ecx
cmp dword [ebp - 0x884], 0
je 0x45665c
cmp dword [ebp - 0x884], 0x37a38f05
je 0x456640
jmp 0x45668c
movsx edx, byte [ebp - 0x53d]
mov eax, dword [ebp - 0x398]
movsx ecx, byte [eax]
shl edx, cl
mov ecx, dword [ebp - 0x418]
mov byte [ecx], dl
jmp 0x45668c
lea edx, [ebp - 0x770]
mov dword [ebp - 0xfc], edx
lea eax, [ebp - 0x394]
mov dword [ebp - 0x644], eax
movzx edx, byte [ebp - 0x41d]
movzx ecx, byte [ebp - 0x7b9]
sar edx, cl
mov eax, dword [ebp - 0x640]
mov byte [eax], dl
jmp 0x45671e
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
or edx, ecx
movzx eax, byte [ebp - 0x399]
mov ecx, dword [ebp - 0x1d8]
movzx ecx, byte [ecx]
add eax, ecx
cmp edx, eax
jne 0x45671e
mov edx, dword [ebp - 0x4ac]
mov eax, dword [edx]
and eax, dword [ebp - 0x188]
mov dword [ebp - 0x4d8], eax
lea ecx, [ebp - 0x7a0]
push ecx
call dword [sym.imp.COMDLG32.dll_ReplaceTextA]
mov dword [ebp - 0x7b4], eax
mov edx, dword [ebp - 0x3f8]
mov eax, dword [ebp - 0x20c]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x4ac]
mov dword [edx], ecx
lea eax, [ebp - 0x530]
push eax
call dword [sym.imp.COMDLG32.dll_PrintDlgExA]
mov dword [ebp - 0x38c], eax
mov ecx, dword [ebp - 0x318]
mov edx, dword [ecx]
add edx, dword [ebp - 0x7b0]
mov dword [ebp - 0xf8], edx
mov eax, dword [ebp - 0x1c8]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x3fc]
add ecx, dword [edx]
mov dword [ebp - 0x390], ecx
cmp dword [ebp - 0x604], 0x3b6b
ja 0x456baf
mov eax, dword [ebp - 0x194]
mov ecx, dword [ebp - 0x3a0]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x7ac]
mov dword [edx], ecx
movzx eax, word [ebp - 0x4d4]
mov ecx, dword [ebp - 0x488]
movzx edx, word [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x7c0]
mov word [ecx], ax
movzx edx, byte [ebp - 0x7b9]
mov eax, dword [ebp - 0x1d8]
movzx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x688]
mov byte [eax], dl
mov ecx, dword [ebp - 0x604]
add ecx, 0x3e
mov dword [ebp - 0x604], ecx
mov edx, dword [ebp - 0x64]
mov eax, dword [edx]
sub eax, dword [ebp - 0x400]
mov ecx, dword [ebp - 0x214]
mov dword [ecx], eax
mov edx, dword [ebp - 0x390]
and edx, dword [ebp - 0x3a0]
mov eax, dword [ebp - 0x7a8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x324]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x424]
shl edx, cl
mov eax, dword [ebp - 0x318]
mov dword [eax], edx
mov ecx, dword [ebp - 0x20c]
mov edx, dword [ebp - 0x400]
xor edx, dword [ecx]
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x644]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x558]
or ecx, edx
mov eax, dword [ebp - 0x644]
mov word [eax], cx
mov ecx, dword [ebp - 0x1d8]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
sar edx, cl
mov ecx, dword [ebp - 0x640]
mov byte [ecx], dl
movsx edx, word [ebp - 0x548]
movsx eax, word [ebp - 0x1cc]
add edx, eax
mov word [ebp - 0x208], dx
mov ecx, dword [ebp - 0x398]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x53d]
sub edx, eax
mov byte [ebp - 0x761], dl
mov ecx, dword [ebp - 0x3f8]
mov edx, dword [ebp - 0x20c]
mov eax, dword [ecx]
and eax, dword [edx]
mov ecx, dword [ebp - 0x75c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x410]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x7a8]
add eax, dword [ecx]
mov edx, dword [ebp - 0x194]
mov dword [edx], eax
mov eax, dword [ebp - 0x328]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x488]
movzx eax, word [edx]
add ecx, eax
mov edx, dword [ebp - 0x644]
mov word [edx], cx
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x640]
movzx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x7b9], cl
mov ecx, dword [ebp - 0x324]
mov edx, dword [ebp - 0x1c8]
mov eax, dword [ecx]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x318]
mov dword [ecx], eax
mov edx, dword [ebp - 0x214]
mov eax, dword [ebp - 0x4d8]
add eax, dword [edx]
mov dword [ebp - 0x484], eax
mov ecx, dword [ebp - 0x774]
mov edx, dword [ebp - 0x33c]
mov eax, dword [ecx]
sub eax, dword [edx]
mov dword [ebp - 0x7b0], eax
mov ecx, dword [ebp - 0x194]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x3a0]
mov eax, dword [ebp - 0x200]
mov dword [eax], edx
movzx ecx, word [ebp - 0x4d4]
movzx edx, word [ebp - 0x558]
add ecx, edx
mov word [ebp - 0x338], cx
mov eax, dword [ebp - 0x1d8]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x41d]
or ecx, edx
mov byte [ebp - 0x7b9], cl
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x4ac]
mov edx, dword [eax]
xor edx, dword [ecx]
mov eax, dword [ebp - 0x55c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x318]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x21c]
shl edx, cl
mov dword [ebp - 0x7b0], edx
mov eax, dword [ebp - 0x200]
mov ecx, dword [ebp - 0x7ac]
mov edx, dword [eax]
mov ecx, dword [ecx]
sar edx, cl
mov dword [ebp - 0x424], edx
mov eax, dword [ebp - 0x21c]
and eax, dword [ebp - 0x424]
mov ecx, dword [ebp - 0x200]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7a8]
mov eax, dword [ebp - 0x194]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x7ac]
mov dword [edx], ecx
mov eax, dword [ebp - 0x184]
movsx ecx, word [eax]
movsx edx, word [ebp - 0x208]
add ecx, edx
mov word [ebp - 0x1cc], cx
movsx eax, byte [ebp - 0x409]
movsx ecx, byte [ebp - 0x53d]
and eax, ecx
mov edx, dword [ebp - 0x418]
mov byte [edx], al
movzx eax, word [ebp - 0x4d4]
mov ecx, dword [ebp - 0x644]
movzx edx, word [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x534]
mov word [ecx], ax
movzx edx, byte [ebp - 0x399]
mov eax, dword [ebp - 0x68]
movzx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x688]
mov byte [eax], dl
mov ecx, dword [ebp - 0x1bc]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x4d8]
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x210]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x400]
mov edx, dword [ebp - 0x1bc]
mov dword [edx], ecx
movzx eax, word [ebp - 0x338]
movzx ecx, word [ebp - 0x204]
sub eax, ecx
mov word [ebp - 0x4d4], ax
movzx edx, byte [ebp - 0x7b9]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 0x399], dl
mov ecx, dword [ebp - 0x200]
mov edx, dword [ebp - 0x608]
mov eax, dword [ecx]
or eax, dword [edx]
mov dword [ebp - 0x3a0], eax
mov edx, dword [ebp - 0x484]
mov ecx, dword [ebp - 0x400]
shl edx, cl
mov eax, dword [ebp - 0x64]
mov dword [eax], edx
mov ecx, dword [ebp - 0x410]
mov edx, dword [ebp - 0x424]
xor edx, dword [ecx]
mov eax, dword [ebp - 0x7ac]
mov dword [eax], edx
mov ecx, dword [ebp - 0x774]
mov edx, dword [ecx]
and edx, dword [ebp - 0xf8]
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
movzx ecx, word [ebp - 0x338]
movzx edx, word [ebp - 0x4d4]
add ecx, edx
mov eax, dword [ebp - 0x488]
mov word [eax], cx
movzx ecx, byte [ebp - 0x41d]
mov edx, dword [ebp - 0x640]
movzx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x7b9], cl
mov ecx, dword [ebp - 0x210]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x188]
mov eax, dword [ebp - 0x4ac]
mov dword [eax], edx
mov ecx, dword [ebp - 0x21c]
add ecx, dword [ebp - 0x390]
mov dword [ebp - 0x424], ecx
movsx edx, word [ebp - 0x1cc]
mov eax, dword [ebp - 0xfc]
movsx ecx, word [eax]
and edx, ecx
mov eax, dword [ebp - 0x184]
mov word [eax], dx
mov ecx, dword [ebp - 0x418]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x409]
sub edx, eax
mov byte [ebp - 0x53d], dl
mov ecx, dword [ebp - 0x688]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x49c]
movzx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x688]
mov byte [eax], dl
movzx ecx, word [ebp - 0x204]
mov edx, dword [ebp - 0x4a8]
movzx eax, word [edx]
add ecx, eax
mov edx, dword [ebp - 0x644]
mov word [edx], cx
mov eax, dword [ebp - 0x3f8]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x188]
mov edx, dword [ebp - 0x20c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x21c]
or eax, dword [ebp - 0x7b0]
mov dword [ebp - 0x3a0], eax
jmp 0x456734
lea ecx, [ebp - 0xf8]
mov dword [ebp - 0x650], ecx
mov edx, dword [ebp - 0x55c]
mov eax, dword [ebp - 0x188]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x3f8]
mov dword [ecx], eax
lea edx, [ebp - 0x3a0]
mov dword [ebp - 0xb8], edx
movzx eax, word [ebp - 0x4d4]
movzx ecx, word [ebp - 0x558]
sar eax, cl
mov word [ebp - 0x394], ax
cmp dword [ebp - 0x1c0], 0x6bc2
je 0x456d15
movzx edx, byte [ebp - 0x399]
movzx ecx, byte [ebp - 0x7b9]
shl edx, cl
mov eax, dword [ebp - 0x640]
mov byte [eax], dl
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [ebp - 0x608]
mov eax, dword [ecx]
and eax, dword [edx]
mov dword [ebp - 0x21c], eax
mov ecx, dword [ebp - 0x3f8]
mov edx, dword [ebp - 0x484]
sub edx, dword [ecx]
mov dword [ebp - 0x4d8], edx
mov eax, dword [ebp - 0x33c]
mov ecx, dword [ebp - 0xf8]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x650]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1c0]
add eax, 0x49
mov dword [ebp - 0x1c0], eax
mov ecx, dword [ebp - 0x194]
mov edx, dword [ebp - 0x7b0]
add edx, dword [ecx]
mov eax, dword [ebp - 0x33c]
mov dword [eax], edx
movzx ecx, word [ebp - 0x394]
movzx edx, word [ebp - 0x4d4]
add ecx, edx
mov eax, dword [ebp - 0x644]
mov word [eax], cx
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x7b9]
sub edx, eax
mov byte [ebp - 0x399], dl
mov ecx, dword [ebp - 0x398]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x418]
movsx ecx, byte [eax]
and edx, ecx
mov eax, dword [ebp - 0x398]
mov byte [eax], dl
mov ecx, dword [ebp - 0xfc]
movsx edx, word [ecx]
mov eax, dword [ebp - 0x184]
movsx ecx, word [eax]
add edx, ecx
mov word [ebp - 0x770], dx
mov edx, dword [ebp - 0x1bc]
mov eax, dword [ebp - 0x188]
add eax, dword [edx]
mov ecx, dword [ebp - 0x20c]
mov dword [ecx], eax
mov edx, dword [ebp - 0xf8]
sub edx, dword [ebp - 0x7b0]
mov eax, dword [ebp - 0x324]
mov dword [eax], edx
jmp 0x456bf4
cmp dword [ebp - 0x314], 0x11227
ja 0x456f1a
movzx edx, byte [ebp - 0x41d]
movzx ecx, byte [ebp - 0x7b9]
sar edx, cl
mov eax, dword [ebp - 0x68]
mov byte [eax], dl
movzx ecx, word [ebp - 0x204]
movzx edx, word [ebp - 0x338]
xor ecx, edx
mov eax, dword [ebp - 0x328]
mov word [eax], cx
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x400]
mov ecx, dword [ecx]
shl edx, cl
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x410]
mov ecx, dword [ebp - 0x390]
or ecx, dword [eax]
mov edx, dword [ebp - 0xb8]
mov dword [edx], ecx
mov eax, dword [ebp - 0x33c]
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [eax]
and edx, dword [ecx]
mov eax, dword [ebp - 0x7a8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x64]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x484]
mov eax, dword [ebp - 0x214]
mov dword [eax], edx
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x68]
mov byte [eax], dl
movzx ecx, word [ebp - 0x338]
mov edx, dword [ebp - 0x534]
movzx eax, word [edx]
sub ecx, eax
mov edx, dword [ebp - 0x7c0]
mov word [edx], cx
mov eax, dword [ebp - 0x390]
add eax, dword [ebp - 0x424]
mov ecx, dword [ebp - 0x1c8]
mov dword [ecx], eax
mov edx, dword [ebp - 0x194]
mov eax, dword [ebp - 0x3a0]
add eax, dword [edx]
mov dword [ebp - 0x21c], eax
mov ecx, dword [ebp - 0x214]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x64]
add edx, dword [eax]
mov ecx, dword [ebp - 0x3f8]
mov dword [ecx], edx
mov edx, dword [ebp - 0xb8]
mov eax, dword [ebp - 0x7ac]
mov ecx, dword [edx]
and ecx, dword [eax]
mov dword [ebp - 0x3a0], ecx
mov edx, dword [ebp - 0x390]
add edx, dword [ebp - 0x424]
mov eax, dword [ebp - 0x650]
mov dword [eax], edx
mov ecx, dword [ebp - 0x314]
add ecx, 0x82
mov dword [ebp - 0x314], ecx
mov edx, dword [ebp - 0x184]
movsx eax, word [edx]
mov ecx, dword [ebp - 0x648]
movsx edx, word [ecx]
or eax, edx
mov ecx, dword [ebp - 0x184]
mov word [ecx], ax
movsx edx, byte [ebp - 0x53d]
mov eax, dword [ebp - 0x418]
movsx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 0x409], dl
mov ecx, dword [ebp - 0x688]
movzx edx, byte [ecx]
movzx ecx, byte [ebp - 0x41d]
shl edx, cl
mov byte [ebp - 0x399], dl
movzx eax, word [ebp - 0x558]
mov ecx, dword [ebp - 0x328]
movzx edx, word [ecx]
xor eax, edx
mov ecx, dword [ebp - 0x4a8]
mov word [ecx], ax
mov edx, dword [ebp - 0x214]
mov eax, dword [ebp - 0x4ac]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x64]
mov dword [edx], ecx
mov eax, dword [ebp - 0xb8]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x3a0]
mov dword [ebp - 0x7b0], ecx
mov edx, dword [ebp - 0x328]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x394]
add eax, ecx
mov edx, dword [ebp - 0x488]
mov word [edx], ax
movzx eax, byte [ebp - 0x7b9]
mov ecx, dword [ebp - 0x688]
movzx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x41d], al
jmp 0x456d15
mov eax, dword [ebp - 0x324]
mov ecx, dword [ebp - 0x21c]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x774]
mov eax, dword [edx]
sub eax, dword [ebp - 0x3a0]
cmp ecx, eax
jge 0x456f50
mov ecx, dword [ebp - 0x214]
mov edx, dword [ecx]
add edx, dword [ebp - 0x4d8]
mov eax, dword [ebp - 0x210]
mov dword [eax], edx
movzx ecx, word [ebp - 0x394]
mov dword [ebp - 0x888], ecx
cmp dword [ebp - 0x888], 0xeaa
je 0x456f6b
jmp 0x456f86
lea edx, [ebp - 0x640]
push edx
mov eax, dword [ebp - 0x4a4]
push eax
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov dword [ebp - 0x400], eax
jmp 0x457002
mov ecx, dword [ebp - 0x648]
movsx edx, word [ecx]
mov dword [ebp - 0x88c], edx
cmp dword [ebp - 0x88c], 0
je 0x456fa0
jmp 0x456fe8
mov eax, dword [ebp - 0x33c]
mov ecx, dword [ebp - 0x424]
add ecx, dword [eax]
mov dword [ebp - 0xf8], ecx
mov edx, dword [ebp - 0x3fc]
mov eax, dword [edx]
mov dword [ebp - 0x7b8], eax
mov ecx, dword [ebp - 0x400]
sub ecx, dword [ebp - 0x484]
mov edx, dword [ebp - 0x54c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x488]
mov cx, word [eax]
mov word [ebp - 0x404], cx
jmp 0x457002
mov edx, dword [ebp - 0x640]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x399]
and eax, ecx
mov edx, dword [ebp - 0x1d8]
mov byte [edx], al
mov eax, dword [ebp - 0x398]
movsx edx, byte [eax]
movsx eax, byte [ebp - 0x53d]
or edx, eax
mov ecx, dword [ebp - 0x418]
movsx eax, byte [ecx]
movsx ecx, byte [ebp - 0x409]
shl eax, cl
cmp edx, eax
jne 0x4571ab
mov ecx, dword [ebp - 0x318]
mov edx, dword [ebp - 0x424]
xor edx, dword [ecx]
mov eax, dword [ebp - 0x774]
mov dword [eax], edx
mov cl, byte [ebp - 0x7b9]
mov byte [ebp - 0x890], cl
cmp byte [ebp - 0x890], 0
je 0x45705e
jmp 0x457184
movsx edx, byte [ebp - 0x409]
mov eax, dword [ebp - 0x418]
movsx ecx, byte [eax]
sar edx, cl
mov ecx, dword [ebp - 0x398]
movsx eax, byte [ecx]
movsx ecx, byte [ebp - 0x761]
add eax, ecx
cmp edx, eax
je 0x45714a
mov edx, dword [ebp - 0x7b8]
sub edx, dword [ebp - 0x21c]
mov dword [ebp - 0x390], edx
lea eax, [ebp - 0xb0]
push eax
call dword [sym.imp.COMDLG32.dll_PrintDlgA]
mov dword [ebp - 0x538], eax
mov ecx, dword [ebp - 0x418]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x53d]
add edx, eax
mov ecx, dword [ebp - 0x418]
mov byte [ecx], dl
mov edx, dword [ebp - 0x4d8]
mov dword [ebp - 0x894], edx
cmp dword [ebp - 0x894], 0x1e2b5d14
je 0x4570e3
jmp 0x45712f
movsx eax, word [ebp - 0x1cc]
mov ecx, dword [ebp - 0xfc]
movsx edx, word [ecx]
sub eax, edx
mov word [ebp - 0x770], ax
lea eax, [ebp - 0x55c]
push eax
mov ecx, dword [ebp - 0x1d0]
push ecx
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
mov dword [ebp - 0x65c], eax
movzx edx, byte [ebp - 0x41d]
mov eax, dword [ebp - 0x1d8]
movzx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x68]
mov byte [eax], dl
jmp 0x457148
mov ecx, dword [ebp - 0x488]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x204]
add edx, eax
mov word [ebp - 0x338], dx
jmp 0x457182
movzx ecx, word [ebp - 0x338]
movzx edx, word [ebp - 0x204]
add ecx, edx
movzx eax, word [ebp - 0x558]
movzx edx, word [ebp - 0x404]
and eax, edx
cmp ecx, eax
jg 0x457182
mov eax, dword [ebp - 0x400]
sub eax, dword [ebp - 0x4d8]
mov ecx, dword [ebp - 0x1bc]
mov dword [ecx], eax
jmp 0x4571ab
lea edx, [ebp - 0x188]
push edx
lea eax, [ebp - 0x53d]
push eax
mov ecx, dword [ebp - 0x760]
push ecx
lea edx, [ebp - 0x63c]
push edx
call sub.VERSION.dll_VerQueryValueA
mov dword [ebp - 0x414], eax
cmp dword [ebp - 0x31c], 0xed4e
jbe 0x4574ab
mov eax, dword [ebp - 0x1bc]
mov ecx, dword [ebp - 0x4d8]
add ecx, dword [eax]
mov edx, dword [ebp - 0x20c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x424]
sub eax, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x774]
mov dword [ecx], eax
mov edx, dword [ebp - 0x318]
mov eax, dword [ebp - 0x21c]
xor eax, dword [edx]
mov dword [ebp - 0x424], eax
mov edx, dword [ebp - 0xf8]
mov ecx, dword [ebp - 0x424]
shl edx, cl
mov eax, dword [ebp - 0x318]
mov dword [eax], edx
mov ecx, dword [ebp - 0x534]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x204]
or edx, eax
mov ecx, dword [ebp - 0x4a8]
mov word [ecx], dx
movzx edx, byte [ebp - 0x7b9]
movzx ecx, byte [ebp - 0x41d]
sar edx, cl
mov byte [ebp - 0x399], dl
mov eax, dword [ebp - 0x3f8]
mov ecx, dword [ebp - 0x214]
mov edx, dword [eax]
and edx, dword [ecx]
mov eax, dword [ebp - 0x75c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x7a8]
mov edx, dword [ebp - 0x410]
mov eax, dword [ecx]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x3a0]
sub edx, dword [ebp - 0x21c]
mov eax, dword [ebp - 0xb8]
mov dword [eax], edx
mov ecx, dword [ebp - 0x4ac]
mov edx, dword [ecx]
and edx, dword [ebp - 0x4d8]
mov eax, dword [ebp - 0x4ac]
mov dword [eax], edx
movzx ecx, word [ebp - 0x338]
movzx edx, word [ebp - 0x404]
add ecx, edx
mov eax, dword [ebp - 0x328]
mov word [eax], cx
movzx ecx, byte [ebp - 0x41d]
movzx edx, byte [ebp - 0x7b9]
add ecx, edx
mov eax, dword [ebp - 0x49c]
mov byte [eax], cl
mov ecx, dword [ebp - 0x184]
movsx edx, word [ecx]
mov eax, dword [ebp - 0xfc]
movsx ecx, word [eax]
add edx, ecx
mov eax, dword [ebp - 0x184]
mov word [eax], dx
mov ecx, dword [ebp - 0x418]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x53d]
add edx, eax
mov ecx, dword [ebp - 0x398]
mov byte [ecx], dl
mov edx, dword [ebp - 0x3f8]
mov eax, dword [edx]
sub eax, dword [ebp - 0x188]
mov dword [ebp - 0x400], eax
mov ecx, dword [ebp - 0x650]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x3a0]
sar edx, cl
mov eax, dword [ebp - 0x410]
mov dword [eax], edx
mov ecx, dword [ebp - 0x328]
movzx edx, word [ecx]
movzx ecx, word [ebp - 0x204]
shl edx, cl
mov word [ebp - 0x394], dx
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x41d]
xor ecx, edx
mov byte [ebp - 0x7b9], cl
mov eax, dword [ebp - 0x21c]
or eax, dword [ebp - 0x7b8]
mov ecx, dword [ebp - 0x7a8]
mov dword [ecx], eax
mov edx, dword [ebp - 0x4ac]
mov eax, dword [edx]
and eax, dword [ebp - 0x400]
mov dword [ebp - 0x484], eax
mov ecx, dword [ebp - 0x194]
mov edx, dword [ebp - 0x324]
mov eax, dword [ecx]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x608]
mov dword [ecx], eax
mov edx, dword [ebp - 0x33c]
mov eax, dword [edx]
sub eax, dword [ebp - 0x7b0]
mov ecx, dword [ebp - 0x33c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x640]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x688]
movzx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x640]
mov byte [ecx], al
movzx edx, word [ebp - 0x204]
movzx eax, word [ebp - 0x558]
add edx, eax
mov word [ebp - 0x338], dx
mov ecx, dword [ebp - 0x210]
mov edx, dword [ebp - 0x75c]
mov eax, dword [ecx]
and eax, dword [edx]
mov ecx, dword [ebp - 0x3f8]
mov dword [ecx], eax
mov edx, dword [ebp - 0x608]
mov eax, dword [edx]
add eax, dword [ebp - 0x424]
mov dword [ebp - 0x7b8], eax
mov ecx, dword [ebp - 0x7b8]
add ecx, dword [ebp - 0x390]
mov edx, dword [ebp - 0x7a8]
mov dword [edx], ecx
mov eax, dword [ebp - 0x31c]
sub eax, 0x35
mov dword [ebp - 0x31c], eax
mov ecx, dword [ebp - 0xf8]
add ecx, dword [ebp - 0x7b0]
mov dword [ebp - 0x7b8], ecx
mov edx, dword [ebp - 0x608]
mov eax, dword [edx]
sub eax, dword [ebp - 0x21c]
mov dword [ebp - 0x424], eax
movsx ecx, byte [ebp - 0x409]
movsx edx, byte [ebp - 0x53d]
or ecx, edx
mov byte [ebp - 0x761], cl
movsx eax, word [ebp - 0x770]
movsx ecx, word [ebp - 0x548]
shl eax, cl
mov ecx, dword [ebp - 0x648]
mov word [ecx], ax
movzx edx, byte [ebp - 0x41d]
mov eax, dword [ebp - 0x49c]
movzx ecx, byte [eax]
sar edx, cl
mov ecx, dword [ebp - 0x688]
mov byte [ecx], dl
jmp 0x4571ab
call fcn.00449860
jmp 0x4574c6
mov edx, dword [ebp - 0x400]
add edx, dword [ebp - 0x484]
mov eax, dword [ebp - 0x3f8]
mov dword [eax], edx
movzx ecx, word [ebp - 0x338]
mov edx, dword [ebp - 0x488]
movzx eax, word [edx]
xor ecx, eax
mov word [ebp - 0x4d4], cx
lea ecx, [ebp - 0x60]
push ecx
call dword [sym.imp.COMDLG32.dll_GetOpenFileNameA]
mov dword [ebp - 0x550], eax
mov edx, dword [ebp - 0x774]
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [edx]
and ecx, dword [eax]
mov edx, dword [ebp - 0x324]
mov dword [edx], ecx
call dword [sym.imp.COMDLG32.dll_CommDlgExtendedError]
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [ebp - 0x3a0]
add ecx, dword [eax]
mov dword [ebp - 0x21c], ecx
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x41d]
sar eax, cl
mov ecx, dword [ebp - 0x640]
mov byte [ecx], al
jmp 0x4575f6
mov edx, dword [ebp - 0x4d8]
add edx, dword [ebp - 0x188]
mov eax, dword [ebp - 0x64]
mov dword [eax], edx
mov ecx, dword [ebp - 0x68]
mov dl, byte [ecx]
mov byte [ebp - 0x898], dl
cmp byte [ebp - 0x898], 0x3c
je 0x45756a
jmp 0x4575e0
movzx eax, byte [ebp - 0x7b9]
movzx ecx, byte [ebp - 0x41d]
sub eax, ecx
mov byte [ebp - 0x399], al
push 0xf0
mov edx, dword [ebp - 0x218]
push edx
call dword [sym.imp.ADVAPI32.dll_DecryptFileA]
mov dword [ebp - 0x538], eax
mov eax, dword [ebp - 0x7c0]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x534]
movzx eax, word [edx]
add ecx, eax
mov edx, dword [ebp - 0x4a8]
mov word [edx], cx
mov eax, dword [ebp - 0x33c]
mov ecx, dword [ebp - 0x200]
mov edx, dword [eax]
sub edx, dword [ecx]
mov dword [ebp - 0x424], edx
lea eax, [ebp - 0x388]
push eax
call dword [sym.imp.COMDLG32.dll_PrintDlgA]
mov dword [ebp - 0x6bc], eax
jmp 0x4575f6
mov ecx, dword [ebp - 0x7a8]
mov edx, dword [ecx]
and edx, dword [ebp - 0x390]
mov eax, dword [ebp - 0x608]
mov dword [eax], edx
lea ecx, [ebp - 0x5a8]
push ecx
mov edx, dword [ebp - 0x218]
push edx
lea eax, [ebp - 0x1fc]
push eax
lea ecx, [ebp - 0x5a8]
push ecx
mov edx, dword [ebp - 0x544]
push edx
mov eax, dword [ebp - 0x218]
push eax
push str.RiftingimpermanentcurtailmentHaggledQuieting
push 0xe9
call sub.VERSION.dll_VerFindFileA
mov dword [ebp - 0x400], eax
call fcn.00449860
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [ebp - 0x324]
mov eax, dword [ecx]
and eax, dword [edx]
mov ecx, dword [ebp - 0x200]
mov dword [ecx], eax
mov edx, dword [ebp - 0x200]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x774]
add eax, dword [ecx]
mov dword [ebp - 0x21c], eax
mov edx, dword [ebp - 0x390]
mov dword [ebp - 0x89c], edx
cmp dword [ebp - 0x89c], 0x30aae594
je 0x457771
cmp dword [ebp - 0x89c], 0x40d59926
je 0x457695
jmp 0x457788
call dword [sym.imp.COMDLG32.dll_CommDlgExtendedError]
mov dword [ebp - 0x484], eax
mov eax, dword [ebp - 0x774]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x390]
sar edx, cl
mov dword [ebp - 0x7b0], edx
mov eax, dword [ebp - 0x184]
movsx ecx, word [eax]
movsx edx, word [ebp - 0x548]
and ecx, edx
movsx eax, word [ebp - 0x208]
movsx edx, word [ebp - 0x1cc]
sub eax, edx
cmp ecx, eax
jne 0x45776f
mov eax, dword [ebp - 0x400]
sub eax, dword [ebp - 0x484]
mov ecx, dword [ebp - 0x20c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7b0]
mov dword [ebp - 0x8a0], edx
cmp dword [ebp - 0x8a0], 0x4c64cfb0
je 0x45770f
jmp 0x45774f
lea eax, [ebp - 0x758]
push eax
call dword [sym.imp.COMDLG32.dll_GetOpenFileNameA]
mov dword [ebp - 0x550], eax
mov ecx, dword [ebp - 0x390]
sub ecx, dword [ebp - 0x424]
mov edx, dword [ebp - 0x1c8]
mov dword [edx], ecx
movzx eax, word [ebp - 0x4d4]
movzx ecx, word [ebp - 0x338]
add eax, ecx
mov word [ebp - 0x558], ax
jmp 0x45776f
push 0xa7
mov edx, dword [ebp - 0x7a4]
push edx
mov eax, dword [ebp - 0x64c]
push eax
call dword [sym.imp.COMDLG32.dll_GetFileTitleA]
mov word [ebp - 0x770], ax
jmp 0x457788
movzx ecx, byte [ebp - 0x41d]
mov edx, dword [ebp - 0x68]
movzx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x1d8]
mov byte [edx], cl
jmp 0x4577b0
lea eax, [ebp - 0x7a0]
push eax
call dword [sym.imp.COMDLG32.dll_FindTextA]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x410]
mov edx, dword [ebp - 0x424]
add edx, dword [ecx]
mov eax, dword [ebp - 0x200]
mov dword [eax], edx
mov ecx, dword [ebp - 0x68]
mov dl, byte [ecx]
mov byte [ebp - 0x8a4], dl
cmp byte [ebp - 0x8a4], 0x5e
je 0x45785f
cmp byte [ebp - 0x8a4], 0x71
je 0x4577d6
jmp 0x457873
lea eax, [ebp - 0x1cc]
push eax
push 0x68
push 0xf7
mov ecx, dword [ebp - 0x768]
push ecx
call sub.VERSION.dll_GetFileVersionInfoA
mov dword [ebp - 0x414], eax
movsx edx, word [ebp - 0x208]
movsx eax, word [ebp - 0x1cc]
add edx, eax
mov ecx, dword [ebp - 0x184]
mov word [ecx], dx
mov edx, dword [ebp - 0x640]
mov al, byte [edx]
mov byte [ebp - 0x8a8], al
cmp byte [ebp - 0x8a8], 0x21
je 0x457828
jmp 0x457846
movzx ecx, word [ebp - 0x394]
movzx edx, word [ebp - 0x338]
sub ecx, edx
mov word [ebp - 0x558], cx
call fcn.00449860
jmp 0x45785d
movzx eax, byte [ebp - 0x41d]
mov ecx, dword [ebp - 0x68]
movzx edx, byte [ecx]
and eax, edx
mov ecx, dword [ebp - 0x1d8]
mov byte [ecx], al
jmp 0x457873
mov edx, dword [ebp - 0x75c]
mov eax, dword [edx]
add eax, dword [ebp - 0x4d8]
mov dword [ebp - 0x188], eax
lea ecx, [ebp - 0x184]
push ecx
mov edx, dword [ebp - 0x768]
push edx
mov eax, dword [ebp - 0x3f4]
push eax
mov ecx, dword [ebp - 0x654]
push ecx
mov edx, dword [ebp - 0x3f4]
push edx
mov eax, dword [ebp - 0x7a4]
push eax
mov ecx, dword [ebp - 0x1d0]
push ecx
push 0xbe
call sub.VERSION.dll_VerInstallFileA
mov dword [ebp - 0x484], eax
mov edx, dword [ebp - 0x424]
mov dword [ebp - 0x8ac], edx
cmp dword [ebp - 0x8ac], 0x3f0d8358
je 0x4578ce
jmp 0x4578e6
mov eax, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x4d8]
xor ecx, dword [eax]
mov edx, dword [ebp - 0x54c]
mov dword [edx], ecx
jmp 0x4578fc
mov eax, dword [ebp - 0x1c8]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x390]
sar edx, cl
mov dword [ebp - 0x3a0], edx
lea eax, [ebp - 0x7b9]
push eax
mov ecx, dword [ebp - 0x654]
push ecx
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
mov dword [ebp - 0x550], eax
lea edx, [ebp - 0x310]
push edx
call dword [sym.imp.COMDLG32.dll_GetSaveFileNameA]
mov dword [ebp - 0x1d4], eax
mov eax, dword [ebp - 0x214]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x188]
mov edx, dword [ebp - 0x214]
mov dword [edx], ecx
lea eax, [ebp - 0x480]
push eax
call dword [sym.imp.COMDLG32.dll_PrintDlgExA]
mov dword [ebp - 0x3a4], eax
mov ecx, dword [ebp - 0x400]
mov dword [ebp - 0x8b0], ecx
cmp dword [ebp - 0x8b0], 0x9803d328
je 0x45796c
jmp 0x457986
movzx edx, word [ebp - 0x394]
push edx
mov eax, dword [ebp - 0x184]
movzx ecx, word [eax]
push ecx
call section..text
add esp, 8
mov edx, dword [ebp - 0x318]
mov eax, dword [edx]
add eax, dword [ebp - 0x424]
mov ecx, dword [ebp - 0x318]
mov dword [ecx], eax
movsx edx, byte [ebp - 0x409]
movsx eax, byte [ebp - 0x53d]
add edx, eax
mov byte [ebp - 0x761], dl
lea ecx, [ebp - 0x208]
push ecx
mov edx, dword [ebp - 0x768]
push edx
lea eax, [ebp - 0x6b8]
push eax
lea ecx, [ebp - 0x63c]
push ecx
mov edx, dword [ebp - 0x768]
push edx
mov eax, dword [ebp - 0x7a4]
push eax
push str.synchronisedUnscrambleMeritingIteratemutate
push 0x1f
call sub.VERSION.dll_VerFindFileA
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x184]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x1cc]
sub edx, eax
mov ecx, dword [ebp - 0x184]
mov word [ecx], dx
movzx edx, byte [ebp - 0x41d]
mov eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x7b9], dl
movsx edx, byte [ebp - 0x409]
add edx, 0x72
mov byte [ebp - 0x409], dl
movsx eax, word [section..data]
pop esi
mov esp, ebp
pop ebp
ret