LIEF: Library to Instrument Executable Formats Version 1.0.0
Loading...
Searching...
No Matches
CodePage.hpp
Go to the documentation of this file.
1/* Copyright 2017 - 2026 R. Thomas
2 * Copyright 2017 - 2026 Quarkslab
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16#ifndef LIEF_PE_CODE_PAGE
17#define LIEF_PE_CODE_PAGE
18#include <cstdint>
19#include "LIEF/visibility.h"
20
21namespace LIEF {
22namespace PE {
23
26enum class CODE_PAGES : uint32_t {
27 IBM037 = 37,
28 IBM437 = 437,
29 IBM500 = 500,
30 ASMO_708 = 708,
31 DOS_720 = 720,
32 IBM737 = 737,
33 IBM775 = 775,
34 IBM850 = 850,
35 IBM852 = 852,
36 IBM855 = 855,
37 IBM857 = 857,
38 IBM00858 = 858,
39 IBM860 = 860,
40 IBM861 = 861,
41 DOS_862 = 862,
42 IBM863 = 863,
43 IBM864 = 864,
44 IBM865 = 865,
45 CP866 = 866,
46 IBM869 = 869,
47 IBM870 = 870,
50 874,
51 CP875 = 875,
52 SHIFT_JIS = 932,
53 GB2312 = 936,
56 BIG5 = 950,
58 IBM1026 = 1026,
59 IBM01047 = 1047,
60 IBM01140 = 1140,
62 IBM01141 = 1141,
64 IBM01142 = 1142,
66 IBM01143 = 1143,
69 1144,
70 IBM01145 = 1145,
72 IBM01146 = 1146,
74 IBM01147 = 1147,
76 IBM01148 = 1148,
78 IBM01149 = 1149,
80 UTF_16 = 1200,
82 UNICODEFFFE = 1201,
84 WINDOWS_1250 = 1250,
85 WINDOWS_1251 = 1251,
86 WINDOWS_1252 = 1252,
87 WINDOWS_1253 = 1253,
88 WINDOWS_1254 = 1254,
89 WINDOWS_1255 = 1255,
90 WINDOWS_1256 = 1256,
91 WINDOWS_1257 = 1257,
92 WINDOWS_1258 = 1258,
93 JOHAB = 1361,
94 MACINTOSH = 10000,
97 10002,
98 X_MAC_KOREAN = 10003,
99 X_MAC_ARABIC = 10004,
100 X_MAC_HEBREW = 10005,
101 X_MAC_GREEK = 10006,
104 10008,
107 X_MAC_THAI = 10021,
108 X_MAC_CE = 10029,
112 UTF_32 = 12000,
114 UTF_32BE = 12001,
117 X_CP20001 = 20001,
119 X_CP20003 = 20003,
120 X_CP20004 = 20004,
121 X_CP20005 = 20005,
122 X_IA5 = 20105,
124 X_IA5_GERMAN = 20106,
127 US_ASCII = 20127,
128 X_CP20261 = 20261,
129 X_CP20269 = 20269,
130 IBM273 = 20273,
131 IBM277 = 20277,
132 IBM278 = 20278,
133 IBM280 = 20280,
134 IBM284 = 20284,
135 IBM285 = 20285,
136 IBM290 = 20290,
137 IBM297 = 20297,
138 IBM420 = 20420,
139 IBM423 = 20423,
140 IBM424 = 20424,
142 IBM_THAI = 20838,
143 KOI8_R = 20866,
144 IBM871 = 20871,
145 IBM880 = 20880,
146 IBM905 = 20905,
147 IBM00924 = 20924,
148 EUC_JP_JIS = 20932,
150 20936,
151 X_CP20949 = 20949,
152 CP1025 = 21025,
153 KOI8_U = 21866,
154 ISO_8859_1 = 28591,
155 ISO_8859_2 = 28592,
156 ISO_8859_3 = 28593,
157 ISO_8859_4 = 28594,
158 ISO_8859_5 = 28595,
159 ISO_8859_6 = 28596,
160 ISO_8859_7 = 28597,
161 ISO_8859_8 = 28598,
162 ISO_8859_9 = 28599,
163 ISO_8859_13 = 28603,
164 ISO_8859_15 = 28605,
165 X_EUROPA = 29001,
166 ISO_8859_8_I = 38598,
168 50220,
169 CSISO2022JP = 50221,
173 ISO_2022_KR = 50225,
175 50227,
176 EUC_JP = 51932,
177 EUC_CN = 51936,
178 EUC_KR = 51949,
179 HZ_GB_2312 = 52936,
180 GB18030 = 54936,
182 X_ISCII_DE = 57002,
183 X_ISCII_BE = 57003,
184 X_ISCII_TA = 57004,
185 X_ISCII_TE = 57005,
186 X_ISCII_AS = 57006,
187 X_ISCII_OR = 57007,
188 X_ISCII_KA = 57008,
189 X_ISCII_MA = 57009,
190 X_ISCII_GU = 57010,
191 X_ISCII_PA = 57011,
192 UTF_7 = 65000,
193 UTF_8 = 65001,
194};
195
197
198}
199}
200#endif
Namespace related to the LIEF's PE module.
Definition Abstract/Header.hpp:32
CODE_PAGES
Code page from https://docs.microsoft.com/en-us/windows/win32/intl/code-page-identifiers.
Definition CodePage.hpp:26
@ SHIFT_JIS
Definition CodePage.hpp:52
@ X_CP50227
Definition CodePage.hpp:174
@ IBM01140
Definition CodePage.hpp:60
@ ISO_8859_8
Definition CodePage.hpp:161
@ EUC_KR
Definition CodePage.hpp:178
@ IBM280
Definition CodePage.hpp:133
@ X_IA5
Definition CodePage.hpp:122
@ MACINTOSH
Definition CodePage.hpp:94
@ ISO_8859_2
Definition CodePage.hpp:155
@ X_MAC_KOREAN
Definition CodePage.hpp:98
@ X_CP20003
Definition CodePage.hpp:119
@ ISO_8859_7
Definition CodePage.hpp:160
@ X_CP20936
Definition CodePage.hpp:149
@ DOS_720
Definition CodePage.hpp:31
@ WINDOWS_1256
Definition CodePage.hpp:90
@ X_MAC_ROMANIAN
Definition CodePage.hpp:105
@ X_MAC_JAPANESE
Definition CodePage.hpp:95
@ IBM284
Definition CodePage.hpp:134
@ X_MAC_GREEK
Definition CodePage.hpp:101
@ WINDOWS_1253
Definition CodePage.hpp:87
@ IBM00858
Definition CodePage.hpp:38
@ CSISO2022JP
Definition CodePage.hpp:169
@ IBM1026
Definition CodePage.hpp:58
@ GB2312
Definition CodePage.hpp:53
@ KOI8_R
Definition CodePage.hpp:143
@ HZ_GB_2312
Definition CodePage.hpp:179
@ X_MAC_CE
Definition CodePage.hpp:108
@ CP875
Definition CodePage.hpp:51
@ IBM737
Definition CodePage.hpp:32
@ X_ISCII_PA
Definition CodePage.hpp:191
@ EUC_JP_JIS
Definition CodePage.hpp:148
@ WINDOWS_1257
Definition CodePage.hpp:91
@ EUC_JP
Definition CodePage.hpp:176
@ UTF_32BE
Definition CodePage.hpp:114
@ X_MAC_CYRILLIC
Definition CodePage.hpp:102
@ ISO_8859_9
Definition CodePage.hpp:162
@ GB18030
Definition CodePage.hpp:180
@ IBM01142
Definition CodePage.hpp:64
@ X_ISCII_DE
Definition CodePage.hpp:182
@ IBM864
Definition CodePage.hpp:43
@ WINDOWS_1254
Definition CodePage.hpp:88
@ US_ASCII
Definition CodePage.hpp:127
@ KOI8_U
Definition CodePage.hpp:153
@ X_MAC_THAI
Definition CodePage.hpp:107
@ IBM037
Definition CodePage.hpp:27
@ IBM860
Definition CodePage.hpp:39
@ IBM863
Definition CodePage.hpp:42
@ ISO_2022_JP_JIS
Definition CodePage.hpp:171
@ IBM865
Definition CodePage.hpp:44
@ IBM278
Definition CodePage.hpp:132
@ EUC_CN
Definition CodePage.hpp:177
@ ISO_8859_15
Definition CodePage.hpp:164
@ IBM290
Definition CodePage.hpp:136
@ IBM424
Definition CodePage.hpp:140
@ X_MAC_CHINESETRAD
Definition CodePage.hpp:96
@ X_MAC_CHINESESIMP
Definition CodePage.hpp:103
@ WINDOWS_1252
Definition CodePage.hpp:86
@ IBM871
Definition CodePage.hpp:144
@ BIG5
Definition CodePage.hpp:56
@ X_CP20004
Definition CodePage.hpp:120
@ IBM01147
Definition CodePage.hpp:74
@ X_EBCDIC_KOREANEXTENDED
Definition CodePage.hpp:141
@ ISO_2022_KR
Definition CodePage.hpp:173
@ ISO_8859_1
Definition CodePage.hpp:154
@ IBM423
Definition CodePage.hpp:139
@ ASMO_708
Definition CodePage.hpp:30
@ JOHAB
Definition CodePage.hpp:93
@ IBM869
Definition CodePage.hpp:46
@ IBM852
Definition CodePage.hpp:35
@ KS_C_5601_1987
Definition CodePage.hpp:55
@ UTF_16
Definition CodePage.hpp:80
@ X_ISCII_AS
Definition CodePage.hpp:186
@ X_MAC_HEBREW
Definition CodePage.hpp:100
@ IBM861
Definition CodePage.hpp:40
@ X_MAC_ICELANDIC
Definition CodePage.hpp:109
@ X_MAC_TURKISH
Definition CodePage.hpp:110
@ IBM01145
Definition CodePage.hpp:70
@ IBM01047
Definition CodePage.hpp:59
@ IBM420
Definition CodePage.hpp:138
@ IBM285
Definition CodePage.hpp:135
@ X_MAC_UKRAINIAN
Definition CodePage.hpp:106
@ X_CP20269
Definition CodePage.hpp:129
@ UTF_32
Definition CodePage.hpp:112
@ X_CHINESE_ETEN
Definition CodePage.hpp:118
@ X_CP20949
Definition CodePage.hpp:151
@ IBM870
Definition CodePage.hpp:47
@ X_CHINESE_CNS
Definition CodePage.hpp:116
@ X_ISCII_GU
Definition CodePage.hpp:190
@ WINDOWS_1255
Definition CodePage.hpp:89
@ IBM880
Definition CodePage.hpp:145
@ ISO_8859_4
Definition CodePage.hpp:157
@ IBM01141
Definition CodePage.hpp:62
@ X_ISCII_TE
Definition CodePage.hpp:185
@ IBM855
Definition CodePage.hpp:36
@ WINDOWS_1250
Definition CodePage.hpp:84
@ X_ISCII_MA
Definition CodePage.hpp:189
@ IBM_THAI
Definition CodePage.hpp:142
@ ISO_8859_3
Definition CodePage.hpp:156
@ ISO_8859_8_I
Definition CodePage.hpp:166
@ ISO_2022_JP
Definition CodePage.hpp:167
@ X_ISCII_KA
Definition CodePage.hpp:188
@ CP866
Definition CodePage.hpp:45
@ IBM01146
Definition CodePage.hpp:72
@ X_CP20005
Definition CodePage.hpp:121
@ X_MAC_CROATIAN
Definition CodePage.hpp:111
@ X_IA5_NORWEGIAN
Definition CodePage.hpp:126
@ IBM500
Definition CodePage.hpp:29
@ IBM277
Definition CodePage.hpp:131
@ X_CP20261
Definition CodePage.hpp:128
@ DOS_862
Definition CodePage.hpp:41
@ UNICODEFFFE
Definition CodePage.hpp:82
@ IBM905
Definition CodePage.hpp:146
@ UTF_7
Definition CodePage.hpp:192
@ IBM437
Definition CodePage.hpp:28
@ X_IA5_GERMAN
Definition CodePage.hpp:124
@ X_ISCII_BE
Definition CodePage.hpp:183
@ IBM775
Definition CodePage.hpp:33
@ IBM297
Definition CodePage.hpp:137
@ IBM01149
Definition CodePage.hpp:78
@ UTF_8
Definition CodePage.hpp:193
@ IBM01143
Definition CodePage.hpp:66
@ X_ISCII_TA
Definition CodePage.hpp:184
@ X_MAC_ARABIC
Definition CodePage.hpp:99
@ IBM01148
Definition CodePage.hpp:76
@ IBM273
Definition CodePage.hpp:130
@ IBM857
Definition CodePage.hpp:37
@ ISO_8859_6
Definition CodePage.hpp:159
@ X_ISCII_OR
Definition CodePage.hpp:187
@ X_CP20001
Definition CodePage.hpp:117
@ IBM00924
Definition CodePage.hpp:147
@ X_EUROPA
Definition CodePage.hpp:165
@ WINDOWS_1251
Definition CodePage.hpp:85
@ ISO_8859_5
Definition CodePage.hpp:158
@ IBM01144
Definition CodePage.hpp:68
@ X_IA5_SWEDISH
Definition CodePage.hpp:125
@ WINDOWS_874
Definition CodePage.hpp:49
@ CP1025
Definition CodePage.hpp:152
@ ISO_8859_13
Definition CodePage.hpp:163
@ IBM850
Definition CodePage.hpp:34
@ WINDOWS_1258
Definition CodePage.hpp:92
const char * to_string(CODE_PAGES e)
LIEF namespace.
Definition Abstract/Binary.hpp:40
#define LIEF_API
Definition visibility.h:43