forked from wangyif2/RE-for-beginners
-
Notifications
You must be signed in to change notification settings - Fork 0
/
preface.tex
579 lines (535 loc) · 18.6 KB
/
preface.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
\section*{%
\RU{Предисловие}%
\EN{Preface}%
\ES{Pr\'ologo}%
\NL{Voorwoord}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}%
}
\iffalse
\RU{Здесь (будет) немного моих заметок о \gls{reverse engineering} на русском языке для начинающих,
для тех кто хочет научиться понимать создаваемый \CCpp компиляторами код для x86 (коего,
практически, больше всего остального) и ARM.}%
\EN{Here are some of my notes in English for beginners in \gls{reverse engineering}
who would like to learn to understand x86 (which accounts for almost
all executable software in the world) and ARM code created by \CCpp compilers.}%
\ES{Aqu\'i hay algunas de mis notas en ingl\'es para principiantes en \gls{ingenier\'ia inversa}
que deseen aprender a entender c\'odigo x86 (que involucra a casi
cualquier ejecutable en el mundo) y ARM creado por compiladores \CCpp.}%
\NL{Hier zijn enkele van mijn nota\'s in het engels voor beginners in het \gls{reverse engineeren}
die x86 (wat bij bijna alle executables ter wereld gebruikt wordt) en ARM code (die gemaakt wordt
door \CCpp compilers willen leren begrijpen.}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\fi
\RU{У термина \q{\gls{reverse engineering}} несколько популярных значений:
1) исследование скомпилированных
программ; 2) сканирование трехмерной модели для последующего копирования;
3) восстановление структуры СУБД. Настоящий сборник заметок
связан с первым значением.}%
\EN{There are several popular meanings of the term \q{\gls{reverse engineering}}:
1) The reverse engineering of software: researching compiled programs;
2) The scanning of 3D structures and the subsequent digital manipulation required in order to duplicate them;
3) Recreating \ac{DBMS} structure.
This book is about the first meaning.}%
\ES{Existen muchos significados populares para el t\'ermino \q{\gls{reverse engineering}}:
1) La ingenier\'ia inversa de software: la investigaci\'on de programas compilados;
2) El escaneo de estructuras 3D y la manipulaci\'on digital subsecuente requerida para duplicarlas;
3) La recreaci\'on de la estructura de un \ac{DBMS}.
Este libro es acerca del primer significado.}%
\NL{Er zijn verschillende populaire betekenissen voor de term \q{\gls{reverse engineering}}:
1) Reverse engineeren van software: gecompileerde programma\'s onderzoeken;
2) Scannen van 3D structuren en de onderliggende digitale bewerkingen om deze te kunnen dupliceren;
3) Het nabootsen van een \ac{DBMS} structuur.
Dit boek gaat over de eerste betekenis.}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\ifx\LITE\undefined
\subsection*{%
\RU{Рассмотренные темы}%
\EN{Topics discussed in-depth}%
\ES{T\'opicos discutidos a profundidad}%
\NL{Onderwerpen die grondig worden besproken}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}%
}
x86/x64, ARM/ARM64, MIPS, Java/JVM.
\subsection*{%
\RU{Затронутые темы}%
\EN{Topics touched upon}%
\ES{T\'opicos tocados}%
\NL{Onderwerpen die oppervlakkig worden besproken}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}%
}
\oracle (\myref{oracle}),
Itanium (\myref{itanium}),
\RU{донглы для защиты от копирования}%
\EN{copy-protection dongles}%
\ES{dongles para protecci\'on de copias}%
\NL{copy-protection dongles}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
(\myref{dongles}),
LD\_PRELOAD (\myref{ld_preload}),
\RU{переполнение стека}%
\EN{stack overflow}%
\NL{stack overflow}%
\ES{desbordamiento de pila}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{},
\ac{ELF},
\RU{формат файла PE в win32}%
\EN{win32 PE file format}%
\ES{formato de archivo win32 PE}%
\NL{Win32 PE bestandsformaat}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
(\myref{win32_pe}),
x86-64 (\myref{x86-64}),
\RU{критические секции}%
\EN{critical sections}%
\NL{belangrijke secties}%
\ES{secciones cr\'iticas}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
(\myref{critical_sections}),
\RU{системные вызовы}%
\EN{syscalls}%
\NL{systeemcalls}%
\ES{llamadas al sistema}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
(\myref{syscalls}),
\ac{TLS},
\RU{адресно-независимый код}%
\EN{position-independent code}%
\ES{c\'odigo de posici\'on independiente}%
\NL{positie-onafhankelijke code}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
(\ac{PIC}) (\myref{sec:PIC}),
profile-guided optimization (\myref{PGO}),
C++ STL (\myref{cpp_STL}),
OpenMP (\myref{openmp}),
SEH (\myref{sec:SEH}).
\fi
\subsection*{%
\RU{Упражнения и задачи}%
\EN{Exercises and tasks}%
\ES{Ejercicios y tareas}%
\NL{Oefeningen en opdrachten}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}%
}
\dots
\RU{все перемещены на отдельный сайт:}%
\EN{are all moved to the separate website:}%
\ES{fueron movidos al sitio web:}%
\NL{zijn allen verplaatst naar de website:}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\url{http://challenges.re}.
\subsection*{%
\RU{Об авторе}%
\EN{About the author}%
\ES{Sobre el autor}%
\NL{Over de auteur}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}%
}
\begin{tabularx}{\textwidth}{ l X }
\raisebox{-\totalheight}{
\includegraphics[scale=0.60]{Dennis_Yurichev.jpg}
}
&
\RU{Денис Юричев~--- опытный reverse engineer и программист.}%
\EN{Dennis Yurichev is an experienced reverse engineer and programmer.}%
\ES{Dennis Yurichev es un reverser y programador experimentado.}%
\NL{Dennis Yurichev is een ervaren reverse engineer en programmeur.}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\RU{С ним можно контактировать по емейлу:}%
\EN{He can be contacted by email:}%
\ES{Puede ser contactado por email:}%
\NL{Je kan hem contacteren via email:}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\textbf{\EMAIL{}},
\RU{или по Skype:}%
\EN{or on Skype:}%
\ES{o en Skype:}%
\NL{of via Skype:}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\textbf{dennis.yurichev}.
% FIXME: no link. \tablefootnote doesn't work
\end{tabularx}
% subsections:
\input{praise}
\subsection*{%
\RU{Благодарности}%
\EN{Thanks}%
\ES{Agradecimientos}%
\NL{Dankwoord}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}%
}
\RU{Тем, кто много помогал мне отвечая на массу вопросов:}%
\EN{For patiently answering all my questions:}%
\ES{Por contestar pacientemente a todas mis preguntas:}%
\NL{Voor al mijn vragen geduldig te beantwoorden:}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\HERMIT,
% TODO macro like \LatinizedName
\RU{Слава \q{Avid} Казаков.}%
\EN{Slava \q{Avid} Kazakov.}%
\NL{Slava \q{Avid} Kazakov.}%
\ES{Slava \q{Avid} Kazakov.}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\RU{Тем, кто присылал замечания об ошибках и неточностях:}%
\EN{For sending me notes about mistakes and inaccuracies:}%
\ES{Por enviarme notas acerca de errores e inexactitudes:}%
\NL{Om me nota\'s over fouten en onnauwkeurigheden toe te sturen:}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\RU{Станислав \q{Beaver} Бобрицкий, Александр Лысенко}%
\EN{Stanislav \q{Beaver} Bobrytskyy, Alexander Lysenko}%
\NL{Stanislav \q{Beaver} Bobrytskyy, Alexander Lysenko}%
\ES{Stanislav \q{Beaver} Bobrytskyy, Alexander Lysenko}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{},
Shell Rocket, Zhu Ruijin, Changmin Heo.
\RU{Просто помогали разными способами:}%
\NL{Om me te helpen op andere manieren:}%
\EN{For helping me in other ways:}%
\ES{Por ayudarme de otras formas:}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\RU{Андрей Зубинский,}%
\EN{Andrew Zubinski,}%
\NL{Andrew Zubinski,}%
\ES{Andrew Zubinski,}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
Arnaud Patard (rtp
\RU{на}%
\EN{on}%
\NL{op}%
\ES{en}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\#debian-arm IRC),
\RU{Александр Автаев}%
\EN{Aliaksandr Autayeu}%
\ES{}%
\NL{Aliaksandr Autayeu}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}.
\RU{Переводчикам на китайский язык:}%
\EN{For translating the book into Simplified Chinese:} %
\ES{Por traducir el libro a Chino Simplificado:}%
\NL{Om het boek te vertalen naar het Vereenvoudigd Chinees:}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
Antiy Labs (\href{http://antiy.cn}{antiy.cn}) \AndENRU Archer.
\RU{Переводчику на корейский язык}%
\EN{For translating the book into Korean}%
\ES{Por traducir el libro a Coreano}%
\NL{Om dit boek te vertalen in het Koreaans}
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}: Byungho Min.
\RU{Переводчикам на испанский язык}%
\EN{For translating the book into Spanish}%
\NLph{}\ESph{}: Diego Boy, Luis Alberto Espinosa Calvo.
% http://arteinformatica.esy.es/category/ingenieria-inversa-para-los-principiantes/
\RU{Переводчикам на португальский язык}%
\EN{For translating the book into Portuguese}%
\NLph{}\ESph{}\PTBRph{}: Thales Stevan de A. Gois.
\RU{Корректорам}%
\EN{For proofreading}%
\ES{Por correcci\'on de pruebas}%
\NL{Voor proofreading}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}:
\RU{Александр \q{Lstar} Черненький}%
\EN{Alexander \q{Lstar} Chernenkiy}%
\ES{Alexander \q{Lstar} Chernenkiy}%
\NL{Alexander \q{Lstar} Chernenkiy}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{},
\RU{Владимир Ботов}%
\EN{Vladimir Botov}%
\ES{Vladimir Botov}%
\NL{Vladimir Botov}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{},
\RU{Андрей Бражук}%
\EN{Andrei Brazhuk}%
\ES{Andrei Brazhuk}%
\NL{Andrei Brazhuk}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{},
\RU{Марк}%
\EN{Mark}%
\ES{Mark}%
\NL{Mark}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
``Logxen''
\RU{Купер}%
\EN{Cooper}%
\ES{Cooper}%
\NL{Cooper}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}, Yuan Jochen Kang, Mal Malakov, Lewis Porter, Jarle Thorsen.
\RU{Васил Колев сделал очень много исправлений и указал на многие ошибки.}%
\EN{Vasil Kolev did a great amount of work in proofreading and correcting many mistakes.}%
\ES{Vasil Kolev realiz\'o una gran cantidad de trabajo en correcci\'on de pruebas y correcci\'on de muchos errores.}%
\NL{Vasil Kolev, voor het vele werk in proofreading en het verbeteren van vele fouten.}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\RU{За иллюстрации и обложку: Андрей Нечаевский.}%
\EN{For illustrations and cover art: Andy Nechaevsky.}%
\ES{Por las ilustraciones y el arte de la portada: Andy Nechaevsky.}%
\NL{Voor de illustraties en cover art: Andy Nechaevsky.}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\RU{И ещё всем тем на github.com кто присылал замечания и исправления.}%
\EN{Thanks also to all the folks on github.com who have contributed notes and corrections.}%
\ES{Gracias a toda la gente en github.com que ha contribuido con notas y correcciones.}%
\NL{Dank aan al de mensen op github.com die hebben nota\'s en correcties hebben bijgedragen.}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\RU{Было использовано множество пакетов \LaTeX. Их авторов я также хотел бы поблагодарить.}%
\EN{Many \LaTeX\ packages were used: I would like to thank the authors as well.}%
\ES{Muchos paquetes de \LaTeX\ fueron utiliados: quiero agradecer tambi\'en a sus autores.}%
\NL{Veel \LaTeX\ packages zijn gebruikt. Ik zou de auteurs hiervan ook graag bedanken.}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\subsubsection*{%
\RU{Жертвователи}%
\EN{Donors}%
\ES{Donadores}%
\NL{Donaties}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}%
}
\RU{Те, кто поддерживал меня во время написании этой книги:}%
\EN{Those who supported me during the time when I wrote significant part of the book:}%
\ES{Aquellos que me apoyaron durante el tiempo que escrib\'i una parte significativa del libro:}%
\NL{Zij die me gesteund hebben tijdens het schrijven van een groot deel van dit boek:}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
2 * Oleg Vygovsky (50+100 UAH),
Daniel Bilar ($\$$50),
James Truscott ($\$$4.5),
Luis Rocha ($\$$63),
Joris van de Vis ($\$$127),
Richard S Shultz ($\$$20),
Jang Minchang ($\$$20),
Shade Atlas (5 AUD),
Yao Xiao ($\$$10),
Pawel Szczur (40 CHF),
Justin Simms ($\$$20),
Shawn the R0ck ($\$$27),
Ki Chan Ahn ($\$$50),
Triop AB (100 SEK),
Ange Albertini (\euro{}10+50),
Sergey Lukianov (300 RUR),
Ludvig Gislason (200 SEK),
Gérard Labadie (\euro{}40),
Sergey Volchkov (10 AUD),
Vankayala Vigneswararao ($\$$50),
Philippe Teuwen ($\$$4),
Martin Haeberli ($\$$10),
Victor Cazacov (\euro{}5),
Tobias Sturzenegger (10 CHF),
Sonny Thai ($\$$15),
Bayna AlZaabi ($\$$75),
Redfive B.V. (\euro{}25),
Joona Oskari Heikkilä (\euro{}5),
Marshall Bishop ($\$$50),
Nicolas Werner (\euro{}12),
Jeremy Brown ($\$$100),
Alexandre Borges ($\$$25),
Vladimir Dikovski (\euro{}50),
Jiarui Hong (100.00 SEK),
Jim Di (500 RUR),
Tan Vincent ($\$$30),
Sri Harsha Kandrakota (10 AUD),
Pillay Harish (10 SGD),
Timur Valiev (230 RUR),
Carlos Garcia Prado (\euro{}10),
Salikov Alexander (500 RUR),
Oliver Whitehouse (30 GBP),
Katy Moe ($\$$14),
Maxim Dyakonov ($\$$3),
Sebastian Aguilera (\euro{}20),
Hans-Martin Münch (\euro{}15),
Jarle Thorsen (100 NOK),
Vitaly Osipov ($\$$100),
Yuri Romanov (1000 RUR),
Aliaksandr Autayeu (\euro{}10),
Tudor Azoitei ($\$$40),
Z0vsky (\euro{}10),
Yu Dai ($\$$10).
\RU{Огромное спасибо каждому!}%
\EN{Thanks a lot to every donor!}%
\ES{!`Gracias a cada donante!}%
\NL{Veel dank aan elke donor!}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
% subsections
\input{FAQ}
\ifdefined\ebook
\RU{Это версия формата A5 для электронных читалок.}%
\EN{This is the A5-format version for e-book readers.}%
\ES{Esta versi\'on del libro es de formato A5 para lectores de libros electr\'onicos.}%
\NL{Dit is de versie van het boek in A5-formaat voor e-readers.}
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\RU{Хотя, тут всё то же самое, но иллюстрации уменьшены и не очень хорошо читаемы.}%
\EN{Although the content is mostly the same, the illustrations are resized and probably not readable.}%
\ES{Aunque el contenido es pr\'acticamente el mismo, las ilustraciones fueron redimensionadas y probablemente no sean legibles.}%
\NL{Hoewel de inhoud grotendeels hetzelfde is, zijn de illustraties geresized en waarschijnlijk niet leesbaar.}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\RU{Вы можете попробовать изменить масштаб в вашей читалке.}%
\EN{You may try to change scale in your e-book reader.}%
\ES{Puedes tratar de cambiar la escala en tu lector de libros electr\'onicos.}%
\NL{Je kan proberen deze te vergroten in je e-book reader.}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\RU{Так или иначе, вы всегда можете посмотреть их в версии формата A4 здесь:}%
\EN{Otherwise, you can always view them in the A4-format version here:}%
\ES{De cualquier manera, siempre puedes verlas en la versi\'on de formato A4 aqu\'i:}%
\NL{Anders kan je ze altijd bekijken in de versie in A4-formaat hier:}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\href{http://go.yurichev.com/17009}{beginners.re}.
\fi
% {\RU{Целевая аудитория}\EN{Target audience}}
\subsection*{%
\RU{О переводе на корейский язык}%
\EN{About the Korean translation}%
\ES{Acerca de la traducci\'on al Coreano}%
\NL{Over de Koreaanse vertaling}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}%
}
\RU{В январе 2015, издательство Acorn в Южной Корее сделало много работы в переводе
и издании моей книги (по состоянию на август 2014) на корейский язык.}%
\EN{In January 2015, the Acorn publishing company (\href{http://www.acornpub.co.kr}{www.acornpub.co.kr}) in South Korea did a huge amount of work in translating and publishing
my book (as it was in August 2014) into Korean.}%
\ES{En enero del 2015, la editorial Acorn (\href{http://www.acornpub.co.kr}{www.acornpub.co.kr}) en Corea del Sur realiz\'o una enorme cantidad de trabajo
traduciendo y publicando mi libro (como era en agosto del 2014) en Coreano.}%
\NL{In Januari 2015 heeft de Acorn uitgeverij (\href{http://www.acornpub.co.kr}{www.acornpub.co.kr}) in Zuid Korea een enorme hoeveelheid werk verricht in het vertalen en uitgeven
van mijn boek (zoals het was in augustus 2014) in het Koreaans.}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\RU{Она теперь доступна на}%
\EN{It's now available at}%
\ES{Ahora se encuentra disponible en}%
\NL{Het is nu beschikbaar op}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\href{http://go.yurichev.com/17343}{%
\RU{их сайте}%
\EN{their website}%
\ES{su sitio web}%
\NL{hun website}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}%
}.
\iffalse
\begin{figure}[H]
\centering
\includegraphics[scale=0.3]{acorn_cover.jpg}
\end{figure}
\fi
\RU{Переводил}%
\EN{The translator is}%
\ES{El traductor es}%
\NL{De vertaler is}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
Byungho Min (\href{http://go.yurichev.com/17344}{twitter/tais9}).
\RU{Обложку нарисовал мой хороший знакомый художник Андрей Нечаевский}%
\EN{The cover art was done by my artistic friend, Andy Nechaevsky}%
\ES{El arte de la portada fue hecho por mi art\'istico amigo, Andy Nechaevsky}%
\NL{De cover art is verzorgd door mijn artistieke vriend, Andy Nechaevsky}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}:
\href{http://go.yurichev.com/17023}{facebook/andydinka}.
\RU{Они также имеют права на издании книги на корейском языке.}%
\EN{They also hold the copyright to the Korean translation.}%
\ES{Ellos tambi\'en poseen los derechos de autor de la traducci\'on al coreano.}%
\NL{Zij bezitten ook de auteursrechten voor de Koreaanse vertaling.}%
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}
\RU{Так что если вы хотите иметь \IT{настоящую} книгу на полке на корейском языке и
хотите поддержать мою работу, вы можете купить её.}%
\EN{So, if you want to have a \IT{real} book on your shelf in Korean and
want to support my work, it is now available for purchase.}%
\ES{As\'i que, si quieren tener un libro \IT{real} en coreano en su estante
y quieren apoyar mi trabajo, ya se encuentra disponible a la venta.}%
\NL{Dus, als je een \IT{echt} boek op je kast wil in het Koreaans en je
wil mijn werk steunen, is het nu beschikbaar voor verkoop.}
\PTBRph{}%
\DEph{}\PLph{}%
\ITAph{}