Podoba mi się to że najnowsze pokolenie w 100% z chowu sieciowego ma totalnie wypierdolone w całą tą politykę i nic nie traktuje poważnie. Boomerzy się kłócą że ktośtam udusił murzyna czy zastrzelił białasa na uniwersytecie, chodzą na jakieś marsze na kiju a każda z tych mord które osadzają na transparentach włącznie z Epsteinem w sieci od razu staje się śmiesznym memem ze śmieszną muzyczką. Podoba się dla mnie jak to rozmywa dramę i patos które usiłują budować bumerzy.
Wziąłem pod lupę kod pliku UEFI na którym eksperymentowałem. Pierwsze 16 bajtów to był kod śmieciowy i bajzelbajty antyasemblacyjne - Czemu kotkolwiek miałby to umieszczać w Hello World wykracza poza horyzonty mojej wyobraźni. Dodać pragnę że sama sekcja kodu ma 35 bajtów, więc te śmieci zajmują 45,71% kodu. Nadpisałem je faktycznym kodem - w konsekwencji musiałem poprawić adres danych do relokowania, a także zmienić adres punktu wejścia, który oryginalnie pomijał te śmieci. Najpewniej kompilator dorzucił jakiś filler. A może to jakiś rabinistyczny backdoor.
Ogółem 7/10, to jedna z takich przygód które dodają doświadczenia.
Przepisanie aplikacji do janushexa, zapisanie jako .efi i władowanie do pendrive'a zadziałało. Rozruchowego pendrive'a nie trzeba nawet formatować rufusem, wystarczy kopiuj-wklej do FAT32, to plus.
Minus jest taki że chuj wie co się dzieje z tym kodem jak już poleci do RAMu, plik na którym się wzorowałem miał jedną relokację dla adresu tekstu do wypisania referowaną w kodzie. Znaczy się, pewnie wszystkie statyczne dane trzeba będzie relokować do adresów absolutnych, a konkretnie odwołania do nich w kodzie.
Być może na dniach pobawię się jeszcze kilkoma zmiennymi. Przykład: na załączonym obrazku wszystko zaznaczone na czerwono poza magiczną liczbą i kilkoma bajtami dalej to legacy śmieci z czasów DOSa i zastanawia mnie czy mogę je po prostu wyciąć i w ich miejscu zadeklarować adres sygnatury PE32+, który naturalnie znajduje się poniej.
Ze względu na KONWENANSE, taki prosty plik Hello World w UEFI ma 2KB rozmiaru. Prawdopodobnie nie uda mi się tego ściąć ze względu na to, że każda sekcja kodu musi mieć co najmniej 512 bajtów, więc przy .text, .data, .reloc i nagłówkach mamy już te pieprzone 2KB z DOSowymi śmieciami czy bez nich.
Kolejnym istotnym krokiem wydaje się próba skorzystania z jakiejś jeszcze funkcjonalności z tablic UEFI. I muszę rozszerzyć deasembler janushexa do trybu 64bitowego.