Function at 0x46d040
Capabilities:
Accept command line arguments
Empty the recycle bin
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x418
mov eax, 0x1b24
mov word [ebp - 0x2a0], ax
push 0
push 0
push 0
lea ecx, [ebp - 0x70]
call fcn.0050dfa0
mov dword [ebp - 0x204], 0x244a0481
push 0
push 0
push 0
lea ecx, [ebp - 0x270]
call fcn.0050dfa0
mov dword [ebp - 0x2b4], 0xe00c0593
mov byte [ebp - 0x155], 0xc3
mov dword [ebp - 0x2a4], 0xc8b6
mov dword [ebp - 0x78], 0xf2d1
movzx ecx, byte [ebp - 0x155]
add ecx, 0xad
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
sub edx, 0x6a
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
and eax, 0x76
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
sar ecx, 1
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
shl edx, 3
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
or eax, 0x15
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
xor ecx, 4
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
add edx, 0x37
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
sub eax, 0xa3
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
and ecx, 0xe
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
add edx, 0x97
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
sub eax, 0x58
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
add ecx, 0x6b
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
sub edx, 0x52
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
shl eax, 5
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
xor ecx, 0xb6
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
sar edx, 1
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
or eax, 0x2f
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
and ecx, 0xab
mov byte [ebp - 0x155], cl
mov edx, dword [ebp - 0x2a4]
sub edx, 1
mov dword [ebp - 0x2a4], edx
movzx eax, byte [ebp - 0x155]
add eax, 0x73
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
sub ecx, 0x24
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
add edx, 0x7e
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
sub eax, 0xc2
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
and ecx, 0x59
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
sub edx, 0x1b
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
add eax, 0x33
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
sub ecx, 0x77
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
add edx, 0xd
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
sar eax, 2
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
or ecx, 0xf1
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
xor edx, 0x4a
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
shl eax, 1
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
and ecx, 0x8a
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
sub edx, 0x42
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
add eax, 0xc5
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
add ecx, 0x38
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
sub edx, 0xa5
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
sub eax, 0x4c
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
and ecx, 0x6d
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
add edx, 7
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
add eax, 0xe9
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
sub ecx, 0x62
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
or edx, 0xfe
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
sar eax, 1
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
xor ecx, 0x1c
mov byte [ebp - 0x155], cl
movzx edx, byte [ebp - 0x155]
shl edx, 1
mov byte [ebp - 0x155], dl
cmp dword [ebp - 0x2a4], 0xc882
ja 0x46d0a0
mov eax, dword [ebp - 0x2b4]
and eax, 0x22d854d6
mov dword [ebp - 0x2b4], eax
mov dword [ebp - 0x2bc], 0x5308
mov dword [ebp - 0x58], 0x688
mov dword [ebp - 0x198], 0x4135
mov ecx, dword [ebp - 0x2b4]
sub ecx, 0x1d91a6f4
mov dword [ebp - 0x2b4], ecx
mov edx, dword [ebp - 0x198]
add edx, 0x70
mov dword [ebp - 0x198], edx
movzx eax, byte [ebp - 0x155]
sub eax, 6
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
sub ecx, 0xd6
mov byte [ebp - 0x155], cl
mov edx, dword [ebp - 0x2b4]
add edx, 0x2ea0b28b
mov dword [ebp - 0x2b4], edx
movzx eax, byte [ebp - 0x155]
add eax, 0xd0
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
sub ecx, 0xab
mov byte [ebp - 0x155], cl
mov edx, dword [ebp - 0x2b4]
and edx, 0x1d8b704b
mov dword [ebp - 0x2b4], edx
movzx eax, byte [ebp - 0x155]
add eax, 0xc
mov byte [ebp - 0x155], al
mov ecx, dword [ebp - 0x2b4]
shr ecx, 0x1d
mov dword [ebp - 0x2b4], ecx
movzx edx, byte [ebp - 0x155]
xor edx, 0x58
mov byte [ebp - 0x155], dl
movzx eax, byte [ebp - 0x155]
or eax, 0x15
mov byte [ebp - 0x155], al
movzx ecx, byte [ebp - 0x155]
shl ecx, 4
mov byte [ebp - 0x155], cl
cmp dword [ebp - 0x198], 0x5e15
jbe 0x46d3e6
mov edx, dword [ebp - 0x2b4]
mov dword [ebp - 0x370], edx
cmp dword [ebp - 0x370], 0
je 0x46d4fc
cmp dword [ebp - 0x370], 0x689b9642
je 0x46d590
jmp 0x46d63e
mov eax, dword [section..data]
mov dword [ebp - 0x14c], eax
cmp dword [ebp - 0x2b4], 0x1654870f
je 0x46d58b
mov ecx, 0xac5
mov word [ebp - 0x1dc], cx
mov dl, byte [ebp - 0x155]
mov byte [ebp - 0x374], dl
cmp byte [ebp - 0x374], 0xd0
je 0x46d53f
cmp byte [ebp - 0x374], 0xed
je 0x46d57a
jmp 0x46d58b
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0x2f8], eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x7c], ecx
mov dl, byte [ebp - 0x155]
mov byte [ebp - 0x156], dl
mov dword [ebp - 0x1c8], 0x4965
mov ax, word [ebp - 0x1dc]
mov word [ebp - 0x1fc], ax
jmp 0x46d58b
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x2f8]
sub edx, dword [ecx]
mov dword [ebp - 0x14c], edx
jmp 0x46d63e
lea eax, [ebp - 0x100]
push eax
lea ecx, [ebp - 0x70]
push ecx
lea edx, [ebp - 0x1dc]
push edx
call sub.gdiplus.dll_GdiplusStartup
mov dword [ebp - 0x144], eax
movzx eax, byte [ebp - 0x155]
imul eax, eax, 0x56
movzx ecx, byte [ebp - 0x156]
cmp eax, ecx
je 0x46d63e
mov edx, dword [ebp - 0x7c]
mov eax, dword [edx]
and eax, dword [ebp - 0x2f8]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2b4]
mov dword [ebp - 0x378], edx
cmp dword [ebp - 0x378], 0x651a01dd
je 0x46d62b
cmp dword [ebp - 0x378], 0x922b4b3c
je 0x46d5f8
jmp 0x46d63e
mov eax, dword [ebp - 0x144]
sub eax, 0x60c97912
mov dword [ebp - 0x2b4], eax
movzx ecx, word [ebp - 0x1fc]
push ecx
push 0x16
push 0xbe
mov dl, byte [ebp - 0x155]
mov cl, byte [ebp - 0x155]
call fcn.00478870
jmp 0x46d63e
lea edx, [ebp - 0x368]
push edx
call dword [sym.imp.COMDLG32.dll_GetOpenFileNameW]
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x14c]
mov edx, dword [ebp - 0x2f8]
sub edx, dword [section..data]
cmp ecx, edx
jl 0x47215c
lea eax, [ebp - 0x1fc]
mov dword [ebp - 0x36c], eax
movzx ecx, word [ebp - 0x1dc]
mov dword [ebp - 0x37c], ecx
cmp dword [ebp - 0x37c], 0x8c8
je 0x46d693
cmp dword [ebp - 0x37c], 0xac5
je 0x46d6cf
jmp 0x46d788
mov edx, dword [ebp - 0x14c]
sub edx, dword [ebp - 0x2f8]
mov eax, dword [ebp - 0x7c]
mov dword [eax], edx
call fcn.004d7e60
lea ecx, [ebp - 0x50]
push ecx
call dword [sym.imp.COMDLG32.dll_FindTextW]
mov dword [ebp - 0x16c], eax
mov edx, dword [ebp - 0x2f8]
sub edx, dword [ebp - 0x14c]
mov eax, dword [ebp - 0x7c]
mov dword [eax], edx
jmp 0x46d788
mov ecx, dword [ebp - 0x2f8]
mov dword [ebp - 0x380], ecx
cmp dword [ebp - 0x380], 0x2f3d5ea7
je 0x46d76b
cmp dword [ebp - 0x380], 0x66524227
je 0x46d6fc
jmp 0x46d781
mov edx, dword [ebp - 0x36c]
movzx eax, word [edx]
mov dword [ebp - 0x384], eax
cmp dword [ebp - 0x384], 0xac5
je 0x46d719
jmp 0x46d74c
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ecx]
mov dword [ebp - 0x2b0], edx
mov dword [ebp - 0xf8], 0x4a0b
lea eax, [ebp - 0x144]
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x1dc]
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x110], 0x2823
jmp 0x46d75f
movzx edx, byte [ebp - 0x156]
and edx, 0xe5
mov byte [ebp - 0x155], dl
mov dword [ebp - 0xec], 0xa2b6
jmp 0x46d781
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
push ecx
movzx edx, byte [ebp - 0x155]
push edx
call fcn.004ef7c0
add esp, 8
mov dword [ebp - 0x80], 0xec4b
mov dword [ebp - 0x1ac], 0x2998
mov al, byte [ebp - 0x155]
mov byte [ebp - 0x388], al
cmp byte [ebp - 0x388], 4
je 0x46d7b9
cmp byte [ebp - 0x388], 0x29
je 0x46d83e
jmp 0x46d89e
mov ecx, dword [ebp - 0x2f8]
or ecx, dword [ebp - 0x2b0]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
mov dword [ebp - 0x38c], ecx
cmp dword [ebp - 0x38c], 0x348
je 0x46d7e7
jmp 0x46d82c
mov edx, dword [ebp - 0x2f8]
xor edx, dword [ebp - 0x2b0]
mov dword [ebp - 0x14c], edx
lea eax, [ebp - 0x7c]
push eax
lea ecx, [ebp - 0x100]
push ecx
lea edx, [ebp - 0x310]
push edx
call dword [sym.imp.ole32.dll_CoMarshalInterThreadInterfaceInStream]
mov dword [ebp - 0x170], eax
mov eax, dword [ebp - 0x2b4]
mov ecx, dword [ebp - 0x144]
shl eax, cl
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
jmp 0x46d83c
lea edx, [ebp - 0x140]
push edx
call dword [sym.imp.COMDLG32.dll_ReplaceTextW]
mov dword [ebp - 0x5c], eax
jmp 0x46d89e
mov eax, dword [ebp - 0x7c]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x2f8]
sar edx, cl
mov dword [ebp - 0x2b0], edx
mov eax, dword [ebp - 0x2f8]
add eax, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
lea edx, [ebp - 0xd0]
push edx
call dword [sym.imp.COMDLG32.dll_ChooseFontW]
mov dword [ebp - 0x210], eax
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x1fc]
add ecx, edx
mov eax, dword [ebp - 0x54]
mov word [eax], cx
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x14c]
and edx, dword [ecx]
mov dword [ebp - 0x2b0], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x144]
cmp ecx, dword [ebp - 0x2b4]
jae 0x46d955
push 0
mov edx, dword [ebp - 0x1c0]
push edx
mov eax, dword [ebp - 0x1c4]
push eax
mov ecx, dword [ebp - 0x118]
push ecx
call dword [sym.imp.COMCTL32.dll_LBItemFromPt]
mov dword [ebp - 0x14c], eax
mov edx, dword [ebp - 0x36c]
movzx eax, word [edx]
mov dword [ebp - 0x390], eax
cmp dword [ebp - 0x390], 0x838
je 0x46d8f5
jmp 0x46d93c
movzx ecx, word [ebp - 0x1fc]
mov edx, dword [ebp - 0x54]
movzx eax, word [edx]
sub ecx, eax
mov edx, dword [ebp - 0x36c]
mov word [edx], cx
movzx eax, byte [ebp - 0x156]
add eax, 0x71
mov byte [ebp - 0x155], al
movzx ecx, word [ebp - 0x1fc]
push ecx
push 0xffffffffffffffcf
push 0x56
mov dl, byte [ebp - 0x155]
mov cl, byte [ebp - 0x155]
call fcn.00478870
jmp 0x46d955
push 0
lea edx, [ebp - 0x16c]
push edx
lea eax, [ebp - 0x10]
push eax
call dword [sym.imp.ole32.dll_OleGetIconOfClass]
mov dword [ebp - 0x278], eax
lea ecx, [ebp - 0x2b4]
mov dword [ebp - 0x154], ecx
mov edx, dword [ebp - 0x7c]
mov eax, dword [edx]
add eax, dword [ebp - 0x14c]
mov dword [ebp - 0x2b0], eax
mov dword [ebp - 0x2ac], 0x5809
mov ecx, dword [ebp - 0x14c]
sub ecx, dword [ebp - 0x2b0]
mov edx, dword [ebp - 0x2f8]
add edx, dword [section..data]
cmp ecx, edx
jl 0x46da05
mov eax, dword [ebp - 0x2f8]
sub eax, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x154]
mov eax, dword [edx]
mov dword [ebp - 0x394], eax
cmp dword [ebp - 0x394], 0x4ac9f447
je 0x46d9d1
cmp dword [ebp - 0x394], 0x90ddd6f1
je 0x46d9ef
jmp 0x46da05
mov ecx, dword [ebp - 0x54]
movzx edx, word [ecx]
push edx
push 0x63
push 5
mov dl, byte [ebp - 0x156]
mov cl, byte [ebp - 0x155]
call fcn.00478870
jmp 0x46da05
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x1fc]
sub ecx, edx
mov word [ebp - 0x1dc], cx
mov eax, dword [ebp - 0x2b4]
mov dword [ebp - 0x17c], eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x7c]
mov eax, dword [edx]
or eax, dword [ebp - 0x2b0]
mov dword [ebp - 0x14c], eax
mov ecx, dword [ebp - 0x154]
mov edx, dword [ebp - 0x2b4]
xor edx, dword [ecx]
mov dword [ebp - 0x17c], edx
movzx eax, byte [ebp - 0x156]
shl eax, 5
mov byte [ebp - 0x155], al
movzx edx, word [ebp - 0x1fc]
movzx ecx, word [ebp - 0x1dc]
sar edx, cl
mov eax, dword [ebp - 0x54]
mov word [eax], dx
mov ecx, dword [ebp - 0x2b0]
and ecx, dword [ebp - 0x14c]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x14c]
add ecx, dword [eax]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x2b0]
add ecx, dword [eax]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x2b0]
and ecx, dword [eax]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
movzx eax, byte [ebp - 0x155]
sub eax, 0x67
mov byte [ebp - 0x156], al
mov ecx, dword [ebp - 0x54]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
sub edx, ecx
mov word [ebp - 0x1fc], dx
mov edx, dword [ebp - 0x14]
mov eax, dword [edx]
mov dword [ebp - 0x144], eax
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx]
add edx, dword [ebp - 0x2b4]
mov dword [ebp - 0x17c], edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x14c]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x2b0]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2b0]
mov ecx, dword [eax]
shl edx, cl
mov eax, dword [ebp - 0x7c]
mov dword [eax], edx
movzx ecx, byte [ebp - 0x155]
sar ecx, 4
mov byte [ebp - 0x156], cl
mov edx, dword [ebp - 0xf8]
add edx, 0x9e
mov dword [ebp - 0xf8], edx
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x1fc]
or ecx, edx
mov eax, dword [ebp - 0x54]
mov word [eax], cx
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x154]
mov eax, dword [ecx]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov edx, dword [ebp - 0x14c]
and edx, dword [ebp - 0x2b0]
mov dword [ebp - 0x2f8], edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x2b0]
mov dword [ebp - 0x14c], ecx
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x154]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov dword [ebp - 0x17c], ecx
movzx edx, word [ebp - 0x1dc]
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
add edx, ecx
mov word [ebp - 0x1fc], dx
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0x144]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov edx, dword [ebp - 0x36c]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x1fc]
and eax, ecx
mov edx, dword [ebp - 0x54]
mov word [edx], ax
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x2b0]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x144]
add eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x154]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2b0]
add edx, dword [ebp - 0x14c]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x54]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x1dc]
sub edx, eax
mov ecx, dword [ebp - 0x54]
mov word [ecx], dx
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0x17c]
or eax, dword [edx]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
xor eax, dword [ebp - 0x2b0]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x144]
shl edx, cl
mov eax, dword [ebp - 0x14]
mov dword [eax], edx
mov edx, dword [ebp - 0x2b0]
mov ecx, dword [ebp - 0x2f8]
sar edx, cl
mov dword [ebp - 0x14c], edx
cmp dword [ebp - 0xf8], 0x8235
jne 0x46da1a
cmp dword [ebp - 0x58], 0x3a18
je 0x46df8a
mov eax, dword [ebp - 0x14c]
and eax, dword [ebp - 0x2f8]
mov dword [ebp - 0x2b0], eax
mov ecx, dword [ebp - 0x2f8]
sub ecx, dword [ebp - 0x2b0]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x1dc]
add ecx, edx
mov word [ebp - 0x1fc], cx
mov eax, dword [ebp - 0x154]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x144]
mov dword [ebp - 0x2b4], ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2f8]
add eax, dword [edx]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7c]
mov eax, dword [edx]
sub eax, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2f8]
and edx, dword [ebp - 0x2b0]
mov eax, dword [ebp - 0x7c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x1c]
add edx, dword [eax]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], edx
movzx edx, byte [ebp - 0x156]
add edx, 0xc2
mov byte [ebp - 0x155], dl
mov eax, dword [ebp - 0x14c]
sub eax, dword [ebp - 0x2f8]
mov dword [ebp - 0x2b0], eax
movzx ecx, byte [ebp - 0x155]
shl ecx, 7
mov byte [ebp - 0x156], cl
mov edx, dword [ebp - 0x36c]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x1dc]
xor eax, ecx
mov word [ebp - 0x1fc], ax
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0x17c]
or eax, dword [edx]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov edx, dword [ebp - 0x14]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x17c]
shr eax, cl
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
movzx edx, byte [ebp - 0x155]
and edx, 0xd5
mov byte [ebp - 0x156], dl
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x1dc]
sub ecx, edx
mov eax, dword [ebp - 0x54]
mov word [eax], cx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x7c]
add edx, dword [eax]
mov dword [ebp - 0x2f8], edx
mov ecx, dword [ebp - 0x154]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x14]
add edx, dword [eax]
mov dword [ebp - 0x17c], edx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x7c]
mov eax, dword [ecx]
sub eax, dword [edx]
mov dword [ebp - 0x2b0], eax
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2f8]
add edx, dword [ecx]
mov eax, dword [ebp - 0x7c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x54]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x1dc]
add edx, eax
mov ecx, dword [ebp - 0x54]
mov word [ecx], dx
movzx edx, byte [ebp - 0x155]
and edx, 0xdb
mov byte [ebp - 0x156], dl
mov eax, dword [ebp - 0x154]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x17c]
mov edx, dword [ebp - 0x154]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x2f8]
or ecx, dword [eax]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7c]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x2f8]
sar edx, cl
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x14c]
shl edx, cl
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x58]
add ecx, 0xa5
mov dword [ebp - 0x58], ecx
movzx edx, word [ebp - 0x1dc]
movzx eax, word [ebp - 0x1fc]
xor edx, eax
mov ecx, dword [ebp - 0x36c]
mov word [ecx], dx
mov edx, dword [ebp - 0x54]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x36c]
movzx edx, word [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x54]
mov word [ecx], ax
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x2b4]
and eax, dword [edx]
mov ecx, dword [ebp - 0x154]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2f8]
add eax, dword [edx]
mov dword [ebp - 0x14c], eax
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x14c]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x154]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x154]
mov dword [eax], edx
mov ecx, dword [ebp - 0x2b0]
sub ecx, dword [ebp - 0x14c]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
movzx eax, byte [ebp - 0x155]
add eax, 0x73
mov byte [ebp - 0x156], al
movzx ecx, word [ebp - 0x1dc]
mov edx, dword [ebp - 0x54]
movzx eax, word [edx]
add ecx, eax
mov word [ebp - 0x1fc], cx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x7c]
add edx, dword [eax]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], edx
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0x144]
and eax, dword [edx]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov edx, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x2f8]
sar edx, cl
mov dword [ebp - 0x2b0], edx
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x14c]
shl edx, cl
mov dword [ebp - 0x2b0], edx
movzx eax, byte [ebp - 0x156]
or eax, 0x83
mov byte [ebp - 0x155], al
jmp 0x46dc80
lea ecx, [ebp - 0x1fc]
mov dword [ebp - 0x90], ecx
mov dword [ebp - 0x208], 0xf953
mov dl, byte [ebp - 0x155]
mov byte [ebp - 0x398], dl
cmp byte [ebp - 0x398], 0x39
je 0x46dfb7
jmp 0x46dfeb
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
xor ecx, dword [ebp - 0x14c]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x90]
movzx ecx, word [eax]
push ecx
push 0xffffffffffffffa7
push 0x1f
mov dl, byte [ebp - 0x155]
mov cl, byte [ebp - 0x155]
call fcn.00478870
jmp 0x46e0b6
mov byte [ebp - 0x1dd], 0x32
lea edx, [ebp - 0x17c]
mov dword [ebp - 0x194], edx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x14c]
mov dword [ebp - 0x204], ecx
mov edx, dword [ebp - 0x54]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x36c]
movzx edx, word [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x54]
mov word [ecx], ax
mov dl, byte [ebp - 0x1dd]
mov byte [ebp - 0x39c], dl
cmp byte [ebp - 0x39c], 0x32
je 0x46e046
cmp byte [ebp - 0x39c], 0x34
je 0x46e0a0
jmp 0x46e0ac
lea eax, [ebp - 0x156]
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x288], 0x7150
lea ecx, [ebp - 0x144]
mov dword [ebp - 0xf4], ecx
lea edx, [ebp - 0x2b0]
mov dword [ebp - 0x180], edx
mov dword [ebp - 0x20], 0x7c6d
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x2b0]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
lea eax, [ebp - 0x144]
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0x60], 0x66d4
jmp 0x46e0ac
call dword [sym.imp.ole32.dll_CoRevokeMallocSpy]
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x1cc], 0x329d
mov dword [ebp - 0x214], 0xcaf7
mov ecx, dword [ebp - 0x194]
mov edx, dword [ecx]
mov dword [ebp - 0x3a0], edx
cmp dword [ebp - 0x3a0], 0
je 0x46e173
cmp dword [ebp - 0x3a0], 0xe60fd889
je 0x46e0ec
jmp 0x4720b0
lea eax, [ebp - 0x1fc]
push eax
push 0x77
lea ecx, [ebp - 0x10]
push ecx
push 0x80
lea edx, [ebp - 0x140]
push edx
lea eax, [ebp - 0x100]
push eax
lea ecx, [ebp - 0x310]
push ecx
call dword [sym.imp.ole32.dll_CoGetInstanceFromIStorage]
mov dword [ebp - 0xe4], eax
mov edx, dword [ebp - 0x2f8]
add edx, dword [ebp - 0x204]
mov dword [ebp - 0x14c], edx
mov eax, dword [ebp - 0x2b0]
mov ecx, dword [ebp - 0x2f8]
sar eax, cl
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
lea edx, [ebp - 0x70]
push edx
lea eax, [ebp - 0x2f4]
push eax
call dword [sym.imp.ole32.dll_CoGetTreatAsClass]
mov dword [ebp - 0x174], eax
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x90]
mov cx, word [eax]
call fcn.004721c0
jmp 0x4720b0
mov ecx, 0x5958
mov word [ebp - 0x294], cx
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x2f8]
or eax, dword [edx]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
movzx edx, byte [ebp - 0x156]
movzx ecx, byte [ebp - 0x155]
shl edx, cl
mov eax, dword [ebp - 0x94]
mov byte [eax], dl
mov ecx, dword [ebp - 0x54]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
xor edx, ecx
mov word [ebp - 0x1fc], dx
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0x2b4]
and eax, dword [edx]
mov ecx, dword [ebp - 0xe0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x180]
mov eax, dword [edx]
sub eax, dword [ebp - 0x204]
mov ecx, dword [ebp - 0x180]
mov dword [ecx], eax
movzx edx, byte [ebp - 0x155]
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x156], dl
mov edx, dword [ebp - 0x90]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x1dc]
and eax, ecx
mov edx, dword [ebp - 0x36c]
mov word [edx], ax
mov eax, dword [ebp - 0x17c]
add eax, dword [ebp - 0x144]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
sub eax, dword [ebp - 0x204]
mov dword [ebp - 0x2f8], eax
mov ecx, dword [ebp - 0x2f8]
sub ecx, dword [ebp - 0x2b0]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0xf4]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x17c]
mov edx, dword [ebp - 0xe0]
mov dword [edx], ecx
movzx eax, word [ebp - 0x1dc]
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
add eax, edx
mov word [ebp - 0x1fc], ax
mov eax, dword [ebp - 0x94]
movzx edx, byte [eax]
movzx ecx, byte [ebp - 0x156]
sar edx, cl
mov eax, dword [ebp - 0x94]
mov byte [eax], dl
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2b0]
or edx, dword [ecx]
mov dword [ebp - 0x2f8], edx
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x2b0]
xor ecx, dword [eax]
mov dword [ebp - 0x2f8], ecx
movsx edx, word [ebp - 0x294]
shl edx, 0xa
mov word [ebp - 0x294], dx
mov eax, dword [ebp - 0x154]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x2b4]
mov edx, dword [ebp - 0x194]
mov dword [edx], ecx
movzx eax, byte [ebp - 0x156]
movzx ecx, byte [ebp - 0x155]
sub eax, ecx
mov edx, dword [ebp - 0x94]
mov byte [edx], al
mov eax, dword [ebp - 0x2ac]
add eax, 0xe7
mov dword [ebp - 0x2ac], eax
movzx ecx, word [ebp - 0x1dc]
mov edx, dword [ebp - 0x90]
movzx eax, word [edx]
sub ecx, eax
mov edx, dword [ebp - 0x54]
mov word [edx], cx
mov eax, dword [ebp - 0x154]
mov ecx, dword [eax]
mov edx, dword [ebp - 0xf4]
add ecx, dword [edx]
mov dword [ebp - 0x2b4], ecx
mov eax, dword [ebp - 0xf4]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x154]
add ecx, dword [edx]
mov dword [ebp - 0x17c], ecx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x180]
mov edx, dword [eax]
and edx, dword [ecx]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x180]
mov edx, dword [ebp - 0x204]
add edx, dword [ecx]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x180]
mov edx, dword [ebp - 0x204]
add edx, dword [ecx]
mov dword [ebp - 0x2b0], edx
movzx eax, byte [ebp - 0x155]
movzx ecx, byte [ebp - 0x156]
sub eax, ecx
mov edx, dword [ebp - 0x94]
mov byte [edx], al
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x36c]
movzx eax, word [edx]
sub ecx, eax
mov edx, dword [ebp - 0x54]
mov word [edx], cx
mov eax, dword [ebp - 0x154]
mov ecx, dword [ebp - 0x194]
mov edx, dword [eax]
mov ecx, dword [ecx]
shr edx, cl
mov eax, dword [ebp - 0xf4]
mov dword [eax], edx
mov ecx, dword [ebp - 0x2f8]
xor ecx, dword [ebp - 0x204]
mov dword [ebp - 0x2b0], ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2b0]
mov ecx, dword [edx]
shl eax, cl
mov dword [ebp - 0x14c], eax
mov ecx, dword [ebp - 0x144]
or ecx, dword [ebp - 0x2b4]
mov edx, dword [ebp - 0x154]
mov dword [edx], ecx
movzx eax, word [ebp - 0x1fc]
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
and eax, edx
mov ecx, dword [ebp - 0x36c]
mov word [ecx], ax
movzx edx, byte [ebp - 0x155]
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x156], dl
movzx edx, word [ebp - 0x1fc]
movzx eax, word [ebp - 0x1dc]
sub edx, eax
mov ecx, dword [ebp - 0x54]
mov word [ecx], dx
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x2f8]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x14]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x154]
add eax, dword [ecx]
mov edx, dword [ebp - 0x194]
mov dword [edx], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x14c]
add ecx, dword [eax]
mov dword [ebp - 0x2b0], ecx
movzx edx, word [ebp - 0x1fc]
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
and edx, ecx
mov word [ebp - 0x1dc], dx
mov edx, dword [ebp - 0x94]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x156]
sub eax, ecx
mov edx, dword [ebp - 0x94]
mov byte [edx], al
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x14c]
add ecx, dword [eax]
mov edx, dword [ebp - 0x180]
mov dword [edx], ecx
mov eax, dword [ebp - 0xe0]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x194]
add ecx, dword [edx]
mov eax, dword [ebp - 0xe0]
mov dword [eax], ecx
cmp dword [ebp - 0x2ac], 0x9bb6
jbe 0x46e17f
mov ecx, dword [ebp - 0x180]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x204]
sar edx, cl
mov dword [ebp - 0x2f8], edx
mov al, byte [ebp - 0x1dd]
mov byte [ebp - 0x3a4], al
cmp byte [ebp - 0x3a4], 0x2f
je 0x471f80
cmp byte [ebp - 0x3a4], 0x32
je 0x46e53b
jmp 0x471fc1
cmp dword [ebp - 0x1cc], 0x5058
ja 0x46e870
mov ecx, dword [ebp - 0x2b0]
add ecx, dword [ebp - 0x204]
mov dword [ebp - 0x14c], ecx
mov edx, dword [ebp - 0x204]
add edx, dword [ebp - 0x2f8]
mov dword [ebp - 0x14c], edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x7c]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x180]
mov dword [eax], edx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x2f8]
mov eax, dword [ebp - 0x180]
mov dword [eax], edx
movsx ecx, byte [ebp - 0x1dd]
add ecx, 1
mov byte [ebp - 0x1dd], cl
mov edx, dword [ebp - 0x36c]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x54]
movzx edx, word [ecx]
and eax, edx
mov ecx, dword [ebp - 0x90]
mov word [ecx], ax
mov edx, dword [ebp - 0x94]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x156]
sub eax, ecx
mov byte [ebp - 0x155], al
mov edx, dword [ebp - 0x2b4]
mov ecx, dword [ebp - 0x17c]
shl edx, cl
mov eax, dword [ebp - 0xf4]
mov dword [eax], edx
mov ecx, dword [ebp - 0x154]
mov edx, dword [ebp - 0x17c]
xor edx, dword [ecx]
mov dword [ebp - 0x2b4], edx
mov eax, dword [ebp - 0x90]
movzx edx, word [eax]
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
sar edx, cl
mov ecx, dword [ebp - 0x36c]
mov word [ecx], dx
movzx edx, byte [ebp - 0x156]
movzx eax, byte [ebp - 0x155]
or edx, eax
mov ecx, dword [ebp - 0x94]
mov byte [ecx], dl
mov edx, dword [ebp - 0x2f8]
add edx, dword [ebp - 0x14c]
mov dword [ebp - 0x204], edx
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x14]
mov edx, dword [eax]
and edx, dword [ecx]
mov eax, dword [ebp - 0xf4]
mov dword [eax], edx
mov ecx, dword [ebp - 0x180]
mov edx, dword [ebp - 0x204]
sub edx, dword [ecx]
mov dword [ebp - 0x14c], edx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x2f8]
mov edx, dword [ebp - 0x180]
mov dword [edx], ecx
movzx eax, word [ebp - 0x1fc]
mov ecx, dword [ebp - 0x36c]
movzx edx, word [ecx]
sub eax, edx
mov word [ebp - 0x1dc], ax
movzx eax, byte [ebp - 0x156]
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x155], al
mov eax, dword [ebp - 0x2b4]
sub eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x154]
mov dword [ecx], eax
mov edx, dword [ebp - 0x14c]
sub edx, dword [ebp - 0x2b0]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
movsx ecx, byte [ebp - 0x1dd]
add ecx, 0x5a
mov byte [ebp - 0x1dd], cl
movsx edx, word [ebp - 0x294]
and edx, 0x71a7
mov word [ebp - 0x294], dx
mov eax, dword [ebp - 0x90]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x54]
movzx eax, word [edx]
xor ecx, eax
mov edx, dword [ebp - 0x36c]
mov word [edx], cx
movzx eax, byte [ebp - 0x156]
movzx ecx, byte [ebp - 0x155]
or eax, ecx
mov edx, dword [ebp - 0x94]
mov byte [edx], al
mov eax, dword [ebp - 0x144]
mov ecx, dword [ebp - 0x17c]
shl eax, cl
mov ecx, dword [ebp - 0xe0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x14c]
sar eax, cl
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x2b0]
add eax, dword [edx]
mov dword [ebp - 0x204], eax
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x194]
add edx, dword [eax]
mov ecx, dword [ebp - 0xe0]
mov dword [ecx], edx
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x2b0]
and eax, dword [edx]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
movzx edx, word [ebp - 0x1fc]
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
add edx, ecx
mov word [ebp - 0x1dc], dx
mov edx, dword [ebp - 0x94]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x156]
sub eax, ecx
mov edx, dword [ebp - 0x94]
mov byte [edx], al
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x2b0]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x154]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x194]
add ecx, dword [edx]
mov eax, dword [ebp - 0xe0]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x14c]
sub ecx, dword [ebp - 0x2f8]
mov dword [ebp - 0x2b0], ecx
mov edx, dword [ebp - 0x1cc]
add edx, 0xb1
mov dword [ebp - 0x1cc], edx
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x1c]
add ecx, dword [edx]
mov dword [ebp - 0x2b0], ecx
movzx eax, byte [ebp - 0x155]
movzx ecx, byte [ebp - 0x156]
sub eax, ecx
mov edx, dword [ebp - 0x94]
mov byte [edx], al
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x90]
movzx eax, word [edx]
sub ecx, eax
mov edx, dword [ebp - 0x54]
mov word [edx], cx
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x156]
or ecx, edx
mov eax, dword [ebp - 0x94]
mov byte [eax], cl
jmp 0x46e53b
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ecx]
xor edx, dword [ebp - 0x2b0]
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [eax]
mov ecx, dword [ecx]
sar eax, cl
cmp edx, eax
je 0x46e8f1
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x155]
and edx, eax
mov ecx, dword [ebp - 0x94]
mov byte [ecx], dl
mov edx, dword [ebp - 0x2b4]
sub edx, dword [ebp - 0x144]
mov dword [ebp - 0x17c], edx
lea eax, [ebp - 0x94]
push eax
push 0xdd
push 0xd3
call dword [sym.imp.ole32.dll_CoDosDateTimeToFileTime]
mov dword [ebp - 0x104], eax
movzx ecx, byte [ebp - 0x155]
push ecx
movzx edx, byte [ebp - 0x1dd]
push edx
call fcn.004d1cd0
jmp 0x471ec8
movsx eax, word [ebp - 0x294]
cmp eax, 0x3bb4
jg 0x471ec8
mov ecx, dword [ebp - 0x204]
add ecx, dword [ebp - 0x14c]
mov dword [ebp - 0x2f8], ecx
mov edx, dword [ebp - 0x180]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x1c]
add eax, dword [ecx]
mov edx, dword [ebp - 0x180]
mov dword [edx], eax
mov eax, dword [ebp - 0x154]
mov ecx, dword [ebp - 0x2b4]
sub ecx, dword [eax]
mov dword [ebp - 0x17c], ecx
mov edx, dword [ebp - 0x36c]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x1dc]
add eax, ecx
mov edx, dword [ebp - 0x90]
mov word [edx], ax
movzx eax, byte [ebp - 0x155]
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
xor eax, edx
mov byte [ebp - 0x156], al
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
or ecx, dword [ebp - 0x14c]
mov edx, dword [ebp - 0x180]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x204]
shl edx, cl
mov dword [ebp - 0x2b0], edx
mov eax, dword [ebp - 0xe0]
mov edx, dword [ebp - 0x144]
mov ecx, dword [eax]
shr edx, cl
mov dword [ebp - 0x2b4], edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x14c]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x204]
add ecx, dword [eax]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
movsx eax, byte [ebp - 0x1dd]
add eax, 0x77
mov byte [ebp - 0x1dd], al
movsx ecx, word [ebp - 0x294]
sub ecx, 0x1eb7
mov word [ebp - 0x294], cx
movzx edx, word [ebp - 0x1dc]
mov eax, dword [ebp - 0x90]
movzx ecx, word [eax]
sub edx, ecx
mov word [ebp - 0x1fc], dx
movzx edx, byte [ebp - 0x155]
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
and edx, ecx
mov byte [ebp - 0x156], dl
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x144]
sub eax, dword [edx]
mov ecx, dword [ebp - 0xe0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2b0]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
movzx edx, word [ebp - 0x1dc]
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
add edx, ecx
mov eax, dword [ebp - 0x36c]
mov word [eax], dx
movzx ecx, byte [ebp - 0x156]
movzx edx, byte [ebp - 0x155]
add ecx, edx
mov eax, dword [ebp - 0x94]
mov byte [eax], cl
mov ecx, dword [ebp - 0x154]
mov edx, dword [ebp - 0x194]
mov eax, dword [ecx]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x204]
mov ecx, dword [edx]
sar eax, cl
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2f8]
or edx, dword [ebp - 0x14c]
mov dword [ebp - 0x2b0], edx
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x17c]
shl edx, cl
mov eax, dword [ebp - 0x154]
mov dword [eax], edx
movzx ecx, byte [ebp - 0x155]
movzx edx, byte [ebp - 0x156]
and ecx, edx
mov eax, dword [ebp - 0x94]
mov byte [eax], cl
mov ecx, dword [ebp - 0x110]
sub ecx, 0xa3
mov dword [ebp - 0x110], ecx
mov edx, dword [ebp - 0x90]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x1fc]
add eax, ecx
mov word [ebp - 0x1dc], ax
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x204]
sub eax, dword [edx]
mov dword [ebp - 0x2b0], eax
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x7c]
add edx, dword [eax]
mov ecx, dword [ebp - 0x180]
mov dword [ecx], edx
movzx edx, word [ebp - 0x1dc]
mov eax, dword [ebp - 0x90]
movzx ecx, word [eax]
add edx, ecx
mov eax, dword [ebp - 0x36c]
mov word [eax], dx
movsx ecx, byte [ebp - 0x1dd]
sub ecx, 0x28
mov byte [ebp - 0x1dd], cl
mov edx, dword [ebp - 0x94]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x156]
and eax, ecx
mov edx, dword [ebp - 0x94]
mov byte [edx], al
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x1fc]
add ecx, edx
mov word [ebp - 0x1dc], cx
mov eax, dword [ebp - 0xe0]
mov ecx, dword [ebp - 0x2b4]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x14]
mov dword [edx], ecx
mov eax, dword [ebp - 0x2b4]
sub eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0xf4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7c]
mov eax, dword [edx]
xor eax, dword [ebp - 0x2f8]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x1c]
mov edx, dword [edx]
mov ecx, dword [eax]
sar edx, cl
mov eax, dword [ebp - 0x180]
mov dword [eax], edx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14c]
mov ecx, dword [ecx]
shl edx, cl
mov eax, dword [ebp - 0x7c]
mov dword [eax], edx
movzx ecx, byte [ebp - 0x156]
movzx edx, byte [ebp - 0x155]
or ecx, edx
mov eax, dword [ebp - 0x94]
mov byte [eax], cl
mov ecx, dword [ebp - 0x54]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x1dc]
and edx, eax
mov word [ebp - 0x1fc], dx
mov ecx, dword [ebp - 0x194]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x154]
mov dword [eax], edx
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ecx]
add edx, dword [ebp - 0x2b0]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x180]
mov eax, dword [ecx]
sub eax, dword [edx]
mov dword [ebp - 0x2f8], eax
mov ecx, dword [ebp - 0xe0]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x2b4]
mov dword [ebp - 0x17c], edx
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x156]
add ecx, edx
mov eax, dword [ebp - 0x94]
mov byte [eax], cl
movzx ecx, word [ebp - 0x1dc]
mov edx, dword [ebp - 0x90]
movzx eax, word [edx]
sub ecx, eax
mov edx, dword [ebp - 0x36c]
mov word [edx], cx
movzx eax, byte [ebp - 0x156]
movzx ecx, byte [ebp - 0x155]
and eax, ecx
mov edx, dword [ebp - 0x94]
mov byte [edx], al
movsx eax, word [ebp - 0x294]
add eax, 0x7d76
mov word [ebp - 0x294], ax
mov ecx, dword [ebp - 0x17c]
or ecx, dword [ebp - 0x2b4]
mov dword [ebp - 0x144], ecx
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x14c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
movzx edx, byte [ebp - 0x156]
movzx ecx, byte [ebp - 0x155]
sar edx, cl
mov eax, dword [ebp - 0x94]
mov byte [eax], dl
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
movzx ecx, word [ebp - 0x1dc]
shl edx, cl
mov word [ebp - 0x1fc], dx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x2b0]
sub ecx, dword [eax]
mov dword [ebp - 0x204], ecx
cmp dword [ebp - 0x110], 0x1838
jae 0x46e903
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0x194]
mov ecx, dword [edx]
and ecx, dword [eax]
mov edx, dword [ebp - 0xe0]
mov dword [edx], ecx
cmp dword [ebp - 0x60], 0x1d79
jbe 0x46f146
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x204]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x14c]
add eax, dword [ebp - 0x204]
mov dword [ebp - 0x2b0], eax
movzx ecx, byte [ebp - 0x155]
movzx edx, byte [ebp - 0x156]
sub ecx, edx
mov eax, dword [ebp - 0x94]
mov byte [eax], cl
mov ecx, dword [ebp - 0x36c]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x1fc]
add edx, eax
mov ecx, dword [ebp - 0x90]
mov word [ecx], dx
mov edx, dword [ebp - 0x194]
mov eax, dword [edx]
add eax, dword [ebp - 0x144]
mov ecx, dword [ebp - 0xe0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2b0]
add edx, dword [ebp - 0x204]
mov dword [ebp - 0x14c], edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x204]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x180]
mov dword [edx], ecx
mov eax, dword [ebp - 0x2f8]
and eax, dword [ebp - 0x2b0]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x2b0]
shl eax, cl
mov ecx, dword [ebp - 0x180]
mov dword [ecx], eax
movsx edx, byte [ebp - 0x1dd]
sar edx, 2
mov byte [ebp - 0x1dd], dl
movsx eax, word [ebp - 0x294]
or eax, 0x6547
mov word [ebp - 0x294], ax
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x156]
xor edx, eax
mov byte [ebp - 0x155], dl
mov ecx, dword [ebp - 0x36c]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x1fc]
sub edx, eax
mov ecx, dword [ebp - 0x54]
mov word [ecx], dx
mov edx, dword [ebp - 0x17c]
add edx, dword [ebp - 0x2b4]
mov dword [ebp - 0x144], edx
mov eax, dword [ebp - 0xe0]
mov ecx, dword [ebp - 0x2b4]
and ecx, dword [eax]
mov edx, dword [ebp - 0x154]
mov dword [edx], ecx
movzx eax, word [ebp - 0x1dc]
movzx ecx, word [ebp - 0x1fc]
sub eax, ecx
mov edx, dword [ebp - 0x54]
mov word [edx], ax
mov eax, dword [ebp - 0x60]
sub eax, 0xd3
mov dword [ebp - 0x60], eax
movzx ecx, byte [ebp - 0x155]
movzx edx, byte [ebp - 0x156]
add ecx, edx
mov eax, dword [ebp - 0x94]
mov byte [eax], cl
mov ecx, dword [ebp - 0x180]
mov edx, dword [ebp - 0x2f8]
add edx, dword [ecx]
mov dword [ebp - 0x2b0], edx
mov eax, dword [ebp - 0x194]
mov ecx, dword [ebp - 0x17c]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x14]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x14c]
add ecx, dword [eax]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x1c]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x7c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x156]
add edx, eax
mov ecx, dword [ebp - 0x94]
mov byte [ecx], dl
mov edx, dword [ebp - 0x36c]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x54]
movzx edx, word [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x36c]
mov word [ecx], ax
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x194]
mov ecx, dword [edx]
xor ecx, dword [eax]
mov edx, dword [ebp - 0xe0]
mov dword [edx], ecx
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax]
or ecx, dword [ebp - 0x2b0]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
movzx eax, byte [ebp - 0x156]
movzx ecx, byte [ebp - 0x155]
sar eax, cl
mov ecx, dword [ebp - 0x94]
mov byte [ecx], al
movsx edx, word [ebp - 0x294]
shl edx, 3
mov word [ebp - 0x294], dx
movzx eax, word [ebp - 0x1fc]
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
and eax, edx
mov word [ebp - 0x1dc], ax
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x156]
add ecx, edx
mov eax, dword [ebp - 0x94]
mov byte [eax], cl
mov ecx, dword [ebp - 0x194]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x144]
mov eax, dword [ebp - 0xf4]
mov dword [eax], edx
mov ecx, dword [ebp - 0x2f8]
and ecx, dword [ebp - 0x204]
mov edx, dword [ebp - 0x180]
mov dword [edx], ecx
mov eax, dword [ebp - 0x204]
sub eax, dword [ebp - 0x2f8]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0xf4]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov dword [ebp - 0x17c], ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
add eax, dword [ebp - 0x2f8]
mov dword [ebp - 0x204], eax
movzx ecx, word [ebp - 0x1dc]
mov edx, dword [ebp - 0x36c]
movzx eax, word [edx]
add ecx, eax
mov word [ebp - 0x1fc], cx
movzx ecx, byte [ebp - 0x156]
movzx edx, byte [ebp - 0x155]
add ecx, edx
mov eax, dword [ebp - 0x94]
mov byte [eax], cl
mov ecx, dword [ebp - 0x14c]
or ecx, dword [ebp - 0x2f8]
mov dword [ebp - 0x204], ecx
mov edx, dword [ebp - 0x144]
mov ecx, dword [ebp - 0x17c]
shr edx, cl
mov dword [ebp - 0x2b4], edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x7c]
mov edx, dword [eax]
mov ecx, dword [ecx]
shl edx, cl
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2f8]
xor edx, dword [ecx]
mov dword [ebp - 0x14c], edx
movzx eax, word [ebp - 0x1fc]
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
and eax, edx
mov ecx, dword [ebp - 0x54]
mov word [ecx], ax
movzx edx, byte [ebp - 0x156]
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x155], dl
movsx edx, byte [ebp - 0x1dd]
sub edx, 0x7d
mov byte [ebp - 0x1dd], dl
movzx eax, byte [ebp - 0x155]
movzx ecx, byte [ebp - 0x156]
sub eax, ecx
mov edx, dword [ebp - 0x94]
mov byte [edx], al
mov eax, dword [ebp - 0x154]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x194]
add ecx, dword [edx]
mov eax, dword [ebp - 0x14]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x180]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ecx]
and eax, dword [edx]
mov dword [ebp - 0x14c], eax
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x156]
add edx, eax
mov ecx, dword [ebp - 0x94]
mov byte [ecx], dl
jmp 0x46ed57
cmp dword [ebp - 0x288], 0x658e
jb 0x46f3ec
movzx edx, word [ebp - 0x1dc]
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
add edx, ecx
mov word [ebp - 0x1fc], dx
mov edx, dword [ebp - 0xe0]
mov eax, dword [ebp - 0x14]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0xf4]
mov dword [edx], ecx
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x2f8]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x2f8]
mov ecx, dword [ebp - 0x2b0]
shl eax, cl
mov dword [ebp - 0x204], eax
mov edx, dword [ebp - 0x2b4]
mov ecx, dword [ebp - 0x144]
shr edx, cl
mov dword [ebp - 0x17c], edx
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x155]
or ecx, edx
mov byte [ebp - 0x156], cl
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x90]
movzx eax, word [edx]
xor ecx, eax
mov word [ebp - 0x1dc], cx
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ecx]
and edx, dword [ebp - 0x2f8]
mov eax, dword [ebp - 0x180]
mov dword [eax], edx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14c]
add edx, dword [ecx]
mov dword [ebp - 0x2b0], edx
mov eax, dword [ebp - 0x17c]
sub eax, dword [ebp - 0x144]
mov ecx, dword [ebp - 0x194]
mov dword [ecx], eax
mov edx, dword [ebp - 0x180]
mov eax, dword [edx]
sub eax, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x7c]
add eax, dword [ecx]
mov edx, dword [ebp - 0x180]
mov dword [edx], eax
movsx eax, word [ebp - 0x294]
sub eax, 0x563
mov word [ebp - 0x294], ax
mov ecx, dword [ebp - 0x288]
sub ecx, 0x46
mov dword [ebp - 0x288], ecx
mov edx, dword [ebp - 0x7c]
mov eax, dword [edx]
and eax, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x180]
mov dword [ecx], eax
mov edx, dword [ebp - 0x94]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x156]
sub eax, ecx
mov edx, dword [ebp - 0x94]
mov byte [edx], al
movzx eax, word [ebp - 0x1fc]
mov ecx, dword [ebp - 0x36c]
movzx edx, word [ecx]
add eax, edx
mov word [ebp - 0x1dc], ax
mov eax, dword [ebp - 0x144]
add eax, dword [ebp - 0x17c]
mov dword [ebp - 0x2b4], eax
mov edx, dword [ebp - 0x2b0]
mov ecx, dword [ebp - 0x204]
sar edx, cl
mov dword [ebp - 0x2f8], edx
movzx eax, byte [ebp - 0x155]
movzx ecx, byte [ebp - 0x156]
xor eax, ecx
mov edx, dword [ebp - 0x94]
mov byte [edx], al
mov eax, dword [ebp - 0x36c]
movzx edx, word [eax]
movzx ecx, word [ebp - 0x1dc]
shl edx, cl
mov word [ebp - 0x1fc], dx
mov eax, dword [ebp - 0x194]
mov ecx, dword [ebp - 0x144]
or ecx, dword [eax]
mov dword [ebp - 0x2b4], ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x7c]
mov ecx, dword [edx]
and ecx, dword [eax]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x7c]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x180]
mov dword [eax], edx
mov ecx, dword [ebp - 0xe0]
mov edx, dword [ebp - 0x194]
mov eax, dword [ecx]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x154]
mov dword [ecx], eax
movzx edx, word [ebp - 0x1fc]
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
sub edx, ecx
mov word [ebp - 0x1dc], dx
mov edx, dword [ebp - 0x94]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x155]
add eax, ecx
mov edx, dword [ebp - 0x94]
mov byte [edx], al
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x2f8]
mov dword [ebp - 0x2b0], ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x7c]
add eax, dword [ecx]
mov edx, dword [ebp - 0x180]
mov dword [edx], eax
mov eax, dword [ebp - 0x204]
and eax, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
movsx edx, byte [ebp - 0x1dd]
sub edx, 0x28
mov byte [ebp - 0x1dd], dl
movzx eax, byte [ebp - 0x156]
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
xor eax, edx
mov byte [ebp - 0x155], al
jmp 0x46f146
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x1dc]
or ecx, edx
mov word [ebp - 0x1fc], cx
mov eax, dword [ebp - 0xe0]
mov edx, dword [ebp - 0x2b4]
mov ecx, dword [eax]
shr edx, cl
mov dword [ebp - 0x144], edx
mov eax, dword [ebp - 0x194]
mov ecx, dword [ebp - 0x14]
mov edx, dword [eax]
mov ecx, dword [ecx]
shl edx, cl
mov dword [ebp - 0x144], edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x2f8]
mov dword [ebp - 0x2b0], ecx
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edx]
and ecx, dword [eax]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x2b0]
sub eax, dword [ebp - 0x204]
mov dword [ebp - 0x14c], eax
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x155]
add edx, eax
mov ecx, dword [ebp - 0x94]
mov byte [ecx], dl
mov edx, dword [ebp - 0x54]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
add eax, edx
mov word [ebp - 0x1dc], ax
mov eax, dword [ebp - 0x144]
sub eax, dword [ebp - 0x2b4]
mov dword [ebp - 0x17c], eax
mov ecx, dword [ebp - 0x14c]
add ecx, dword [ebp - 0x204]
mov edx, dword [ebp - 0x180]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x2b0]
mov dword [ebp - 0x204], ecx
mov edx, dword [ebp - 0x17c]
add edx, dword [ebp - 0x144]
mov dword [ebp - 0x2b4], edx
movzx eax, byte [ebp - 0x156]
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
and eax, edx
mov byte [ebp - 0x155], al
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x1fc]
xor ecx, edx
mov eax, dword [ebp - 0x54]
mov word [eax], cx
movzx edx, word [ebp - 0x1dc]
movzx ecx, word [ebp - 0x1fc]
shl edx, cl
mov eax, dword [ebp - 0x54]
mov word [eax], dx
mov ecx, dword [ebp - 0x180]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x14c]
sar edx, cl
mov eax, dword [ebp - 0x180]
mov dword [eax], edx
mov ecx, dword [ebp - 0x144]
or ecx, dword [ebp - 0x17c]
mov edx, dword [ebp - 0x154]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x180]
add ecx, dword [edx]
mov eax, dword [ebp - 0x1c]
mov dword [eax], ecx
movzx ecx, byte [ebp - 0x156]
movzx edx, byte [ebp - 0x155]
sub ecx, edx
mov eax, dword [ebp - 0x94]
mov byte [eax], cl
movzx ecx, word [ebp - 0x1fc]
movzx edx, word [ebp - 0x1dc]
and ecx, edx
mov eax, dword [ebp - 0x36c]
mov word [eax], cx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14c]
add edx, dword [ecx]
mov dword [ebp - 0x2b0], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x144]
mov edx, dword [ebp - 0xe0]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x2f8]
mov edx, dword [ebp - 0x180]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x2b0]
sub ecx, dword [eax]
mov dword [ebp - 0x2f8], ecx
movzx edx, word [ebp - 0x1fc]
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
add edx, ecx
mov word [ebp - 0x1dc], dx
mov edx, dword [ebp - 0x1c8]
sub edx, 0x31
mov dword [ebp - 0x1c8], edx
movzx eax, byte [ebp - 0x156]
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x155], al
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x194]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x14]
mov dword [eax], edx
mov ecx, dword [ebp - 0x2b0]
sub ecx, dword [ebp - 0x204]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x204]
mov ecx, dword [eax]
shl edx, cl
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14c]
mov ecx, dword [ecx]
sar edx, cl
mov eax, dword [ebp - 0x7c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ecx]
xor edx, dword [ebp - 0x204]
mov eax, dword [ebp - 0x180]
mov dword [eax], edx
movsx ecx, word [ebp - 0x294]
or ecx, 0x7b52
mov word [ebp - 0x294], cx
cmp dword [ebp - 0x1c8], 0x4314
ja 0x46f3ec
movsx edx, word [ebp - 0x294]
mov dword [ebp - 0x3a8], edx
cmp dword [ebp - 0x3a8], 0x7bf6
je 0x46f6b0
jmp 0x46f783
lea eax, [ebp - 0x1dd]
mov dword [ebp - 0x29c], eax
movzx ecx, word [ebp - 0x1dc]
mov dword [ebp - 0x3ac], ecx
cmp dword [ebp - 0x3ac], 0
je 0x46f6e7
cmp dword [ebp - 0x3ac], 0x455
je 0x46f768
jmp 0x46f781
mov edx, dword [ebp - 0x90]
mov ax, word [edx]
mov word [ebp - 0x2fc], ax
mov cl, byte [ebp - 0x156]
mov byte [ebp - 0x295], cl
movsx edx, word [ebp - 0x294]
mov dword [ebp - 0x3b0], edx
cmp dword [ebp - 0x3b0], 0x7bf6
je 0x46f71e
jmp 0x46f756
lea eax, [ebp - 0x144]
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x17c]
and edx, dword [ecx]
mov eax, dword [ebp - 0xf4]
mov dword [eax], edx
lea ecx, [ebp - 0x156]
mov dword [ebp - 0x20c], ecx
mov dx, word [ebp - 0x1dc]
mov word [ebp - 0x218], dx
jmp 0x46f766
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x204]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
jmp 0x46f781
push 0x30
mov eax, dword [ebp - 0x28c]
push eax
mov ecx, dword [ebp - 0x28]
push ecx
call dword [sym.imp.SHELL32.dll_SHEmptyRecycleBinW]
mov dword [ebp - 0xe4], eax
jmp 0x46f797
mov edx, dword [ebp - 0xf4]
mov eax, dword [edx]
add eax, dword [ebp - 0x17c]
mov dword [ebp - 0x144], eax
mov ecx, dword [ebp - 0x180]
mov edx, dword [ecx]
and edx, dword [ebp - 0x204]
mov eax, dword [ebp - 0x7c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x180]
add edx, dword [eax]
mov dword [ebp - 0x2f8], edx
movzx ecx, byte [ebp - 0x155]
mov edx, dword [ebp - 0x20c]
movzx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x156], cl
mov ecx, dword [ebp - 0x36c]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x90]
movzx ecx, word [eax]
sub edx, ecx
mov eax, dword [ebp - 0x54]
mov word [eax], dx
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0xe0]
mov eax, dword [ecx]
sub eax, dword [edx]
mov dword [ebp - 0x2b4], eax
mov ecx, dword [ebp - 0x180]
mov edx, dword [ecx]
add edx, dword [ebp - 0x2b0]
mov eax, dword [ebp - 0x180]
mov dword [eax], edx
mov ecx, dword [ebp - 0x29c]
movsx edx, byte [ecx]
sar edx, 5
mov byte [ebp - 0x1dd], dl
movsx eax, word [ebp - 0x294]
shl eax, 1
mov word [ebp - 0x294], ax
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x20c]
movzx ecx, byte [eax]
or edx, ecx
mov byte [ebp - 0x295], dl
movzx edx, word [ebp - 0x218]
mov eax, dword [ebp - 0x90]
movzx ecx, word [eax]
xor edx, ecx
mov eax, dword [ebp - 0x36c]
mov word [eax], dx
mov ecx, dword [ebp - 0x144]
and ecx, dword [ebp - 0x2b4]
mov dword [ebp - 0x17c], ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
sub eax, dword [ebp - 0x2f8]
mov dword [ebp - 0x2b0], eax
mov ecx, dword [ebp - 0x180]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x2f8]
mov dword [ebp - 0x14c], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x2b4]
mov dword [ebp - 0x144], ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
add eax, dword [ebp - 0x2f8]
mov dword [ebp - 0x204], eax
movzx ecx, word [ebp - 0x2fc]
movzx edx, word [ebp - 0x1dc]
and ecx, edx
mov word [ebp - 0x1fc], cx
movzx eax, byte [ebp - 0x155]
mov ecx, dword [ebp - 0x20c]
movzx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x94]
mov byte [ecx], al
mov edx, dword [ebp - 0x180]
mov eax, dword [edx]
sub eax, dword [ebp - 0x2b0]
mov dword [ebp - 0x204], eax
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ecx]
add edx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x74]
mov dword [eax], edx
mov ecx, dword [ebp - 0x78]
sub ecx, 0x32
mov dword [ebp - 0x78], ecx
mov edx, dword [ebp - 0x2b0]
add edx, dword [ebp - 0x14c]
mov eax, dword [ebp - 0x180]
mov dword [eax], edx
mov ecx, dword [ebp - 0x180]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x2b0]
sar edx, cl
mov dword [ebp - 0x14c], edx
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x1dc]
xor ecx, edx
mov eax, dword [ebp - 0x54]
mov word [eax], cx
movzx edx, byte [ebp - 0x155]
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 0x295], dl
mov ecx, dword [ebp - 0x29c]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x1dd]
or edx, eax
mov ecx, dword [ebp - 0x29c]
mov byte [ecx], dl
movsx edx, byte [ebp - 0x1dd]
and edx, 0x28
mov eax, dword [ebp - 0x29c]
mov byte [eax], dl
mov ecx, dword [ebp - 0x144]
add ecx, dword [ebp - 0x17c]
mov dword [ebp - 0x2b4], ecx
mov edx, dword [ebp - 0x204]
add edx, dword [ebp - 0x2b0]
mov eax, dword [ebp - 0x7c]
mov dword [eax], edx
movzx ecx, byte [ebp - 0x155]
movzx edx, byte [ebp - 0x156]
sub ecx, edx
mov byte [ebp - 0x295], cl
movzx eax, word [ebp - 0x218]
mov ecx, dword [ebp - 0x54]
movzx edx, word [ecx]
sub eax, edx
mov word [ebp - 0x1dc], ax
mov eax, dword [ebp - 0x144]
sub eax, dword [ebp - 0x2b4]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x2b0]
and eax, dword [edx]
mov ecx, dword [ebp - 0x180]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x14c]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x180]
mov dword [ecx], eax
mov edx, dword [ebp - 0x74]
mov eax, dword [edx]
add eax, dword [ebp - 0x2b4]
mov ecx, dword [ebp - 0xe0]
mov dword [ecx], eax
cmp dword [ebp - 0x78], 0xec91
jae 0x46f7aa
movzx edx, byte [ebp - 0x155]
movzx eax, byte [ebp - 0x295]
add edx, eax
mov byte [ebp - 0x156], dl
movsx ecx, word [ebp - 0x294]
sar ecx, 0x3d
cmp ecx, 0x3e0a
je 0x46fbbb
mov edx, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x2b4]
shl edx, cl
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x144]
cmp edx, ecx
jae 0x46faf1
mov edx, dword [ebp - 0x36c]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
add eax, edx
mov ecx, dword [ebp - 0x36c]
mov word [ecx], ax
lea edx, [ebp - 0x100]
push edx
lea eax, [ebp - 0x168]
push eax
push 0x32
call dword [sym.imp.SHELL32.dll_SHGetImageList]
mov dword [ebp - 0x170], eax
movzx ecx, byte [ebp - 0x295]
push ecx
movzx edx, word [ebp - 0x2fc]
push edx
call section..text
jmp 0x46fbb9
movsx eax, word [ebp - 0x294]
sub eax, 0x50d9
cmp eax, 0x3c8c
je 0x46fba8
lea ecx, [ebp - 0x204]
mov dword [ebp - 0x19c], ecx
movsx edx, word [ebp - 0x294]
mov dword [ebp - 0x3b4], edx
cmp dword [ebp - 0x3b4], 0x1817
je 0x46fb2f
jmp 0x46fba6
mov eax, dword [ebp - 0x2b4]
mov dword [ebp - 0x3b8], eax
cmp dword [ebp - 0x3b8], 0x46d04d66
je 0x46fb96
cmp dword [ebp - 0x3b8], 0xad3add8f
je 0x46fb55
jmp 0x46fba6
mov ecx, dword [ebp - 0x2b0]
add ecx, dword [ebp - 0x14c]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x194]
mov ecx, dword [ebp - 0x17c]
sub ecx, dword [eax]
mov dword [ebp - 0x2b4], ecx
lea edx, [ebp - 0x1dd]
push edx
lea eax, [ebp - 0x294]
push eax
call dword [sym.imp.ole32.dll_CoCopyProxy]
mov dword [ebp - 0x88], eax
jmp 0x46fba6
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
and edx, dword [ebp - 0x2f8]
mov eax, dword [ebp - 0x7c]
mov dword [eax], edx
jmp 0x46fbb9
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14c]
add edx, dword [ecx]
mov dword [ebp - 0x204], edx
jmp 0x46fbd0
movzx eax, byte [ebp - 0x156]
push eax
movzx ecx, byte [ebp - 0x1dd]
push ecx
call fcn.004d1cd0
lea edx, [ebp - 0x1dd]
mov dword [ebp - 0x2b8], edx
movsx eax, word [ebp - 0x294]
xor eax, 0x291b
mov word [ebp - 0x294], ax
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
movzx ecx, word [ebp - 0x1fc]
shl edx, cl
mov word [ebp - 0x1dc], dx
mov eax, dword [ebp - 0x94]
movzx edx, byte [eax]
mov eax, dword [ebp - 0x20c]
movzx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 0x295], dl
mov ecx, dword [ebp - 0xe0]
mov edx, dword [ebp - 0x144]
or edx, dword [ecx]
mov dword [ebp - 0x17c], edx
mov eax, dword [ebp - 0x2b0]
add eax, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x94]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x156]
and eax, ecx
mov edx, dword [ebp - 0x20c]
mov byte [edx], al
mov eax, dword [ebp - 0x90]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x1dc]
add ecx, edx
mov word [ebp - 0x2fc], cx
mov eax, dword [ebp - 0x2b4]
sub eax, dword [ebp - 0x144]
mov ecx, dword [ebp - 0x194]
mov dword [ecx], eax
mov edx, dword [ebp - 0x204]
add edx, dword [ebp - 0x14c]
mov dword [ebp - 0x2b0], edx
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x2f8]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x194]
mov ecx, dword [ebp - 0xe0]
mov edx, dword [eax]
sub edx, dword [ecx]
mov dword [ebp - 0x2b4], edx
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x218]
add ecx, edx
mov eax, dword [ebp - 0x90]
mov word [eax], cx
movzx ecx, byte [ebp - 0x155]
mov edx, dword [ebp - 0x94]
movzx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x20c]
mov byte [edx], cl
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x2b0]
and ecx, dword [eax]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x180]
mov edx, dword [eax]
xor edx, dword [ecx]
mov dword [ebp - 0x2b0], edx
mov eax, dword [ebp - 0x29c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x2b8]
movsx eax, byte [edx]
or ecx, eax
mov byte [ebp - 0x1dd], cl
movsx ecx, word [ebp - 0x294]
sar ecx, 6
mov word [ebp - 0x294], cx
movzx edx, byte [ebp - 0x295]
movzx ecx, byte [ebp - 0x155]
shl edx, cl
mov eax, dword [ebp - 0x94]
mov byte [eax], dl
movzx ecx, word [ebp - 0x1fc]
movzx edx, word [ebp - 0x218]
add ecx, edx
mov word [ebp - 0x2fc], cx
mov eax, dword [ebp - 0x154]
mov ecx, dword [ebp - 0x2b4]
sub ecx, dword [eax]
mov dword [ebp - 0x144], ecx
mov edx, dword [ebp - 0x2b4]
and edx, dword [ebp - 0x144]
mov dword [ebp - 0x17c], edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x2b0]
mov edx, dword [ebp - 0x180]
mov dword [edx], ecx
mov eax, dword [ebp - 0x20]
add eax, 0x90
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x2b0]
sub ecx, dword [ebp - 0x14c]
mov dword [ebp - 0x204], ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x7c]
add eax, dword [ecx]
mov edx, dword [ebp - 0x19c]
mov dword [edx], eax
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x36c]
movzx eax, word [edx]
sub ecx, eax
mov edx, dword [ebp - 0x90]
mov word [edx], cx
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x20c]
movzx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x94]
mov byte [edx], cl
mov eax, dword [ebp - 0xe0]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x144]
mov edx, dword [ebp - 0xf4]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x14c]
add ecx, dword [eax]
mov edx, dword [ebp - 0x19c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x14c]
add eax, dword [ebp - 0x2b0]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2b4]
mov ecx, dword [ebp - 0x17c]
shr edx, cl
mov dword [ebp - 0x144], edx
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x2fc]
or ecx, edx
mov word [ebp - 0x1dc], cx
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x20c]
movzx eax, byte [edx]
xor ecx, eax
mov byte [ebp - 0x156], cl
cmp dword [ebp - 0x20], 0x964d
jbe 0x46fbdc
mov cl, byte [ebp - 0x1dd]
mov byte [ebp - 0x21], cl
mov edx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x7c]
mov edx, dword [edx]
mov ecx, dword [eax]
shl edx, cl
mov eax, dword [ebp - 0x14c]
and eax, dword [ebp - 0x2b0]
cmp edx, eax
jg 0x471e32
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x204]
and edx, dword [ecx]
mov dword [ebp - 0x2f8], edx
mov eax, dword [ebp - 0x1ac]
add eax, 0xd7
mov dword [ebp - 0x1ac], eax
mov ecx, dword [ebp - 0x54]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x218]
sub edx, eax
mov word [ebp - 0x1fc], dx
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x295]
add edx, eax
mov ecx, dword [ebp - 0x20c]
mov byte [ecx], dl
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x19c]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0xe0]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x144]
mov dword [ebp - 0x17c], ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x7c]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x19c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7c]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x204]
sar edx, cl
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x20c]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x295]
or edx, eax
mov ecx, dword [ebp - 0x94]
mov byte [ecx], dl
movzx edx, word [ebp - 0x2fc]
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
shl edx, cl
mov ecx, dword [ebp - 0x36c]
mov word [ecx], dx
mov edx, dword [ebp - 0x144]
xor edx, dword [ebp - 0x17c]
mov dword [ebp - 0x2b4], edx
mov eax, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x180]
mov edx, dword [eax]
and edx, dword [ecx]
mov eax, dword [ebp - 0x19c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x180]
mov edx, dword [ebp - 0x14c]
add edx, dword [ecx]
mov eax, dword [ebp - 0x19c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x19c]
mov edx, dword [ebp - 0x204]
add edx, dword [ecx]
mov dword [ebp - 0x14c], edx
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x14c]
sub ecx, dword [eax]
mov dword [ebp - 0x204], ecx
mov edx, dword [ebp - 0x2b8]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x21]
sub eax, ecx
mov byte [ebp - 0x1dd], al
cmp dword [ebp - 0x1ac], 0x561b
jb 0x46fed6
mov edx, dword [ebp - 0x94]
mov al, byte [edx]
mov byte [ebp - 0x3bc], al
cmp byte [ebp - 0x3bc], 0xb0
je 0x47005d
cmp byte [ebp - 0x3bc], 0xeb
je 0x470108
jmp 0x47016c
mov ecx, dword [ebp - 0xe0]
mov edx, dword [ebp - 0x154]
mov eax, dword [ecx]
and eax, dword [edx]
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x194]
mov ecx, dword [ecx]
sub ecx, dword [edx]
cmp eax, ecx
jbe 0x4700ef
mov edx, dword [ebp - 0x180]
mov eax, dword [edx]
sub eax, dword [ebp - 0x2f8]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov dl, byte [ebp - 0x295]
mov byte [ebp - 0x3c0], dl
cmp byte [ebp - 0x3c0], 0x8c
je 0x4700b4
cmp byte [ebp - 0x3c0], 0xd8
je 0x4700cf
jmp 0x4700ed
mov eax, dword [ebp - 0x2b0]
push eax
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
push edx
call fcn.004ef7c0
add esp, 8
jmp 0x4700ed
lea eax, [ebp - 0x1c4]
push eax
push fcn.004ef7c0
mov ecx, dword [ebp - 0x84]
push ecx
call sub.COMCTL32.dll_RemoveWindowSubclass
mov dword [ebp - 0x104], eax
jmp 0x470106
mov edx, dword [ebp - 0x54]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x36c]
movzx edx, word [ecx]
or eax, edx
mov ecx, dword [ebp - 0x54]
mov word [ecx], ax
jmp 0x47016c
mov edx, dword [ebp - 0x94]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x20c]
movzx ecx, byte [ecx]
sar eax, cl
mov byte [ebp - 0x295], al
mov edx, dword [ebp - 0x194]
mov eax, dword [ebp - 0xe0]
mov edx, dword [edx]
mov ecx, dword [eax]
shl edx, cl
mov eax, dword [ebp - 0x74]
mov dword [eax], edx
mov ecx, dword [ebp - 0x74]
mov edx, dword [ebp - 0x194]
mov eax, dword [ecx]
xor eax, dword [edx]
mov dword [ebp - 0x17c], eax
lea ecx, [ebp - 0x284]
push ecx
lea edx, [ebp - 0x270]
push edx
lea eax, [ebp - 0x118]
push eax
call sub.gdiplus.dll_GdiplusStartup
mov dword [ebp - 0x2b4], eax
movzx ecx, byte [ebp - 0x295]
mov edx, dword [ebp - 0x94]
movzx eax, byte [edx]
and ecx, eax
mov byte [ebp - 0x155], cl
lea ecx, [ebp - 0x1dc]
mov dword [ebp - 0x150], ecx
mov edx, dword [ebp - 0x19c]
mov eax, dword [edx]
sub eax, dword [ebp - 0x204]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x194]
mov eax, dword [edx]
sub eax, dword [ebp - 0x17c]
mov dword [ebp - 0x2b4], eax
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ecx]
mov dword [ebp - 0x184], edx
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x2f8]
mov dword [ebp - 0x184], ecx
movsx edx, word [ebp - 0x294]
mov dword [ebp - 0x3c4], edx
cmp dword [ebp - 0x3c4], 0xa6
je 0x470204
cmp dword [ebp - 0x3c4], 0x44bf
je 0x4702a2
jmp 0x4702e8
mov eax, dword [ebp - 0x20c]
mov cl, byte [eax]
mov byte [ebp - 0x3c8], cl
cmp byte [ebp - 0x3c8], 0
je 0x470226
cmp byte [ebp - 0x3c8], 0x2d
je 0x470286
jmp 0x4702a0
lea edx, [ebp - 0x156]
mov dword [ebp - 0x1d4], edx
lea eax, [ebp - 0x1dc]
mov dword [ebp - 0x27c], eax
mov ecx, dword [ebp - 0xe0]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x154]
add edx, dword [eax]
mov ecx, dword [ebp - 0x194]
mov dword [ecx], edx
mov dword [ebp - 0x10c], 0x39ea
lea edx, [ebp - 0x2b0]
mov dword [ebp - 0x8c], edx
lea eax, [ebp - 0x1dd]
mov dword [ebp - 0x1f4], eax
lea ecx, [ebp - 0x294]
mov dword [ebp - 0x18c], ecx
jmp 0x4702a0
mov edx, dword [ebp - 0x94]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x156]
add eax, ecx
mov edx, dword [ebp - 0x94]
mov byte [edx], al
jmp 0x4702e8
lea eax, [ebp - 0x2b8]
push eax
lea ecx, [ebp - 0x10]
push ecx
call dword [sym.imp.ole32.dll_OleDoAutoConvert]
mov dword [ebp - 0x174], eax
movzx edx, word [ebp - 0x1fc]
movzx eax, word [ebp - 0x2fc]
and edx, eax
mov word [ebp - 0x218], dx
mov ecx, dword [ebp - 0x154]
mov edx, dword [ebp - 0xe0]
mov eax, dword [ecx]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x194]
mov dword [ecx], eax
cmp dword [ebp - 0x10c], 0x2eaa
jb 0x470656
mov edx, dword [ebp - 0x7c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x8c]
add eax, dword [ecx]
mov edx, dword [ebp - 0x7c]
mov dword [edx], eax
mov eax, dword [ebp - 0x19c]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x14c]
mov dword [ebp - 0x2b0], ecx
mov edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x154]
mov edx, dword [edx]
mov ecx, dword [eax]
shr edx, cl
mov dword [ebp - 0x144], edx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x19c]
mov edx, dword [eax]
or edx, dword [ecx]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x27c]
movzx ecx, word [eax]
shl edx, cl
mov ecx, dword [ebp - 0x90]
mov word [ecx], dx
movzx edx, byte [ebp - 0x156]
movzx eax, byte [ebp - 0x295]
xor edx, eax
mov byte [ebp - 0x155], dl
mov ecx, dword [ebp - 0x2f8]
and ecx, dword [ebp - 0x184]
mov dword [ebp - 0x14c], ecx
mov edx, dword [ebp - 0xe0]
mov eax, dword [edx]
sub eax, dword [ebp - 0x2b4]
mov ecx, dword [ebp - 0x194]
mov dword [ecx], eax
mov edx, dword [ebp - 0x10c]
sub edx, 0x28
mov dword [ebp - 0x10c], edx
mov eax, dword [ebp - 0x2b0]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x204], eax
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x19c]
mov eax, dword [ecx]
sub eax, dword [edx]
mov dword [ebp - 0x2b0], eax
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x1fc]
add edx, eax
mov ecx, dword [ebp - 0x36c]
mov word [ecx], dx
movzx edx, byte [ebp - 0x295]
mov eax, dword [ebp - 0x20c]
movzx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x94]
mov byte [eax], dl
mov ecx, dword [ebp - 0x29c]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x1dd]
add edx, eax
mov byte [ebp - 0x21], dl
mov ecx, dword [ebp - 0x18c]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x294]
and edx, eax
mov ecx, dword [ebp - 0x18c]
mov word [ecx], dx
mov edx, dword [ebp - 0x17c]
add edx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x154]
mov dword [eax], edx
mov edx, dword [ebp - 0x2b0]
mov ecx, dword [ebp - 0x14c]
shl edx, cl
mov dword [ebp - 0x184], edx
movzx eax, word [ebp - 0x218]
movzx ecx, word [ebp - 0x2fc]
sar eax, cl
mov word [ebp - 0x1fc], ax
mov ecx, dword [ebp - 0x20c]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x295]
xor edx, eax
mov ecx, dword [ebp - 0x1d4]
mov byte [ecx], dl
mov edx, dword [ebp - 0x154]
mov eax, dword [edx]
or eax, dword [ebp - 0x144]
mov ecx, dword [ebp - 0xf4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x8c]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov dword [ebp - 0x184], ecx
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x184]
and eax, dword [edx]
mov dword [ebp - 0x2b0], eax
mov ecx, dword [ebp - 0x17c]
sub ecx, dword [ebp - 0x144]
mov edx, dword [ebp - 0x14]
mov dword [edx], ecx
movzx eax, byte [ebp - 0x295]
mov ecx, dword [ebp - 0x20c]
movzx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x156], al
mov eax, dword [ebp - 0x27c]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x54]
movzx eax, word [edx]
add ecx, eax
mov edx, dword [ebp - 0x150]
mov word [edx], cx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x2f8]
mov edx, dword [ebp - 0x8c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x204]
add ecx, dword [eax]
mov dword [ebp - 0x184], ecx
mov edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0xf4]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov dword [ebp - 0x17c], ecx
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x204]
add eax, dword [edx]
mov ecx, dword [ebp - 0x8c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x204]
and edx, dword [ebp - 0x14c]
mov eax, dword [ebp - 0x8c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x18c]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x294]
xor edx, eax
mov ecx, dword [ebp - 0x18c]
mov word [ecx], dx
mov edx, dword [ebp - 0x1f4]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x29c]
movsx ecx, byte [ecx]
sar eax, cl
mov byte [ebp - 0x21], al
mov edx, dword [ebp - 0x150]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
or eax, edx
mov ecx, dword [ebp - 0x36c]
mov word [ecx], ax
mov edx, dword [ebp - 0x1d4]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x20c]
movzx ecx, byte [ecx]
shl eax, cl
mov edx, dword [ebp - 0x94]
mov byte [edx], al
mov eax, dword [ebp - 0x194]
mov ecx, dword [ebp - 0xf4]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x154]
mov dword [eax], edx
mov ecx, dword [ebp - 0x14c]
sub ecx, dword [ebp - 0x2b0]
mov edx, dword [ebp - 0x19c]
mov dword [edx], ecx
movzx eax, byte [ebp - 0x295]
movzx ecx, byte [ebp - 0x155]
and eax, ecx
mov byte [ebp - 0x156], al
mov edx, dword [ebp - 0x27c]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x1fc]
add eax, ecx
mov word [ebp - 0x1dc], ax
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0x14]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x194]
mov dword [edx], ecx
jmp 0x4702e8
movzx eax, word [ebp - 0x1fc]
mov ecx, dword [ebp - 0x54]
movzx edx, word [ecx]
add eax, edx
movzx ecx, word [ebp - 0x1dc]
mov edx, dword [ebp - 0x150]
movzx edx, word [edx]
sub ecx, edx
cmp eax, ecx
jne 0x471e0f
cmp dword [ebp - 0x208], 0x11cd3
jae 0x4708e8
mov eax, dword [ebp - 0x2f8]
add eax, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x14c]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x180]
mov dword [ecx], eax
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0x144]
add eax, dword [edx]
mov dword [ebp - 0x17c], eax
movzx ecx, byte [ebp - 0x155]
mov edx, dword [ebp - 0x1d4]
movzx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x94]
mov byte [edx], cl
mov eax, dword [ebp - 0x90]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x1fc]
xor ecx, edx
mov word [ebp - 0x2fc], cx
mov eax, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x204]
mov ecx, dword [eax]
shl edx, cl
mov dword [ebp - 0x184], edx
mov eax, dword [ebp - 0x14c]
or eax, dword [ebp - 0x2f8]
mov dword [ebp - 0x184], eax
movsx edx, byte [ebp - 0x21]
mov eax, dword [ebp - 0x2b8]
movsx ecx, byte [eax]
sar edx, cl
mov ecx, dword [ebp - 0x1f4]
mov byte [ecx], dl
mov edx, dword [ebp - 0x18c]
movsx eax, word [edx]
movsx ecx, word [ebp - 0x294]
and eax, ecx
mov edx, dword [ebp - 0x18c]
mov word [edx], ax
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x2fc]
sub ecx, edx
mov eax, dword [ebp - 0x27c]
mov word [eax], cx
mov ecx, dword [ebp - 0x20c]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x156], dl
mov edx, dword [ebp - 0x144]
and edx, dword [ebp - 0x2b4]
mov dword [ebp - 0x17c], edx
mov eax, dword [ebp - 0x208]
add eax, 0x80
mov dword [ebp - 0x208], eax
mov ecx, dword [ebp - 0x17c]
add ecx, dword [ebp - 0x2b4]
mov edx, dword [ebp - 0x194]
mov dword [edx], ecx
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x180]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x2b0]
add ecx, dword [ebp - 0x204]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x7c]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x180]
mov dword [eax], edx
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x20c]
movzx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x94]
mov byte [eax], dl
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x2fc]
or edx, eax
mov word [ebp - 0x1fc], dx
mov ecx, dword [ebp - 0xe0]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x17c]
shr edx, cl
mov eax, dword [ebp - 0x194]
mov dword [eax], edx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14c]
xor edx, dword [ecx]
mov dword [ebp - 0x2f8], edx
mov eax, dword [ebp - 0x180]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x14c]
shl edx, cl
mov eax, dword [ebp - 0x180]
mov dword [eax], edx
mov ecx, dword [ebp - 0x194]
mov edx, dword [ebp - 0x17c]
and edx, dword [ecx]
mov dword [ebp - 0x144], edx
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x295]
sub ecx, edx
mov eax, dword [ebp - 0x20c]
mov byte [eax], cl
movzx ecx, word [ebp - 0x1dc]
mov edx, dword [ebp - 0x150]
movzx eax, word [edx]
sub ecx, eax
mov word [ebp - 0x2fc], cx
movsx ecx, word [ebp - 0x294]
add ecx, 0x2862
mov edx, dword [ebp - 0x18c]
mov word [edx], cx
movsx eax, byte [ebp - 0x21]
mov ecx, dword [ebp - 0x2b8]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x1dd], al
jmp 0x47067f
mov eax, dword [ebp - 0x18c]
movsx ecx, word [eax]
mov dword [ebp - 0x3cc], ecx
cmp dword [ebp - 0x3cc], 0x332e
je 0x470908
jmp 0x4709ea
movzx edx, byte [ebp - 0x295]
mov eax, dword [ebp - 0x1d4]
movzx ecx, byte [eax]
and edx, ecx
movzx eax, byte [ebp - 0x155]
movzx ecx, byte [ebp - 0x156]
add eax, ecx
cmp edx, eax
je 0x4709e8
mov edx, dword [ebp - 0x2b8]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x21]
sub eax, ecx
mov edx, dword [ebp - 0x29c]
movsx edx, byte [edx]
mov ecx, dword [ebp - 0x1f4]
movsx ecx, byte [ecx]
sar edx, cl
cmp eax, edx
jne 0x470981
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xe0]
mov ecx, dword [edx]
xor ecx, dword [eax]
mov edx, dword [ebp - 0x194]
mov dword [edx], ecx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x2b0]
mov dword [ebp - 0x204], ecx
jmp 0x4709e8
push 0x9b
mov edx, dword [ebp - 0xf0]
push edx
mov eax, dword [ebp - 0x5c]
push eax
call dword [sym.imp.COMCTL32.dll_DrawInsert]
mov ecx, dword [ebp - 0x36c]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x1fc]
add edx, eax
mov ecx, dword [ebp - 0x90]
mov word [ecx], dx
movzx edx, byte [ebp - 0x156]
movzx eax, byte [ebp - 0x155]
add edx, eax
mov byte [ebp - 0x295], dl
push 0xb4
mov ecx, dword [ebp - 0x188]
push ecx
mov edx, dword [ebp - 0x188]
push edx
call dword [sym.imp.COMDLG32.dll_GetFileTitleW]
mov word [ebp - 0x1f8], ax
jmp 0x470a62
movzx eax, byte [ebp - 0x295]
movzx ecx, byte [ebp - 0x155]
add eax, ecx
mov edx, dword [ebp - 0x94]
movzx ecx, byte [edx]
movzx edx, byte [ebp - 0x156]
sub ecx, edx
cmp eax, ecx
je 0x470a33
mov eax, dword [ebp - 0x14c]
sub eax, dword [ebp - 0x2f8]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x17c]
and edx, dword [ebp - 0x144]
mov dword [ebp - 0x2b4], edx
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x14c]
mov edx, dword [ebp - 0x180]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1d4]
movzx ecx, byte [eax]
push ecx
mov edx, dword [ebp - 0x2b8]
movzx eax, byte [edx]
push eax
call fcn.004d1cd0
mov ecx, dword [ebp - 0x180]
mov edx, dword [ebp - 0x184]
add edx, dword [ecx]
mov dword [ebp - 0x14c], edx
movzx eax, byte [ebp - 0x155]
movzx ecx, byte [ebp - 0x156]
sub eax, ecx
mov edx, dword [ebp - 0x94]
mov byte [edx], al
mov eax, dword [ebp - 0x2b0]
mov dword [ebp - 0x3d0], eax
cmp dword [ebp - 0x3d0], 0x1d1e3658
je 0x470aab
jmp 0x470b3c
lea ecx, [ebp - 0x154]
push ecx
call dword [sym.imp.ole32.dll_CoGetContextToken]
mov dword [ebp - 0x170], eax
mov edx, dword [ebp - 0x204]
mov dword [ebp - 0x3d4], edx
cmp dword [ebp - 0x3d4], 0x17e059aa
je 0x470ad8
jmp 0x470b26
movzx eax, word [ebp - 0x1fc]
movzx ecx, word [ebp - 0x1dc]
sar eax, cl
mov ecx, dword [ebp - 0x27c]
mov word [ecx], ax
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0xe0]
mov ecx, dword [edx]
xor ecx, dword [eax]
mov dword [ebp - 0x17c], ecx
call fcn.0046d040
mov edx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x19c]
mov ecx, dword [edx]
or ecx, dword [eax]
mov edx, dword [ebp - 0x180]
mov dword [edx], ecx
jmp 0x470b3a
mov eax, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x204]
shl eax, cl
mov dword [ebp - 0x184], eax
jmp 0x470b82
mov ecx, dword [ebp - 0x19c]
mov edx, dword [ecx]
mov dword [ebp - 0x200], edx
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x7c]
mov edx, dword [eax]
and edx, dword [ecx]
mov dword [ebp - 0x14c], edx
mov eax, dword [ebp - 0x29c]
mov cl, byte [eax]
mov byte [ebp - 0xd1], cl
movsx edx, word [ebp - 0x294]
movsx eax, word [ebp - 0x1f8]
add edx, eax
mov word [ebp - 0x2a0], dx
movzx ecx, byte [ebp - 0x156]
movzx edx, byte [ebp - 0x295]
add ecx, edx
mov byte [ebp - 0x155], cl
mov eax, dword [ebp - 0x90]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x150]
movzx eax, word [edx]
sub ecx, eax
mov word [ebp - 0x1dc], cx
mov ecx, dword [ebp - 0x194]
mov edx, dword [ecx]
mov eax, dword [ebp - 0xe0]
add edx, dword [eax]
mov ecx, dword [ebp - 0xf4]
mov dword [ecx], edx
mov edx, dword [ebp - 0x194]
mov eax, dword [ebp - 0x74]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x194]
mov dword [edx], ecx
mov eax, dword [ebp - 0x27c]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x2fc]
add ecx, edx
mov word [ebp - 0x1fc], cx
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x295]
and ecx, edx
mov eax, dword [ebp - 0x94]
mov byte [eax], cl
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ecx]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov edx, dword [ebp - 0xe0]
mov eax, dword [ebp - 0xf4]
mov ecx, dword [edx]
xor ecx, dword [eax]
mov edx, dword [ebp - 0x74]
mov dword [edx], ecx
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x7c]
mov edx, dword [eax]
mov ecx, dword [ecx]
shl edx, cl
mov eax, dword [ebp - 0x180]
mov dword [eax], edx
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x184]
or edx, dword [ecx]
mov eax, dword [ebp - 0x19c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
movzx ecx, word [ebp - 0x218]
sar edx, cl
mov word [ebp - 0x1fc], dx
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x295]
add ecx, edx
mov byte [ebp - 0x155], cl
mov eax, dword [ebp - 0x144]
and eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x19c]
add eax, dword [ecx]
mov edx, dword [ebp - 0x7c]
mov dword [edx], eax
mov eax, dword [ebp - 0x2b8]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x1dd]
add ecx, edx
mov byte [ebp - 0xd1], cl
mov ax, word [ebp - 0x294]
mov word [ebp - 0x1f8], ax
mov ecx, dword [ebp - 0x20c]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x1d4]
movzx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x20c]
mov byte [eax], dl
movzx ecx, word [ebp - 0x218]
movzx edx, word [ebp - 0x2fc]
sub ecx, edx
mov eax, dword [ebp - 0x90]
mov word [eax], cx
mov ecx, dword [ebp - 0x214]
sub ecx, 0x9b
mov dword [ebp - 0x214], ecx
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0xf4]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x14]
mov dword [edx], ecx
mov eax, dword [ebp - 0x204]
add eax, dword [ebp - 0x2f8]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
cmp dword [ebp - 0x214], 0xc44e
jae 0x470b82
lea edx, [ebp - 0x14c]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x14c]
sub eax, dword [ebp - 0x184]
mov ecx, dword [ebp - 0x200]
and ecx, dword [ebp - 0x2b0]
cmp eax, ecx
je 0x470dcb
lea edx, [ebp - 0x2f4]
push edx
push str.underwriters_Tuaregs
call dword [sym.imp.ole32.dll_CLSIDFromProgID]
mov dword [ebp - 0x174], eax
movzx eax, word [ebp - 0x1dc]
push eax
mov ecx, dword [ebp - 0x2b8]
movzx edx, byte [ecx]
push edx
movzx eax, word [ebp - 0x294]
push eax
mov dl, byte [ebp - 0x155]
mov cl, byte [ebp - 0x295]
call fcn.00478870
jmp 0x470e8b
movsx edx, word [ebp - 0x2a0]
mov eax, dword [ebp - 0x18c]
movsx ecx, word [eax]
shl edx, cl
movsx eax, word [ebp - 0x1f8]
movsx ecx, word [ebp - 0x294]
sar eax, cl
cmp edx, eax
jle 0x470e8b
mov ecx, dword [ebp - 0x144]
xor ecx, dword [ebp - 0x17c]
mov edx, dword [ebp - 0x194]
mov dword [edx], ecx
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
mov dword [ebp - 0x3d8], ecx
cmp dword [ebp - 0x3d8], 0
je 0x470e2f
cmp dword [ebp - 0x3d8], 0xf1e
je 0x470e77
jmp 0x470e8b
mov edx, dword [ebp - 0x19c]
mov eax, dword [edx]
or eax, dword [ebp - 0x204]
mov dword [ebp - 0x2b0], eax
mov ecx, dword [ebp - 0x1d4]
mov dl, byte [ecx]
mov byte [ebp - 0x28d], dl
movzx eax, word [ebp - 0x1dc]
mov ecx, dword [ebp - 0x36c]
movzx edx, word [ecx]
add eax, edx
mov ecx, dword [ebp - 0x54]
mov word [ecx], ax
lea edx, [ebp - 0x184]
mov dword [ebp - 0x300], edx
jmp 0x470e8b
mov eax, dword [ebp - 0x2b4]
sub eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x154]
mov dword [ecx], eax
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x7c]
mov ecx, dword [edx]
and ecx, dword [eax]
mov dword [ebp - 0x200], ecx
cmp dword [ebp - 0x80], 0xd497
jbe 0x47118a
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x180]
add eax, dword [ecx]
mov dword [ebp - 0x2f8], eax
mov edx, dword [ebp - 0x20c]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x295], al
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x218]
add ecx, edx
mov word [ebp - 0x2fc], cx
mov eax, dword [ebp - 0x29c]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x1dd]
add ecx, edx
mov eax, dword [ebp - 0x2b8]
mov byte [eax], cl
movsx ecx, word [ebp - 0x294]
mov edx, dword [ebp - 0x18c]
movsx eax, word [edx]
sub ecx, eax
mov word [ebp - 0x2a0], cx
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x17c]
mov dword [ebp - 0x2b4], edx
mov eax, dword [ebp - 0x2f8]
sub eax, dword [ebp - 0x184]
mov ecx, dword [ebp - 0x19c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x54]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x150]
movzx edx, word [ecx]
add eax, edx
mov word [ebp - 0x1dc], ax
mov eax, dword [ebp - 0x20c]
movzx edx, byte [eax]
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 0x155], dl
mov ecx, dword [ebp - 0x74]
mov edx, dword [ebp - 0x194]
mov eax, dword [ecx]
or eax, dword [edx]
mov ecx, dword [ebp - 0xe0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x184]
xor edx, dword [ebp - 0x14c]
mov dword [ebp - 0x2f8], edx
mov eax, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x2b0]
mov ecx, dword [eax]
sar edx, cl
mov dword [ebp - 0x200], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x2b4]
and ecx, dword [eax]
mov edx, dword [ebp - 0xe0]
mov dword [edx], ecx
movzx eax, word [ebp - 0x1fc]
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
sub eax, edx
mov word [ebp - 0x218], ax
mov eax, dword [ebp - 0x1d4]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x295]
add ecx, edx
mov byte [ebp - 0x28d], cl
mov eax, dword [ebp - 0x300]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x204]
mov dword [ebp - 0x2f8], ecx
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x7c]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x18]
mov dword [edx], ecx
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x144]
mov ecx, dword [ebp - 0x154]
mov dword [ecx], eax
mov edx, dword [ebp - 0x180]
mov eax, dword [edx]
add eax, dword [ebp - 0x184]
mov dword [ebp - 0x14c], eax
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x2f8]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x18]
mov dword [eax], edx
mov ecx, dword [ebp - 0x18c]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x294]
sub edx, eax
mov word [ebp - 0x1f8], dx
mov ecx, dword [ebp - 0x2b8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x29c]
movsx ecx, byte [eax]
or edx, ecx
mov eax, dword [ebp - 0x1f4]
mov byte [eax], dl
mov ecx, dword [ebp - 0x20c]
movzx edx, byte [ecx]
movzx ecx, byte [ebp - 0x155]
shl edx, cl
mov eax, dword [ebp - 0x1d4]
mov byte [eax], dl
movzx ecx, word [ebp - 0x1dc]
movzx edx, word [ebp - 0x2fc]
xor ecx, edx
mov eax, dword [ebp - 0x90]
mov word [eax], cx
mov edx, dword [ebp - 0x144]
mov ecx, dword [ebp - 0x2b4]
shr edx, cl
mov eax, dword [ebp - 0xe0]
mov dword [eax], edx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2f8]
and edx, dword [ecx]
mov eax, dword [ebp - 0x19c]
mov dword [eax], edx
movzx ecx, word [ebp - 0x218]
movzx edx, word [ebp - 0x1dc]
sub ecx, edx
mov eax, dword [ebp - 0x54]
mov word [eax], cx
mov ecx, dword [ebp - 0x80]
sub ecx, 0x4a
mov dword [ebp - 0x80], ecx
mov edx, dword [ebp - 0x94]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x155]
sub eax, ecx
mov edx, dword [ebp - 0x1d4]
mov byte [edx], al
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x144]
mov dword [ebp - 0x17c], eax
mov ecx, dword [ebp - 0x2b0]
sub ecx, dword [ebp - 0x200]
mov dword [ebp - 0x14c], ecx
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x18]
mov ecx, dword [edx]
and ecx, dword [eax]
mov edx, dword [ebp - 0x19c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x2b4]
mov dword [ebp - 0x17c], ecx
movzx edx, byte [ebp - 0x28d]
mov eax, dword [ebp - 0x20c]
movzx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x1d4]
mov byte [eax], dl
jmp 0x470e9e
mov cl, byte [ebp - 0x295]
mov byte [ebp - 0x3dc], cl
cmp byte [ebp - 0x3dc], 0
je 0x47123b
cmp byte [ebp - 0x3dc], 0xad
je 0x4711b1
jmp 0x4712dc
mov edx, dword [ebp - 0xf4]
mov eax, dword [edx]
mov dword [ebp - 0x3e0], eax
cmp dword [ebp - 0x3e0], 0x5e397c10
je 0x4711cd
jmp 0x47121c
lea ecx, [ebp - 0x20c]
push ecx
lea edx, [ebp - 0x1bc]
push edx
lea eax, [ebp - 0x368]
push eax
call dword [sym.imp.ole32.dll_CoUnmarshalInterface]
mov dword [ebp - 0x1a0], eax
movzx ecx, word [ebp - 0x1dc]
movzx edx, word [ebp - 0x2fc]
add ecx, edx
mov word [ebp - 0x1fc], cx
mov eax, dword [ebp - 0x300]
mov ecx, dword [ebp - 0x8c]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x18]
mov dword [eax], edx
jmp 0x471236
lea ecx, [ebp - 0xe4]
push ecx
lea edx, [ebp - 0x168]
push edx
call dword [sym.imp.ole32.dll_CoGetPSClsid]
mov dword [ebp - 0x174], eax
jmp 0x4712dc
movzx eax, word [ebp - 0x1dc]
mov dword [ebp - 0x3e4], eax
cmp dword [ebp - 0x3e4], 0x3d
je 0x47125f
cmp dword [ebp - 0x3e4], 0x21a
je 0x4712c5
jmp 0x4712dc
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x2f8]
shl edx, cl
mov eax, dword [ebp - 0x8c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x18c]
movsx edx, word [ecx]
movsx ecx, word [ebp - 0x294]
sar edx, cl
mov word [ebp - 0x2a0], dx
lea eax, [ebp - 0x14c]
push eax
mov ecx, dword [ebp - 0x274]
push ecx
call dword [sym.imp.SHELL32.dll_DragQueryPoint]
mov dword [ebp - 0x178], eax
mov edx, dword [ebp - 0x29c]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x2b8]
movsx edx, byte [ecx]
xor eax, edx
mov ecx, dword [ebp - 0x1f4]
mov byte [ecx], al
jmp 0x4712dc
movzx edx, word [ebp - 0x1dc]
movzx eax, word [ebp - 0x1fc]
or edx, eax
mov word [ebp - 0x218], dx
movzx ecx, word [ebp - 0x218]
mov dword [ebp - 0x3e8], ecx
cmp dword [ebp - 0x3e8], 0x6b9
je 0x4712fa
jmp 0x47139c
call fcn.004d7e60
lea edx, [ebp - 0x1f0]
push edx
lea eax, [ebp - 0x1bc]
push eax
call dword [sym.imp.ole32.dll_CoGetObjectContext]
mov dword [ebp - 0x148], eax
movsx ecx, word [ebp - 0x294]
mov dword [ebp - 0x3ec], ecx
cmp dword [ebp - 0x3ec], 0x39e3
je 0x47135c
cmp dword [ebp - 0x3ec], 0x670c
je 0x471340
jmp 0x47139a
mov edx, dword [ebp - 0x1d4]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x28d]
and eax, ecx
mov edx, dword [ebp - 0x20c]
mov byte [edx], al
jmp 0x47139a
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
mov edx, dword [ebp - 0xf4]
add ecx, dword [edx]
mov dword [ebp - 0x2b4], ecx
mov eax, dword [ebp - 0x2b4]
sub eax, dword [ebp - 0x144]
mov ecx, dword [ebp - 0xf4]
mov dword [ecx], eax
movzx edx, byte [ebp - 0x295]
push edx
mov eax, dword [ebp - 0x1f4]
movzx ecx, byte [eax]
push ecx
call fcn.004d1cd0
jmp 0x47140e
mov edx, dword [ebp - 0x18]
mov eax, dword [edx]
sub eax, dword [ebp - 0x200]
mov dword [ebp - 0x184], eax
mov ecx, dword [ebp - 0x184]
mov dword [ebp - 0x114], ecx
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x2b0]
sub eax, dword [edx]
mov dword [ebp - 0x200], eax
mov dword [ebp - 0xe8], 0xaaf5
mov cx, word [ebp - 0x218]
mov word [ebp - 0x190], cx
movzx edx, byte [ebp - 0x155]
movzx eax, byte [ebp - 0x28d]
add edx, eax
mov byte [ebp - 0x156], dl
mov ecx, dword [ebp - 0x194]
mov edx, dword [ebp - 0x17c]
and edx, dword [ecx]
mov eax, dword [ebp - 0x154]
mov dword [eax], edx
mov ecx, dword [ebp - 0x54]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x2fc]
sub edx, eax
movzx ecx, word [ebp - 0x1dc]
mov eax, dword [ebp - 0x36c]
movzx eax, word [eax]
add ecx, eax
cmp edx, ecx
jge 0x47144f
lea ecx, [ebp - 0x144]
push ecx
lea edx, [ebp - 0x1bc]
push edx
push 0x4e
call dword [sym.imp.ole32.dll_CoGetCancelObject]
mov dword [ebp - 0x1a0], eax
mov eax, dword [ebp - 0x19c]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x2f8]
mov edx, dword [ebp - 0x19c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x14c]
mov ecx, dword [eax]
shl edx, cl
mov eax, dword [ebp - 0x18]
mov dword [eax], edx
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x17c]
mov ecx, dword [ecx]
shr edx, cl
mov dword [ebp - 0x2b4], edx
movzx eax, byte [ebp - 0x155]
movzx ecx, byte [ebp - 0x156]
or eax, ecx
mov edx, dword [ebp - 0x1d4]
mov byte [edx], al
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x90]
movzx eax, word [edx]
xor ecx, eax
mov edx, dword [ebp - 0x54]
mov word [edx], cx
movsx eax, byte [ebp - 0x21]
mov ecx, dword [ebp - 0x2b8]
movsx edx, byte [ecx]
and eax, edx
mov ecx, dword [ebp - 0x29c]
mov byte [ecx], al
mov edx, dword [ebp - 0x18c]
movsx eax, word [edx]
movsx ecx, word [ebp - 0x294]
add eax, ecx
mov edx, dword [ebp - 0x18c]
mov word [edx], ax
mov eax, dword [ebp - 0x194]
mov ecx, dword [ebp - 0x144]
sub ecx, dword [eax]
mov dword [ebp - 0x2b4], ecx
mov edx, dword [ebp - 0x300]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x19c]
add eax, dword [ecx]
mov dword [ebp - 0x204], eax
mov edx, dword [ebp - 0x20c]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x295], al
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x27c]
movzx eax, word [edx]
sub ecx, eax
mov word [ebp - 0x2fc], cx
mov ecx, dword [ebp - 0x184]
add ecx, dword [ebp - 0x114]
mov edx, dword [ebp - 0x300]
mov dword [edx], ecx
mov eax, dword [ebp - 0x194]
mov ecx, dword [ebp - 0xf4]
mov edx, dword [eax]
and edx, dword [ecx]
mov eax, dword [ebp - 0x14]
mov dword [eax], edx
mov ecx, dword [ebp - 0x180]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ecx]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x19c]
mov ecx, dword [edx]
xor ecx, dword [eax]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
movzx eax, byte [ebp - 0x156]
movzx ecx, byte [ebp - 0x28d]
shl eax, cl
mov ecx, dword [ebp - 0x94]
mov byte [ecx], al
movzx edx, word [ebp - 0x1fc]
mov eax, dword [ebp - 0x150]
movzx ecx, word [eax]
sar edx, cl
mov word [ebp - 0x1dc], dx
mov ecx, dword [ebp - 0xec]
add ecx, 0x53
mov dword [ebp - 0xec], ecx
mov edx, dword [ebp - 0x74]
mov eax, dword [edx]
or eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x74]
mov dword [ecx], eax
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x2f8]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x19c]
mov dword [ecx], eax
cmp dword [ebp - 0xec], 0xb67d
jbe 0x47144f
mov edx, dword [ebp - 0x20c]
mov al, byte [edx]
mov byte [ebp - 0x3f0], al
cmp byte [ebp - 0x3f0], 0
je 0x471635
cmp byte [ebp - 0x3f0], 0xe6
je 0x471668
jmp 0x47175f
lea ecx, [ebp - 0x200]
mov dword [ebp - 0x1d8], ecx
mov edx, dword [ebp - 0x1d8]
mov eax, dword [edx]
and eax, dword [ebp - 0x200]
mov ecx, dword [ebp - 0x1d8]
mov dword [ecx], eax
mov edx, dword [ebp - 0x14c]
mov dword [ebp - 0xd8], edx
jmp 0x47175f
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x2b0]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x19c]
mov eax, dword [edx]
sub eax, dword [ebp - 0x14c]
cmp ecx, eax
jl 0x47170f
mov ecx, dword [ebp - 0x2b8]
mov dl, byte [ecx]
mov byte [ebp - 0x3f4], dl
cmp byte [ebp - 0x3f4], 9
je 0x4716ab
cmp byte [ebp - 0x3f4], 0x43
je 0x4716f5
jmp 0x47170d
movsx eax, word [ebp - 0x1f8]
movsx ecx, word [ebp - 0x294]
add eax, ecx
mov edx, dword [ebp - 0x18c]
mov word [edx], ax
movsx eax, byte [ebp - 0xd1]
mov ecx, dword [ebp - 0x29c]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x21], al
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x27c]
movzx eax, word [edx]
sub ecx, eax
mov edx, dword [ebp - 0x150]
mov word [edx], cx
jmp 0x47170d
mov eax, dword [ebp - 0x1d4]
movzx ecx, byte [eax]
movzx edx, byte [ebp - 0x155]
and ecx, edx
mov byte [ebp - 0x28d], cl
jmp 0x47175f
mov eax, dword [ebp - 0x29c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x2b8]
movsx eax, byte [edx]
add ecx, eax
movsx edx, byte [ebp - 0xd1]
mov eax, dword [ebp - 0x1f4]
movsx eax, byte [eax]
add edx, eax
cmp ecx, edx
jne 0x47175f
lea ecx, [ebp - 0x260]
push ecx
call dword [sym.imp.COMDLG32.dll_PrintDlgW]
mov dword [ebp - 0x104], eax
mov edx, dword [ebp - 0x154]
mov edx, dword [edx]
mov ecx, dword [ebp - 0x218]
call fcn.004721c0
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x154]
mov edx, dword [eax]
xor edx, dword [ecx]
mov eax, dword [ebp - 0x194]
mov dword [eax], edx
mov ecx, dword [ebp - 0x18c]
movsx edx, word [ecx]
mov dword [ebp - 0x3f8], edx
cmp dword [ebp - 0x3f8], 0
je 0x4717a4
cmp dword [ebp - 0x3f8], 0x4f8f
je 0x471862
jmp 0x471906
mov al, byte [ebp - 0x21]
mov byte [ebp - 0x3fc], al
cmp byte [ebp - 0x3fc], 0x49
je 0x4717b8
jmp 0x471828
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x194]
mov eax, dword [ecx]
mov ecx, dword [edx]
shl eax, cl
mov ecx, dword [ebp - 0xe0]
mov dword [ecx], eax
lea edx, [ebp - 0x28c]
push edx
lea eax, [ebp - 0x168]
push eax
lea ecx, [ebp - 0x260]
push ecx
call dword [sym.imp.ole32.dll_CoGetInterfaceAndReleaseStream]
mov dword [ebp - 0x2a8], eax
mov edx, dword [ebp - 0x1d4]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x20c]
movzx edx, byte [ecx]
or eax, edx
mov byte [ebp - 0x295], al
movzx eax, word [ebp - 0x2fc]
movzx ecx, word [ebp - 0x1fc]
sar eax, cl
mov ecx, dword [ebp - 0x150]
mov word [ecx], ax
jmp 0x47185d
lea edx, [ebp - 0x2f8]
mov dword [ebp - 0x108], edx
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0xe0]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x74]
mov dword [eax], edx
mov ecx, dword [ebp - 0x200]
sub ecx, dword [ebp - 0x2b0]
mov edx, dword [ebp - 0x180]
mov dword [edx], ecx
jmp 0x471906
mov eax, dword [ebp - 0x18c]
movsx ecx, word [eax]
mov dword [ebp - 0x400], ecx
cmp dword [ebp - 0x400], 0x54ad
je 0x4718ee
cmp dword [ebp - 0x400], 0x6684
je 0x47188b
jmp 0x471906
push 0xba
lea edx, [ebp - 0x54]
push edx
push 0xdc
lea eax, [ebp - 0x104]
push eax
lea ecx, [ebp - 0x168]
push ecx
lea edx, [ebp - 0x278]
push edx
call dword [sym.imp.ole32.dll_CoMarshalInterface]
mov dword [ebp - 0x174], eax
movzx eax, byte [ebp - 0x295]
push eax
mov ecx, dword [ebp - 0x194]
mov edx, dword [ecx]
push edx
movzx eax, word [ebp - 0x294]
push eax
mov ecx, dword [ebp - 0x1f4]
movzx edx, byte [ecx]
push edx
mov eax, dword [ebp - 0x29c]
movzx ecx, byte [eax]
push ecx
call fcn.00429f50
jmp 0x471906
mov edx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x108]
mov ecx, dword [edx]
and ecx, dword [eax]
mov edx, dword [ebp - 0x1d8]
mov dword [edx], ecx
mov eax, dword [ebp - 0x20c]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x1d4]
movzx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x94]
mov byte [edx], cl
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x2fc]
add ecx, edx
mov eax, dword [ebp - 0x90]
mov word [eax], cx
mov ecx, dword [ebp - 0x2b4]
add ecx, dword [ebp - 0x144]
mov edx, dword [ebp - 0x194]
mov dword [edx], ecx
mov eax, dword [ebp - 0x300]
mov ecx, dword [ebp - 0x8c]
mov edx, dword [eax]
sub edx, dword [ecx]
mov dword [ebp - 0xd8], edx
mov eax, dword [ebp - 0x1f4]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xd1]
add ecx, edx
mov eax, dword [ebp - 0x1f4]
mov byte [eax], cl
movsx ecx, word [ebp - 0x294]
movsx edx, word [ebp - 0x1f8]
add ecx, edx
mov eax, dword [ebp - 0x18c]
mov word [eax], cx
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x20c]
movzx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x1d4]
mov byte [eax], dl
mov ecx, dword [ebp - 0x27c]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x150]
movzx ecx, word [eax]
sub edx, ecx
mov word [ebp - 0x190], dx
mov edx, dword [ebp - 0x17c]
or edx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x74]
mov dword [eax], edx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2b0]
mov ecx, dword [ecx]
sar edx, cl
mov eax, dword [ebp - 0x19c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x108]
mov edx, dword [ecx]
xor edx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0x300]
mov dword [eax], edx
mov ecx, dword [ebp - 0xe0]
mov edx, dword [ebp - 0x17c]
mov ecx, dword [ecx]
shl edx, cl
mov dword [ebp - 0x2b4], edx
mov eax, dword [ebp - 0x184]
and eax, dword [ebp - 0x114]
mov dword [ebp - 0x2b0], eax
mov ecx, dword [ebp - 0xe8]
sub ecx, 0xbc
mov dword [ebp - 0xe8], ecx
mov edx, dword [ebp - 0x1d4]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0x295]
sub eax, ecx
mov edx, dword [ebp - 0x1d4]
mov byte [edx], al
movzx eax, word [ebp - 0x190]
movzx ecx, word [ebp - 0x2fc]
sub eax, ecx
mov edx, dword [ebp - 0x150]
mov word [edx], ax
mov eax, dword [ebp - 0xd8]
and eax, dword [ebp - 0x2b0]
mov dword [ebp - 0x184], eax
mov ecx, dword [ebp - 0x17c]
add ecx, dword [ebp - 0x2b4]
mov dword [ebp - 0x144], ecx
mov edx, dword [ebp - 0x18]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x8c]
add eax, dword [ecx]
mov edx, dword [ebp - 0x1c]
mov dword [edx], eax
cmp dword [ebp - 0xe8], 0x9acd
jae 0x471906
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x204]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x27c]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x218]
add ecx, edx
mov word [ebp - 0x190], cx
movzx eax, byte [ebp - 0x295]
mov ecx, dword [ebp - 0x1d4]
movzx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x156], al
mov eax, dword [ebp - 0x1f4]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x2b8]
movsx eax, byte [edx]
xor ecx, eax
mov edx, dword [ebp - 0x29c]
mov byte [edx], cl
mov eax, dword [ebp - 0x18c]
movsx edx, word [eax]
movsx ecx, word [ebp - 0x2a0]
sar edx, cl
mov word [ebp - 0x1f8], dx
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x17c]
or ecx, dword [eax]
mov dword [ebp - 0x144], ecx
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x8c]
mov edx, dword [edx]
mov ecx, dword [eax]
shl edx, cl
mov dword [ebp - 0x200], edx
mov eax, dword [ebp - 0x27c]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x190]
and ecx, edx
mov eax, dword [ebp - 0x36c]
mov word [eax], cx
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x20c]
movzx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x1d4]
mov byte [eax], dl
mov ecx, dword [ebp - 0xe0]
mov edx, dword [ebp - 0x144]
add edx, dword [ecx]
mov dword [ebp - 0x17c], edx
mov eax, dword [ebp - 0x1d8]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x1c]
add ecx, dword [edx]
mov eax, dword [ebp - 0x19c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x1d8]
mov edx, dword [ebp - 0x14c]
add edx, dword [ecx]
mov dword [ebp - 0x204], edx
mov eax, dword [ebp - 0x154]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x2b4]
mov dword [ebp - 0x17c], ecx
movzx edx, word [ebp - 0x1dc]
movzx eax, word [ebp - 0x2fc]
sub edx, eax
mov ecx, dword [ebp - 0x27c]
mov word [ecx], dx
movzx edx, byte [ebp - 0x156]
mov eax, dword [ebp - 0x94]
movzx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x20c]
mov byte [eax], dl
mov ecx, dword [ebp - 0x19c]
mov edx, dword [ebp - 0x204]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x8c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x14c]
sub edx, dword [ecx]
mov dword [ebp - 0x114], edx
mov eax, dword [ebp - 0x2b4]
xor eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x194]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1d8]
mov eax, dword [edx]
or eax, dword [ebp - 0x184]
mov ecx, dword [ebp - 0x108]
mov dword [ecx], eax
mov edx, dword [ebp - 0x300]
mov eax, dword [ebp - 0x2f8]
mov ecx, dword [edx]
sar eax, cl
mov ecx, dword [ebp - 0x180]
mov dword [ecx], eax
movsx edx, byte [ebp - 0x21]
movsx ecx, byte [ebp - 0xd1]
shl edx, cl
mov eax, dword [ebp - 0x29c]
mov byte [eax], dl
mov ecx, dword [ebp - 0x18c]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x1f8]
and edx, eax
mov word [ebp - 0x2a0], dx
movzx ecx, word [ebp - 0x2fc]
mov edx, dword [ebp - 0x54]
movzx eax, word [edx]
add ecx, eax
mov edx, dword [ebp - 0x150]
mov word [edx], cx
movzx eax, byte [ebp - 0x156]
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x20c]
mov byte [ecx], al
mov edx, dword [ebp - 0x194]
mov eax, dword [ebp - 0x17c]
add eax, dword [edx]
mov ecx, dword [ebp - 0xe0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1d8]
mov eax, dword [edx]
add eax, dword [ebp - 0x204]
mov ecx, dword [ebp - 0x180]
mov dword [ecx], eax
mov edx, dword [ebp - 0x150]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x1dc]
sub eax, ecx
mov word [ebp - 0x218], ax
mov edx, dword [ebp - 0x2bc]
add edx, 0xf5
mov dword [ebp - 0x2bc], edx
movzx eax, byte [ebp - 0x155]
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
and eax, edx
mov byte [ebp - 0x156], al
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x144]
mov edx, dword [ebp - 0xe0]
mov dword [edx], ecx
mov eax, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x204]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x19c]
mov edx, dword [eax]
sub edx, dword [ecx]
mov dword [ebp - 0x14c], edx
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x144]
mov ecx, dword [eax]
shr edx, cl
mov dword [ebp - 0x17c], edx
movzx eax, word [ebp - 0x1dc]
movzx ecx, word [ebp - 0x1fc]
xor eax, ecx
mov word [ebp - 0x218], ax
mov edx, dword [ebp - 0x1d4]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x20c]
movzx ecx, byte [ecx]
shl eax, cl
mov edx, dword [ebp - 0x94]
mov byte [edx], al
cmp dword [ebp - 0x2bc], 0x88a0
jb 0x471ac0
lea eax, [ebp - 0x200]
mov dword [ebp - 0x1a4], eax
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x200]
or edx, dword [ecx]
mov eax, dword [ebp - 0x19c]
mov dword [eax], edx
lea ecx, [ebp - 0x2e4]
push ecx
call dword [sym.imp.COMDLG32.dll_ReplaceTextW]
mov dword [ebp - 0x28], eax
mov edx, dword [ebp - 0x194]
mov edx, dword [edx]
mov ecx, dword [ebp - 0x2fc]
call fcn.004721c0
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x1f0]
push ecx
call dword [sym.imp.ole32.dll_ProgIDFromCLSID]
mov dword [ebp - 0xe4], eax
mov edx, dword [ebp - 0x154]
mov eax, dword [edx]
mov dword [ebp - 0x404], eax
cmp dword [ebp - 0x404], 0x2ff30d43
je 0x471eb7
cmp dword [ebp - 0x404], 0xf64eebf0
je 0x471e74
jmp 0x471ec8
movsx ecx, word [ebp - 0x294]
cmp ecx, 0x66cf
jle 0x471e9f
mov edx, dword [ebp - 0x20c]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x20c]
mov byte [ecx], al
mov edx, dword [ebp - 0x154]
mov edx, dword [edx]
mov eax, dword [ebp - 0x90]
mov cx, word [eax]
call fcn.004721c0
jmp 0x471ec8
mov ecx, dword [ebp - 0x74]
mov edx, dword [ecx]
add edx, dword [ebp - 0x144]
mov dword [ebp - 0x17c], edx
movsx eax, word [ebp - 0x294]
shl eax, 0xc
mov word [ebp - 0x294], ax
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ecx]
mov dword [ebp - 0x408], edx
cmp dword [ebp - 0x408], 0x1ec1f3df
je 0x471ef5
jmp 0x471f38
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x94]
push ecx
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov dword [ebp - 0xdc], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x180]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x7c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x54]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x36c]
movzx eax, word [edx]
add ecx, eax
mov word [ebp - 0x1fc], cx
jmp 0x471f51
mov ecx, dword [ebp - 0x2f8]
push ecx
mov edx, dword [ebp - 0x94]
movzx eax, byte [edx]
push eax
call fcn.004ef7c0
add esp, 8
mov ecx, dword [ebp - 0x194]
mov edx, dword [ebp - 0x2b4]
and edx, dword [ecx]
mov eax, dword [ebp - 0x154]
mov dword [eax], edx
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
push edx
movzx eax, byte [ebp - 0x1dd]
push eax
call fcn.004d1cd0
jmp 0x471fc1
mov ecx, dword [ebp - 0x14c]
add ecx, dword [ebp - 0x2b0]
mov edx, dword [ebp - 0x180]
mov dword [edx], ecx
mov eax, dword [ebp - 0x36c]
movzx ecx, word [eax]
push ecx
movzx edx, byte [ebp - 0x1dd]
push edx
movzx eax, word [ebp - 0x294]
push eax
mov ecx, dword [ebp - 0x94]
mov dl, byte [ecx]
mov cl, byte [ebp - 0x155]
call fcn.00478870
mov edx, dword [ebp - 0x204]
mov ecx, dword [ebp - 0x2f8]
shl edx, cl
mov eax, dword [ebp - 0x180]
mov dword [eax], edx
movzx ecx, word [ebp - 0x1dc]
mov dword [ebp - 0x40c], ecx
cmp dword [ebp - 0x40c], 0x35
je 0x471ff2
jmp 0x472097
lea edx, [ebp - 0xd0]
push edx
lea eax, [ebp - 0x1fc]
push eax
lea ecx, [ebp - 0x1a8]
push ecx
mov edx, dword [ebp - 0x1a8]
push edx
call dword [sym.imp.SHELL32.dll_SHGetDiskFreeSpaceExW]
mov dword [ebp - 0x104], eax
movzx eax, word [ebp - 0x1dc]
mov dword [ebp - 0x410], eax
cmp dword [ebp - 0x410], 0xfa
je 0x472035
jmp 0x472074
movzx ecx, byte [ebp - 0x156]
movzx edx, byte [ebp - 0x155]
xor ecx, edx
mov eax, dword [ebp - 0x94]
mov byte [eax], cl
mov ecx, dword [ebp - 0x194]
mov edx, dword [ecx]
and edx, dword [ebp - 0x144]
mov dword [ebp - 0x17c], edx
mov edx, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x1dc]
call fcn.004721c0
jmp 0x472097
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x1fc]
push ecx
push str.inscribing_contention_Laden_Caparisoned
lea edx, [ebp - 0x1d0]
push edx
call dword [sym.imp.ole32.dll_MkParseDisplayName]
mov dword [ebp - 0x170], eax
movzx eax, word [ebp - 0x1fc]
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx]
or eax, edx
mov word [ebp - 0x1dc], ax
mov al, byte [ebp - 0x1dd]
mov byte [ebp - 0x414], al
cmp byte [ebp - 0x414], 0xb
je 0x4720d3
cmp byte [ebp - 0x414], 0x33
je 0x472146
jmp 0x47215c
mov ecx, dword [ebp - 0x94]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0x155]
add edx, eax
mov ecx, dword [ebp - 0x94]
mov byte [ecx], dl
mov edx, dword [ebp - 0x90]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x1fc]
add eax, ecx
mov word [ebp - 0x1dc], ax
mov edx, dword [ebp - 0x2f8]
add edx, dword [ebp - 0x2b0]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x180]
mov edx, dword [ebp - 0x14c]
sub edx, dword [ecx]
mov dword [ebp - 0x204], edx
push 0
lea eax, [ebp - 0x7c]
push eax
lea ecx, [ebp - 0xf4]
push ecx
call dword [sym.imp.SHELL32.dll_ILAppendID]
mov dword [ebp - 0x1d0], eax
jmp 0x47215c
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0x17c]
add eax, dword [edx]
mov ecx, dword [ebp - 0x194]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7c]
mov eax, dword [edx]
add eax, dword [ebp - 0x2f8]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7c]
mov eax, dword [edx]
mov dword [ebp - 0x418], eax
cmp dword [ebp - 0x418], 0x267fe92a
je 0x472185
jmp 0x472187
jmp 0x47219a
movzx ecx, byte [ebp - 0x155]
add ecx, 0xda
mov byte [ebp - 0x156], cl
movzx edx, byte [ebp - 0x156]
push edx
movzx eax, word [ebp - 0x1dc]
push eax
call section..text
mov eax, dword [section..data]
mov esp, ebp
pop ebp
ret