; ...//\Oo/\\ Patching Engine by .+MaLaTTiA. - v1.1 (oct 1997) //\oO/\\... ; Patch source for the file: c:\windows\win.com patch segment assume cs:patch, ds:patch org 100h main: ; intro mov ah, 09h mov dx, offset intro int 21h ; first of all, let's find the file... mov ah, 4eh mov cx, 0h mov dx, offset file int 21h jnc ok01 error01: mov ah, 09h ; the file doesn't exist mov dx, offset er01 int 21h jmp badexit ok01: ; no error: let's check the length mov bp, 9ah mov ax, [bp+2] mov bp, offset length mov bx, [bp+2] cmp ax, bx ; hival for length jne error02 mov bp, 9ah mov ax, [bp] mov bp, offset length mov bx, [bp] cmp ax, bx ; loval for length je ok02 error02: mov ah, 09h ; the length is wrong mov dx, offset er02 int 21h jmp badexit ok02: ; length ok: let's open the file mov ax, 3d02h mov dx, offset file int 21h mov bx, ax ; now let's do the scan for the old values mov bp, offset oldval mov si, offset offs scanlp: ; move the file pointer mov dx, [si] ; cxdx = address inside file mov cx, [si+2] mov ax, 4200h int 21h ; let's read one byte mov ah, 3fh mov cx, 1 mov dx, offset buffer int 21h ; and now let's check it with the old value push si push bx mov si, offset buffer mov al, [si] ; value from buffer mov bl, [bp] ; value from oldval cmp al, bl ; old value je ok03 error03: mov ah, 09h ; the bytes are wrong mov dx, offset er03 int 21h badexit: mov ax, 4c01h int 21h ok03: pop bx pop si dec word ptr vals01 cmp word ptr vals01, 0 ; scanned all offsets? je gopatch ; yea: Jump! inc bp add si, 4 jmp scanlp ; everything ok: let's patch! :) gopatch: mov bp, offset newval mov si, offset offs patchlp: ; first put the pointer in the right pos mov ax, 4200h mov dx, [si] ; cxdx = address inside file mov cx, [si+2] int 21h ; then change the old value mov ah, 40h mov cx, 1 mov dx, bp int 21h dec word ptr vals02 cmp word ptr vals02, 0 ; patched all offsets? je goodbye ; yea: Jump! inc bp add si, 4 jmp patchlp goodbye: ; now close file and exit mov ah, 3eh int 21h mov ah, 09h mov dx, offset ok int 21h ret intro db 10,13,'...//\Oo/\\ c:\windows\win.com Patch by .+MaLa. - March 2002 //\oO/\\...',10,13,10,13,'$' file db 'c:\windows\win.com',0 er01 db 'File c:\windows\win.com is not here!',10,13,'$' er02 db 'The length is wrong: check the version!',10,13,'$' er03 db 'The bytes are wrong: check the version!',10,13,'$' ok db 'The file has been successfully patched!',10,13,'$' buffer db 1 length dd 6257h offs dd 26e7h, 26e8h, 2725h, 2726h, 274ch, 274dh, 274eh, 278ah, 278bh, 279ah, 279bh, 27b1h, 27b2h, 27b3h, 27eah, 27ebh, 27ech, 27edh, dd 27eeh, 27efh, 27f0h, 27feh, 27ffh, 2800h, 2801h, 2828h, 2829h, 284eh, 284fh, 2850h, 2851h, 2852h, 2853h, 2854h, 2855h, 2864h, 2865h, dd 288dh, 288eh, 28b3h, 28b4h, 28b5h, 28b8h, 28b9h, 28bah, 28c7h, 28c8h, 28c9h, 28cah, 28d6h, 28d7h, 28d8h, 28d9h, 28dbh, 28dch, 28ebh, dd 28ech, 28edh, 28eeh, 28efh, 28f0h, 28f2h, 28f3h, 2918h, 2919h, 2928h, 2929h, 292ah, 292bh, 292ch, 292dh, 292eh, 292fh, 2930h, 293bh, dd 293ch, 293dh, 293eh, 293fh, 2940h, 2941h, 2942h, 294fh, 2950h, 2951h, 2952h, 2953h, 2954h, 2955h, 2957h, 2958h, 2959h, 295ah, 295bh, dd 297dh, 297eh, 2983h, 2984h, 2985h, 2986h, 2987h, 2988h, 2989h, 298ah, 298ch, 298dh, 298eh, 298fh, 2990h, 2991h, 2993h, 2994h, 2995h, dd 29a2h, 29a3h, 29a4h, 29a6h, 29a7h, 29a8h, 29adh, 29aeh, 29afh, 29b0h, 29b1h, 29b2h, 29b3h, 29b4h, 29b5h, 29b8h, 29b9h, 29bah, 29bbh, dd 29bch, 29bdh, 29beh, 29bfh, 29c0h, 29e2h, 29e3h, 29e8h, 29e9h, 29eah, 29ebh, 29eeh, 29efh, 29f0h, 29f1h, 29f2h, 29f8h, 29f9h, 29fah, dd 2a07h, 2a08h, 2a0bh, 2a0ch, 2a0dh, 2a12h, 2a13h, 2a15h, 2a16h, 2a17h, 2a18h, 2a19h, 2a1ah, 2a1bh, 2a1ch, 2a1dh, 2a1eh, 2a1fh, 2a20h, dd 2a21h, 2a22h, 2a23h, 2a47h, 2a48h, 2a4dh, 2a4eh, 2a4fh, 2a50h, 2a54h, 2a55h, 2a56h, 2a5eh, 2a5fh, 2a6ch, 2a6dh, 2a71h, 2a72h, 2a76h, dd 2a77h, 2a78h, 2a7bh, 2a7ch, 2a7dh, 2a7eh, 2a7fh, 2a80h, 2a81h, 2a82h, 2a83h, 2a84h, 2a86h, 2a87h, 2aach, 2aadh, 2aaeh, 2ab1h, 2ab2h, dd 2ab3h, 2ab4h, 2ab5h, 2ab6h, 2ab7h, 2ab8h, 2ab9h, 2abah, 2abbh, 2ac3h, 2ac4h, 2ad1h, 2ad2h, 2ad6h, 2ad7h, 2adbh, 2adch, 2addh, 2adeh, dd 2adfh, 2ae0h, 2ae1h, 2ae2h, 2ae3h, 2ae4h, 2ae8h, 2ae9h, 2aebh, 2aech, 2aefh, 2af0h, 2b12h, 2b13h, 2b14h, 2b15h, 2b16h, 2b17h, 2b18h, dd 2b19h, 2b1ah, 2b1dh, 2b1eh, 2b1fh, 2b20h, 2b21h, 2b24h, 2b25h, 2b28h, 2b29h, 2b35h, 2b36h, 2b37h, 2b38h, 2b3bh, 2b3ch, 2b3dh, 2b3eh, dd 2b40h, 2b41h, 2b42h, 2b45h, 2b46h, 2b47h, 2b48h, 2b49h, 2b4ah, 2b4bh, 2b4ch, 2b4dh, 2b4eh, 2b50h, 2b51h, 2b53h, 2b54h, 2b55h, 2b78h, dd 2b79h, 2b7ah, 2b7bh, 2b7eh, 2b7fh, 2b80h, 2b82h, 2b83h, 2b85h, 2b86h, 2b87h, 2b88h, 2b89h, 2b8ah, 2b8ch, 2b8dh, 2b8eh, 2b9ah, 2b9bh, dd 2b9ch, 2b9dh, 2b9eh, 2b9fh, 2ba0h, 2ba1h, 2ba2h, 2ba3h, 2ba6h, 2ba7h, 2baah, 2babh, 2bach, 2badh, 2baeh, 2bafh, 2bb0h, 2bb1h, 2bb2h, dd 2bb5h, 2bb6h, 2bb7h, 2bb8h, 2bb9h, 2bbah, 2be3h, 2be4h, 2be5h, 2be6h, 2be7h, 2be8h, 2bebh, 2bech, 2bedh, 2beeh, 2bf0h, 2bf1h, 2bf2h, dd 2bf3h, 2bf4h, 2c04h, 2c05h, 2c06h, 2c0bh, 2c0ch, 2c0dh, 2c0eh, 2c0fh, 2c10h, 2c11h, 2c12h, 2c1bh, 2c1ch, 2c1dh, 2c1eh, 2c4ah, 2c4bh, dd 2c55h, 2c56h, 2c57h, 2c58h, 2c59h, 2c71h, 2c72h, 2c73h, 2e5bh, 2e5ch, 2e5dh, 2ec0h, 2ec1h, 2ec2h, 2ef7h, 2ef8h, 2ef9h, 2efbh, 2efch, dd 2efdh, 2f25h, 2f26h, 2f27h, 2f43h, 2f44h, 2f45h, 2f46h, 2f47h, 2f48h, 2f49h, 2f4ah, 2f4bh, 2f4dh, 2f4eh, 2f5ch, 2f5dh, 2f5eh, 2f5fh, dd 2f60h, 2f61h, 2f62h, 2f63h, 2f65h, 2f66h, 2f67h, 2f68h, 2f69h, 2f6dh, 2f6eh, 2f6fh, 2f70h, 2f71h, 2f72h, 2f7ch, 2f7dh, 2f7eh, 2f7fh, dd 2f84h, 2f85h, 2f86h, 2f87h, 2f88h, 2f89h, 2f8ah, 2f8bh, 2f8ch, 2f8eh, 2f8fh, 2f90h, 2f91h, 2f92h, 2f93h, 2f94h, 2fa9h, 2faah, 2fabh, dd 2fach, 2fadh, 2faeh, 2fafh, 2fb0h, 2fb1h, 2fb2h, 2fb3h, 2fb4h, 2fc1h, 2fc2h, 2fc3h, 2fc4h, 2fc5h, 2fc7h, 2fc8h, 2fc9h, 2fcah, 2fcbh, dd 2fcch, 2fcdh, 2fceh, 2fcfh, 2fd0h, 2fd1h, 2fd2h, 2fd3h, 2fd4h, 2fd5h, 2fd6h, 2fd7h, 2fe0h, 2fe1h, 2fe2h, 2fe3h, 2fe4h, 2fe6h, 2fe7h, dd 2fe9h, 2feah, 2febh, 2fech, 2fedh, 2feeh, 2fefh, 2ff0h, 2ff1h, 2ff3h, 2ff4h, 2ff5h, 2ff6h, 2ff7h, 2ff8h, 2ff9h, 2ffah, 3002h, 3003h, dd 3004h, 3005h, 3006h, 3008h, 3009h, 300ah, 300bh, 300fh, 3010h, 3011h, 3012h, 3014h, 3015h, 3016h, 3018h, 3019h, 301ah, 3027h, 3028h, dd 3029h, 302dh, 302eh, 302fh, 3030h, 3032h, 3033h, 3034h, 3035h, 3036h, 3037h, 303ah, 303bh, 303ch, 3047h, 3048h, 304ah, 304bh, 304ch, dd 304dh, 304fh, 3050h, 3055h, 3056h, 3059h, 305ah, 305bh, 305ch, 305eh, 305fh, 3066h, 3067h, 3068h, 3069h, 306ah, 306bh, 306ch, 306dh, dd 306eh, 306fh, 3070h, 3071h, 3074h, 3075h, 3076h, 3079h, 307ah, 307bh, 307eh, 307fh, 3080h, 308ch, 308dh, 3092h, 3093h, 3095h, 3096h, dd 3097h, 3098h, 3099h, 309ah, 309bh, 309ch, 309dh, 309eh, 309fh, 30a0h, 30a1h, 30ach, 30adh, 30afh, 30b0h, 30b1h, 30b2h, 30b4h, 30b5h, dd 30bah, 30bbh, 30beh, 30bfh, 30c0h, 30c3h, 30c4h, 30c5h, 30cbh, 30cch, 30d0h, 30d1h, 30d2h, 30d5h, 30d6h, 30d7h, 30d9h, 30dah, 30dbh, dd 30deh, 30dfh, 30e0h, 30e3h, 30e4h, 30e5h, 30f1h, 30f2h, 30f3h, 30f4h, 30f5h, 30f6h, 30f7h, 30f8h, 30f9h, 30fah, 30fbh, 30fch, 30fdh, dd 30feh, 30ffh, 3100h, 3101h, 3102h, 3103h, 3104h, 3105h, 3106h, 3111h, 3112h, 3113h, 3114h, 3115h, 3116h, 3117h, 3118h, 3119h, 311ah, dd 311fh, 3120h, 3123h, 3124h, 3125h, 3128h, 3129h, 312ah, 312fh, 3130h, 3135h, 3136h, 313bh, 313ch, 313fh, 3140h, 3143h, 3144h, 3145h, dd 3149h, 314ah, 3156h, 3157h, 3158h, 3159h, 315ah, 315bh, 315ch, 315dh, 315eh, 315fh, 3162h, 3163h, 3164h, 3165h, 3166h, 3169h, 316ah, dd 316bh, 3176h, 3177h, 3178h, 3179h, 317ah, 317bh, 317ch, 317dh, 317eh, 317fh, 3184h, 3185h, 3188h, 3189h, 318ah, 318eh, 318fh, 3194h, dd 3195h, 319ah, 319bh, 31a0h, 31a1h, 31a4h, 31a5h, 31a9h, 31aah, 31aeh, 31afh, 31bbh, 31bch, 31c2h, 31c3h, 31c4h, 31c7h, 31c8h, 31c9h, dd 31cah, 31cbh, 31cch, 31cdh, 31ceh, 31cfh, 31d0h, 31dch, 31ddh, 31deh, 31dfh, 31e0h, 31e1h, 31e2h, 31e3h, 31e9h, 31eah, 31ech, 31edh, dd 31eeh, 31efh, 31f0h, 31f3h, 31f4h, 31f5h, 31f7h, 31f8h, 31f9h, 31fah, 31fbh, 31feh, 31ffh, 3200h, 3201h, 3204h, 3205h, 3206h, 3209h, dd 320ah, 320eh, 320fh, 3213h, 3214h, 3215h, 3220h, 3221h, 3227h, 3228h, 3229h, 322ah, 322bh, 322ch, 322dh, 322eh, 322fh, 3230h, 3231h, dd 3232h, 3233h, 3234h, 3241h, 3242h, 3243h, 3244h, 3246h, 3247h, 3248h, 324eh, 324fh, 3251h, 3252h, 3253h, 3254h, 3255h, 3257h, 3258h, dd 3259h, 325ah, 325bh, 325ch, 325dh, 325eh, 325fh, 3260h, 3261h, 3262h, 3263h, 3264h, 3265h, 3266h, 3267h, 3268h, 3269h, 326ah, 326bh, dd 326ch, 326dh, 326eh, 326fh, 3270h, 3271h, 3272h, 3273h, 3274h, 3275h, 3277h, 3278h, 3279h, 327ah, 327bh, 327ch, 3285h, 3286h, 328dh, dd 328eh, 328fh, 3290h, 3291h, 3292h, 3293h, 3294h, 32a6h, 32a7h, 32a8h, 32abh, 32ach, 32adh, 32b1h, 32b2h, 32b3h, 32b4h, 32b5h, 32b6h, dd 32bch, 32bdh, 32beh, 32c5h, 32c6h, 32c7h, 32c8h, 32cbh, 32cch, 32cdh, 32ceh, 32cfh, 32d1h, 32d2h, 32d3h, 32d4h, 32d5h, 32d6h, 32d7h, dd 32d8h, 32d9h, 32dah, 32dch, 32ddh, 32deh, 32dfh, 32e0h, 32eah, 32ebh, 32f7h, 330bh, 330ch, 330dh, 3310h, 3311h, 3312h, 3316h, 3317h, dd 3318h, 3319h, 331ah, 331bh, 334eh, 334fh, 3350h, 3351h, 3352h, 33b3h, 33b4h, 33b5h, 33b6h, 33b7h, 49f5h, 4a55h, 4a59h, 4a5ah, 4a5bh, dd 4a5ch, 4a5dh, 4a6bh, 4a6ch, 4a6dh, 4a81h, 4a82h, 4a83h, 4a85h, 4a86h, 4a87h, 4abah, 4abbh, 4abeh, 4abfh, 4ac0h, 4ac1h, 4ac2h, 4ac3h, dd 4ac4h, 4ac5h, 4ac6h, 4ad0h, 4ad1h, 4ad2h, 4adch, 4addh, 4adeh, 4adfh, 4ae6h, 4ae7h, 4ae8h, 4aeah, 4aebh, 4aedh, 4aeeh, 4b1dh, 4b1eh, dd 4b1fh, 4b20h, 4b21h, 4b22h, 4b23h, 4b24h, 4b25h, 4b26h, 4b27h, 4b28h, 4b29h, 4b2ah, 4b2bh, 4b2ch, 4b2eh, 4b2fh, 4b30h, 4b31h, 4b32h, dd 4b35h, 4b36h, 4b37h, 4b38h, 4b39h, 4b3ah, 4b3bh, 4b3ch, 4b3fh, 4b40h, 4b41h, 4b42h, 4b43h, 4b44h, 4b46h, 4b47h, 4b4ch, 4b4fh, 4b50h, dd 4b51h, 4b52h, 4b53h, 4b54h, 4b82h, 4b83h, 4b84h, 4b85h, 4b86h, 4b87h, 4b88h, 4b89h, 4b8ah, 4b8bh, 4b8ch, 4b8dh, 4b8eh, 4b8fh, 4b90h, dd 4b91h, 4b93h, 4b94h, 4b95h, 4b96h, 4b97h, 4b98h, 4b99h, 4b9ah, 4b9bh, 4b9dh, 4b9eh, 4b9fh, 4ba0h, 4ba1h, 4ba2h, 4ba4h, 4ba5h, 4ba6h, dd 4ba7h, 4ba8h, 4ba9h, 4babh, 4bach, 4badh, 4baeh, 4bb0h, 4bb1h, 4bb3h, 4bb4h, 4bb5h, 4bb6h, 4bb7h, 4bb8h, 4bb9h, 4bbah, 4bbbh, 4be9h, dd 4beah, 4bedh, 4beeh, 4befh, 4bf0h, 4bf1h, 4bf2h, 4bf3h, 4bf4h, 4bf5h, 4bf6h, 4bf7h, 4bf8h, 4bf9h, 4bfah, 4bfbh, 4bfch, 4bfdh, 4bfeh, dd 4bffh, 4c00h, 4c01h, 4c02h, 4c03h, 4c04h, 4c05h, 4c06h, 4c07h, 4c09h, 4c0ah, 4c0bh, 4c0ch, 4c0dh, 4c0eh, 4c0fh, 4c10h, 4c11h, 4c12h, dd 4c13h, 4c14h, 4c15h, 4c16h, 4c17h, 4c18h, 4c19h, 4c1ah, 4c1bh, 4c1ch, 4c1fh, 4c20h, 4c21h, 4c22h, 4c4eh, 4c4fh, 4c51h, 4c52h, 4c53h, dd 4c55h, 4c56h, 4c59h, 4c5ah, 4c5bh, 4c5ch, 4c5dh, 4c5eh, 4c5fh, 4c60h, 4c61h, 4c62h, 4c63h, 4c64h, 4c65h, 4c66h, 4c67h, 4c68h, 4c69h, dd 4c6ah, 4c6bh, 4c6ch, 4c6dh, 4c6eh, 4c6fh, 4c70h, 4c71h, 4c72h, 4c73h, 4c74h, 4c75h, 4c76h, 4c77h, 4c78h, 4c79h, 4c7ah, 4c7bh, 4c7ch, dd 4c7dh, 4c7eh, 4c7fh, 4c80h, 4c81h, 4c83h, 4c84h, 4c85h, 4c86h, 4c87h, 4cb5h, 4cb6h, 4cb7h, 4cb9h, 4cbah, 4cbbh, 4cbeh, 4cbfh, 4cc0h, dd 4cc1h, 4cc2h, 4cc3h, 4cc4h, 4cc5h, 4cc6h, 4cc7h, 4cc8h, 4cc9h, 4ccah, 4ccbh, 4ccch, 4ccdh, 4cceh, 4ccfh, 4cd0h, 4cd1h, 4cd2h, 4cd3h, dd 4cd4h, 4cd5h, 4cd6h, 4cd7h, 4cd8h, 4cd9h, 4cdbh, 4cdch, 4cddh, 4cdeh, 4cdfh, 4ce0h, 4ce1h, 4ce2h, 4ce3h, 4ce4h, 4ce5h, 4ce6h, 4ce7h, dd 4ce8h, 4ce9h, 4ceah, 4cebh, 4cech, 4cedh, 4d23h, 4d24h, 4d28h, 4d2dh, 4d2eh, 4d32h, 4d3ah, 4d3bh, 4d3ch, 4d47h, 4d48h, 4d4ah, 4d4bh, dd 4d4ch, 4d4dh, 4d4eh, 4d4fh, 4d50h, 4d51h, 4d52h, 4d9eh, 4d9fh, 4da0h, 4db3h, 4db4h, 4db5h, 4db6h, 4e02h, 4e03h, 4e04h, 4e05h, 4e67h, dd 4e68h, 4e69h, 4e6ah, 4ecdh, 4eceh oldval db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, db 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h, 0h newval db 4ah, 74h, 3fh, 15h, 9fh, 0ffh, 15h, 0ffh, 3fh, 74h, 5fh, 74h, 0ffh, 2ah, 4ah, 0e9h, 0ffh, 0dfh, 9fh, 0ffh, 3fh, 3fh, 0ffh, db 0ffh, 2ah, 1fh, 2ah, 15h, 0e9h, 7fh, 15h, 5fh, 0dfh, 0ffh, 3fh, 74h, 5fh, 7fh, 0ffh, 3fh, 0ffh, 15h, 1fh, 7fh, 15h, 2ah, 0bfh, 0dfh, db 0e9h, 1fh, 0d4h, 0ffh, 0b4h, 2ah, 3fh, 2ah, 74h, 7fh, 5fh, 0c9h, 0bfh, 7fh, 0ffh, 7fh, 0d4h, 35h, 9fh, 0bfh, 9fh, 5fh, 0bfh, 0bfh, db 0ffh, 1fh, 15h, 7fh, 0ffh, 0d4h, 0c9h, 0dfh, 0e9h, 0d4h, 0aah, 0e9h, 9fh, 7fh, 0ffh, 0ffh, 0b4h, 7fh, 0bfh, 3fh, 3fh, 1fh, 7fh, 0bfh, db 0b4h, 0b4h, 2ah, 0c9h, 0dfh, 0ffh, 0dfh, 4ah, 4ah, 0e9h, 5fh, 4ah, 0bfh, 4ah, 3fh, 0ffh, 3fh, 0ffh, 0ffh, 0aah, 5fh, 0ffh, 4ah, 4ah, db 0dfh, 0e9h, 0ffh, 0c9h, 2ah, 35h, 0ffh, 4ah, 8ah, 0ffh, 94h, 8ah, 0dfh, 0ffh, 0ffh, 0ffh, 7fh, 7fh, 0bfh, 7fh, 0bfh, 0b4h, 0b4h, 0aah, db 0e9h, 1fh, 0dfh, 5fh, 2ah, 0ffh, 3fh, 0e9h, 0d4h, 15h, 0ffh, 9fh, 0e9h, 6ah, 15h, 0d4h, 0d4h, 2ah, 0ffh, 0b4h, 4ah, 3fh, 3fh, 0ffh, db 8ah, 74h, 0dfh, 9fh, 2ah, 74h, 0d4h, 0bfh, 0bfh, 0ffh, 74h, 0ffh, 0bfh, 0ffh, 0ffh, 3fh, 0bfh, 0bfh, 0bfh, 0dfh, 3fh, 0ffh, 3fh, 3fh, db 0ffh, 5fh, 9fh, 7fh, 7fh, 9fh, 0dfh, 0d4h, 2ah, 0bfh, 7fh, 3fh, 0ffh, 2ah, 1fh, 0e9h, 9fh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0e9h, db 0ffh, 0ffh, 3fh, 0bfh, 0bfh, 7fh, 0ffh, 74h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0aah, 0ffh, 74h, 0ffh, 7fh, 0bfh, 8ah, 2ah, 15h, db 0bfh, 0e9h, 8ah, 8ah, 0e9h, 0d4h, 15h, 0e9h, 0aah, 15h, 3fh, 2ah, 0ffh, 35h, 4ah, 2ah, 0ffh, 3fh, 2ah, 0d4h, 0d4h, 3fh, 74h, 0ffh, db 4ah, 1fh, 2ah, 0ffh, 5fh, 1fh, 3fh, 4ah, 0ffh, 0e9h, 9fh, 7fh, 0b4h, 0ffh, 35h, 7fh, 0d4h, 2ah, 0ffh, 55h, 4ah, 7fh, 7fh, 35h, 9fh, db 0dfh, 15h, 1fh, 7fh, 94h, 0e9h, 5fh, 94h, 0ffh, 4ah, 15h, 0ffh, 3fh, 0bfh, 0e9h, 0bfh, 0bfh, 1fh, 15h, 9fh, 0ffh, 0ffh, 8ah, 0dfh, db 0b4h, 35h, 5fh, 7fh, 0ffh, 1fh, 5fh, 7fh, 74h, 1fh, 1fh, 0e9h, 94h, 7fh, 0ffh, 1fh, 15h, 0d4h, 0dfh, 0d4h, 0ffh, 0b4h, 5fh, 0bfh, db 0bfh, 4ah, 55h, 0d4h, 0ffh, 0ffh, 0d4h, 5fh, 9fh, 4ah, 2ah, 0e9h, 0d4h, 0dfh, 0e9h, 7fh, 15h, 3fh, 2ah, 0b4h, 0bfh, 6ah, 3fh, 3fh, db 1fh, 3fh, 3fh, 7fh, 5fh, 15h, 3fh, 2ah, 4ah, 74h, 15h, 0ffh, 0ffh, 74h, 15h, 3fh, 15h, 15h, 3fh, 15h, 4ah, 74h, 15h, 1fh, 0dfh, 0ffh, db 0e9h, 15h, 7fh, 0bfh, 9fh, 15h, 3fh, 2ah, 0ffh, 0ffh, 0c9h, 9fh, 0ffh, 0e9h, 0ffh, 55h, 15h, 0c9h, 0ffh, 0e9h, 55h, 3fh, 7fh, 7fh, db 4ah, 0e9h, 7fh, 5fh, 7fh, 7fh, 2ah, 1fh, 0bfh, 0e9h, 0ffh, 9fh, 0b4h, 0d4h, 0ffh, 2ah, 7fh, 0e9h, 0ffh, 2ah, 15h, 3fh, 1fh, 3fh, 7fh, db 0ffh, 0d4h, 0c9h, 5fh, 0e9h, 0d4h, 0dfh, 0d4h, 0e9h, 0b4h, 1fh, 0ffh, 0ffh, 0d4h, 35h, 55h, 0ffh, 1fh, 74h, 0e9h, 3fh, 0aah, 0e9h, db 15h, 15h, 0d4h, 0dfh, 8ah, 9fh, 0ffh, 0ffh, 74h, 1fh, 0bfh, 0ffh, 0d4h, 4ah, 0dfh, 0c9h, 15h, 9fh, 0ffh, 3fh, 35h, 0bfh, 0b4h, 0ffh, db 5fh, 4ah, 0bfh, 0ffh, 94h, 0e9h, 0d4h, 0ffh, 4ah, 35h, 9fh, 0bfh, 9fh, 15h, 35h, 0b4h, 9fh, 5fh, 3fh, 0ffh, 0dfh, 15h, 8ah, 0ffh, db 0c9h, 2ah, 0e9h, 94h, 0dfh, 0d4h, 15h, 0dfh, 74h, 1fh, 2ah, 1fh, 0ffh, 5fh, 7fh, 0ffh, 15h, 0d4h, 0ffh, 3fh, 0dfh, 9fh, 15h, 0ffh, db 0ffh, 2ah, 0b4h, 0d4h, 0ffh, 7fh, 7fh, 0ffh, 0e9h, 2ah, 0dfh, 0d4h, 4ah, 0e9h, 5fh, 4ah, 0bfh, 4ah, 55h, 0e9h, 5fh, 5fh, 0dfh, 0aah, db 3fh, 0ffh, 4ah, 4ah, 0ffh, 3fh, 7fh, 0ffh, 1fh, 0bfh, 9fh, 0d4h, 74h, 1fh, 74h, 7fh, 0ffh, 7fh, 6ah, 0ffh, 8ah, 3fh, 3fh, 74h, 0ffh, db 2ah, 0b4h, 0dfh, 4ah, 0ffh, 0ffh, 74h, 0dfh, 9fh, 0e9h, 7fh, 74h, 0ffh, 4ah, 8ah, 0ffh, 1fh, 0dfh, 5fh, 1fh, 0ffh, 35h, 15h, 0e9h, db 5fh, 1fh, 0ffh, 3fh, 3fh, 0ffh, 3fh, 15h, 0ffh, 74h, 0bfh, 0ffh, 6ah, 15h, 15h, 6ah, 0e9h, 15h, 55h, 0e9h, 0c9h, 7fh, 0ffh, 7fh, 3fh, db 0aah, 74h, 7fh, 0b4h, 0e9h, 0b4h, 15h, 74h, 0ffh, 1fh, 8ah, 0e9h, 0d4h, 0bfh, 1fh, 0ffh, 5fh, 0bfh, 7fh, 3fh, 0ffh, 3fh, 3fh, 0ffh, db 5fh, 3fh, 0ffh, 74h, 0d4h, 8ah, 9fh, 0ffh, 3fh, 2ah, 0ffh, 3fh, 0bfh, 0bfh, 0bfh, 0dfh, 0e9h, 0ffh, 0e9h, 9fh, 2ah, 15h, 0e9h, 6ah, db 0ffh, 3fh, 7fh, 0ffh, 2ah, 3fh, 0ffh, 3fh, 3fh, 0ffh, 4ah, 0d4h, 9fh, 7fh, 0e9h, 5fh, 0ffh, 1fh, 0bfh, 7fh, 3fh, 0ffh, 3fh, 0ffh, 7fh, db 3fh, 0ffh, 7fh, 0d4h, 7fh, 0bfh, 0ffh, 74h, 0ffh, 3fh, 7fh, 0e9h, 0bfh, 7fh, 3fh, 0ffh, 2ah, 0ffh, 3fh, 8ah, 0ffh, 0dfh, 8ah, 7fh, db 0d4h, 0e9h, 15h, 0ffh, 0aah, 0ffh, 5fh, 3fh, 0ffh, 0bfh, 0dfh, 0bfh, 7fh, 15h, 6ah, 0ffh, 6ah, 1fh, 0e9h, 0b4h, 3fh, 4ah, 74h, 2ah, db 0ffh, 35h, 4ah, 6ah, 0ffh, 3fh, 15h, 0dfh, 8ah, 0ffh, 8ah, 0ffh, 3fh, 4ah, 0ffh, 1fh, 0bfh, 7fh, 15h, 0e9h, 0c9h, 4ah, 4ah, 0ffh, 5fh, db 0bfh, 0bfh, 2ah, 74h, 7fh, 5fh, 15h, 0bfh, 0ffh, 0ffh, 15h, 0ffh, 0ffh, 9fh, 0d4h, 7fh, 5fh, 0dfh, 0d4h, 0bfh, 7fh, 4ah, 0dfh, 0ffh, db 0e9h, 0ah, 55h, 0bfh, 1fh, 94h, 0e9h, 5fh, 94h, 0ffh, 4ah, 0c9h, 0ffh, 9fh, 7fh, 0dfh, 0d4h, 15h, 5fh, 0ffh, 0ffh, 0ffh, 0e9h, 9fh, db 0bfh, 0ffh, 0ffh, 0e9h, 7fh, 0d4h, 0ffh, 0ffh, 0ffh, 2ah, 0bfh, 7fh, 1fh, 9fh, 0bfh, 0bfh, 0dfh, 0ffh, 4ah, 2ah, 74h, 0ffh, 0b4h, db 0b4h, 0ffh, 5fh, 2ah, 0bfh, 0ffh, 0ffh, 0dfh, 2ah, 0bfh, 74h, 1fh, 5fh, 0bfh, 0bfh, 4ah, 74h, 0bfh, 0bfh, 7fh, 15h, 2ah, 7fh, 7fh, db 7fh, 5fh, 4ah, 7fh, 7fh, 7fh, 1fh, 4ah, 7fh, 74h, 4ah, 5fh, 0bfh, 7fh, 3fh, 1fh, 7fh, 2ah, 4ah, 0b4h, 15h, 15h, 3fh, 3fh, 74h, 74h, db 15h, 74h, 0dfh, 0bfh, 7fh, 2ah, 0ffh, 0e9h, 0bfh, 0bfh, 2ah, 5eh, 2ah, 86h, 0b4h, 0abh, 75h, 62h, 55h, 64h, 3ch, 84h, 0ffh, 9ch, 5eh, db 64h, 62h, 0ffh, 3fh, 94h, 0dbh, 0ffh, 0ffh, 0ffh, 84h, 93h, 0e4h, 0e6h, 0a1h, 0a2h, 51h, 68h, 62h, 9ch, 0a1h, 5bh, 0ffh, 0bdh, 0a1h, db 0a5h, 6ah, 0b4h, 2ah, 3fh, 0ffh, 6ah, 3fh, 1fh, 0adh, 0e8h, 0f0h, 9eh, 0d9h, 0f1h, 0eeh, 0d7h, 0fbh, 78h, 62h, 82h, 87h, 71h, 51h, db 0fbh, 0c9h, 3fh, 62h, 82h, 87h, 71h, 51h, 7eh, 0e1h, 0ffh, 0ffh, 0ffh, 0abh, 0dbh, 9eh, 80h, 0fbh, 0c9h, 68h, 0b0h, 0ffh, 82h, 0b4h, db 0bfh, 0e9h, 9fh, 7fh, 4ah, 0d9h, 0ffh, 7ah, 6ah, 0ffh, 0ffh, 96h, 89h, 0e4h, 6ah, 0eah, 0eeh, 0ffh, 0ffh, 0d9h, 73h, 5dh, 0eeh, 87h, db 0eah, 0eeh, 0ffh, 0ffh, 0d9h, 73h, 0ffh, 0f9h, 0c7h, 0ffh, 0ffh, 82h, 0c9h, 0ffh, 0ffh, 8fh, 0e4h, 91h, 0cch, 0eeh, 0dbh, 0ffh, 0f1h, db 0e6h, 0ffh, 0ffh, 75h, 0bfh, 74h, 0ffh, 0dfh, 1bh, 0b8h, 0ffh, 0bah, 66h, 0b6h, 0c1h, 60h, 0cah, 0fbh, 9ch, 87h, 0ffh, 0ffh, 5dh, db 0b6h, 0c1h, 66h, 0cah, 0fbh, 9ch, 87h, 0ffh, 0ffh, 5dh, 0ffh, 0eeh, 0ech, 0ffh, 0e1h, 82h, 0eeh, 0ech, 0d0h, 0ceh, 91h, 0bah, 0eah, db 78h, 71h, 0ffh, 89h, 68h, 0ddh, 0bdh, 0ddh, 0ffh, 0cch, 0a9h, 5fh, 3fh, 89h, 0fbh, 80h, 0f7h, 0dfh, 0bfh, 0e1h, 0e4h, 0ffh, 0f1h, 89h, db 0c3h, 0ffh, 0eeh, 0c7h, 0fbh, 0e1h, 0e4h, 0ffh, 0f1h, 89h, 0c3h, 0ffh, 0eeh, 0c7h, 0fbh, 0e4h, 0ffh, 0ffh, 0dbh, 0fbh, 0eah, 0eeh, db 9ah, 0dbh, 0f3h, 0ffh, 0ffh, 0ffh, 0cah, 0ffh, 0ffh, 0cah, 0eah, 0ffh, 94h, 87h, 0b0h, 0bah, 0d9h, 0cah, 5dh, 77h, 9ah, 62h, 0aeh, db 9eh, 71h, 0c7h, 0e6h, 9eh, 9eh, 0ffh, 0ffh, 0c5h, 0e8h, 0ffh, 0fbh, 0c7h, 0e6h, 9eh, 9eh, 0ffh, 0ffh, 0c5h, 0e8h, 0ffh, 0fbh, 75h, db 0a3h, 0a3h, 0c7h, 0ffh, 0e6h, 78h, 0b2h, 0eeh, 0ddh, 8fh, 0dfh, 0ffh, 0b2h, 0ffh, 0fbh, 0ech, 0dfh, 0ddh, 0ffh, 0ffh, 0e3h, 0ddh, db 0ceh, 0a1h, 60h, 66h, 5dh, 6dh, 66h, 5dh, 6dh, 9ch, 0ffh, 0c3h, 75h, 82h, 5bh, 91h, 0c1h, 0c9h, 0ffh, 0ffh, 0ceh, 0fbh, 9ah, 0a9h, db 0ffh, 0f0h, 8fh, 0dbh, 0f7h, 0bfh, 86h, 0ffh, 0ffh, 0e3h, 6fh, 0ffh, 0ffh, 0a7h, 6ah, 6bh vals01 dw 1239 vals02 dw 1239 patch ends end main