Function at 0x450530
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4d5ffc
mov eax, dword fs:[0]
push eax
push ebx
push esi
push edi
mov eax, dword [0x510620]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [0x51a154]
test al, 1
jne 0x450ff0
or eax, 1
mov dword [0x51a154], eax
push str.utf_8
mov ecx, 0x51a158
mov dword [ebp - 4], 0
call fcn.00405d20
push str.utf_7gb2312
mov ecx, 0x51a170
mov byte [ebp - 4], 1
call fcn.00405d20
push str.IBM037
mov ecx, 0x51a188
mov byte [ebp - 4], 2
call fcn.00405d20
push str.IBM437
mov ecx, 0x51a1a0
mov byte [ebp - 4], 3
call fcn.00405d20
push str.IBM500
mov ecx, 0x51a1b8
mov byte [ebp - 4], 4
call fcn.00405d20
push str.ASMO_708
mov ecx, 0x51a1d0
mov byte [ebp - 4], 5
call fcn.00405d20
push str.DOS_720
mov ecx, 0x51a1e8
mov byte [ebp - 4], 6
call fcn.00405d20
push str.ibm737
mov ecx, 0x51a200
mov byte [ebp - 4], 7
call fcn.00405d20
push str.ibm775
mov ecx, 0x51a218
mov byte [ebp - 4], 8
call fcn.00405d20
push str.ibm850
mov ecx, 0x51a230
mov byte [ebp - 4], 9
call fcn.00405d20
push str.ibm852
mov ecx, 0x51a248
mov byte [ebp - 4], 0xa
call fcn.00405d20
push str.IBM855
mov ecx, 0x51a260
mov byte [ebp - 4], 0xb
call fcn.00405d20
push str.ibm857
mov ecx, 0x51a278
mov byte [ebp - 4], 0xc
call fcn.00405d20
push str.IBM00858
mov ecx, 0x51a290
mov byte [ebp - 4], 0xd
call fcn.00405d20
push str.IBM860
mov ecx, 0x51a2a8
mov byte [ebp - 4], 0xe
call fcn.00405d20
mov byte [ebp - 4], 0xf
mov ecx, 0x51a2c0
push str.ibm861
call fcn.00405d20
push str.DOS_862
mov ecx, 0x51a2d8
mov byte [ebp - 4], 0x10
call fcn.00405d20
push str.IBM863
mov ecx, 0x51a2f0
mov byte [ebp - 4], 0x11
call fcn.00405d20
push str.IBM864
mov ecx, 0x51a308
mov byte [ebp - 4], 0x12
call fcn.00405d20
push str.IBM865
mov ecx, 0x51a320
mov byte [ebp - 4], 0x13
call fcn.00405d20
push str.cp866
mov ecx, 0x51a338
mov byte [ebp - 4], 0x14
call fcn.00405d20
push str.ibm869
mov ecx, 0x51a350
mov byte [ebp - 4], 0x15
call fcn.00405d20
push str.IBM870
mov ecx, 0x51a368
mov byte [ebp - 4], 0x16
call fcn.00405d20
push str.windows_874
mov ecx, 0x51a380
mov byte [ebp - 4], 0x17
call fcn.00405d20
push str.cp875
mov ecx, 0x51a398
mov byte [ebp - 4], 0x18
call fcn.00405d20
push str.shift_jis
mov ecx, 0x51a3b0
mov byte [ebp - 4], 0x19
call fcn.00405d20
push str.ks_c_5601_1987
mov ecx, 0x51a3c8
mov byte [ebp - 4], 0x1a
call fcn.00405d20
push str.big5
mov ecx, 0x51a3e0
mov byte [ebp - 4], 0x1b
call fcn.00405d20
push str.IBM1026
mov ecx, 0x51a3f8
mov byte [ebp - 4], 0x1c
call fcn.00405d20
push str.IBM01047
mov ecx, 0x51a410
mov byte [ebp - 4], 0x1d
call fcn.00405d20
push str.IBM01140
mov ecx, 0x51a428
mov byte [ebp - 4], 0x1e
call fcn.00405d20
push str.IBM01141
mov ecx, 0x51a440
mov byte [ebp - 4], 0x1f
call fcn.00405d20
push str.IBM01142
mov ecx, 0x51a458
mov byte [ebp - 4], 0x20
call fcn.00405d20
push str.IBM01143
mov ecx, 0x51a470
mov byte [ebp - 4], 0x21
call fcn.00405d20
push str.IBM01144
mov ecx, 0x51a488
mov byte [ebp - 4], 0x22
call fcn.00405d20
push str.IBM01145
mov ecx, 0x51a4a0
mov byte [ebp - 4], 0x23
call fcn.00405d20
push str.IBM01146
mov ecx, 0x51a4b8
mov byte [ebp - 4], 0x24
call fcn.00405d20
push str.IBM01147
mov ecx, 0x51a4d0
mov byte [ebp - 4], 0x25
call fcn.00405d20
push str.IBM01148
mov ecx, 0x51a4e8
mov byte [ebp - 4], 0x26
call fcn.00405d20
push str.IBM01149
mov ecx, 0x51a500
mov byte [ebp - 4], 0x27
call fcn.00405d20
push str.utf_16
mov ecx, 0x51a518
mov byte [ebp - 4], 0x28
call fcn.00405d20
push str.unicodeFFFE
mov ecx, 0x51a530
mov byte [ebp - 4], 0x29
call fcn.00405d20
push str.windows_1250
mov ecx, 0x51a548
mov byte [ebp - 4], 0x2a
call fcn.00405d20
push str.windows_1251
mov ecx, 0x51a560
mov byte [ebp - 4], 0x2b
call fcn.00405d20
push str.windows_1252
mov ecx, 0x51a578
mov byte [ebp - 4], 0x2c
call fcn.00405d20
push str.windows_1253
mov ecx, 0x51a590
mov byte [ebp - 4], 0x2d
call fcn.00405d20
push str.windows_1254
mov ecx, 0x51a5a8
mov byte [ebp - 4], 0x2e
call fcn.00405d20
push str.windows_1255
mov ecx, 0x51a5c0
mov byte [ebp - 4], 0x2f
call fcn.00405d20
push str.windows_1256
mov ecx, 0x51a5d8
mov byte [ebp - 4], 0x30
call fcn.00405d20
push str.windows_1257
mov ecx, 0x51a5f0
mov byte [ebp - 4], 0x31
call fcn.00405d20
push str.windows_1258
mov ecx, 0x51a608
mov byte [ebp - 4], 0x32
call fcn.00405d20
push str.Johab
mov ecx, 0x51a620
mov byte [ebp - 4], 0x33
call fcn.00405d20
push str.macintosh
mov ecx, 0x51a638
mov byte [ebp - 4], 0x34
call fcn.00405d20
push str.x_mac_japanese
mov ecx, 0x51a650
mov byte [ebp - 4], 0x35
call fcn.00405d20
push str.x_mac_chinesetrad
mov ecx, 0x51a668
mov byte [ebp - 4], 0x36
call fcn.00405d20
push str.x_mac_korean
mov ecx, 0x51a680
mov byte [ebp - 4], 0x37
call fcn.00405d20
push str.x_mac_arabic
mov ecx, 0x51a698
mov byte [ebp - 4], 0x38
call fcn.00405d20
push str.x_mac_hebrew
mov ecx, 0x51a6b0
mov byte [ebp - 4], 0x39
call fcn.00405d20
push str.x_mac_greek
mov ecx, 0x51a6c8
mov byte [ebp - 4], 0x3a
call fcn.00405d20
push str.x_mac_cyrillic
mov ecx, 0x51a6e0
mov byte [ebp - 4], 0x3b
call fcn.00405d20
push str.x_mac_chinesesimp
mov ecx, 0x51a6f8
mov byte [ebp - 4], 0x3c
call fcn.00405d20
push str.x_mac_romanian
mov ecx, 0x51a710
mov byte [ebp - 4], 0x3d
call fcn.00405d20
push str.x_mac_ukrainian
mov ecx, 0x51a728
mov byte [ebp - 4], 0x3e
call fcn.00405d20
push str.x_mac_thai
mov ecx, 0x51a740
mov byte [ebp - 4], 0x3f
call fcn.00405d20
mov byte [ebp - 4], 0x40
push str.x_mac_ce
mov ecx, 0x51a758
call fcn.00405d20
push str.x_mac_icelandic
mov ecx, 0x51a770
mov byte [ebp - 4], 0x41
call fcn.00405d20
push str.x_mac_turkish
mov ecx, 0x51a788
mov byte [ebp - 4], 0x42
call fcn.00405d20
push str.x_mac_croatian
mov ecx, 0x51a7a0
mov byte [ebp - 4], 0x43
call fcn.00405d20
push str.utf_32
mov ecx, 0x51a7b8
mov byte [ebp - 4], 0x44
call fcn.00405d20
push str.utf_32BE
mov ecx, 0x51a7d0
mov byte [ebp - 4], 0x45
call fcn.00405d20
push str.x_Chinese_CNS
mov ecx, 0x51a7e8
mov byte [ebp - 4], 0x46
call fcn.00405d20
push str.x_cp20001
mov ecx, 0x51a800
mov byte [ebp - 4], 0x47
call fcn.00405d20
push str.x_Chinese_Eten
mov ecx, 0x51a818
mov byte [ebp - 4], 0x48
call fcn.00405d20
push str.x_cp20003
mov ecx, 0x51a830
mov byte [ebp - 4], 0x49
call fcn.00405d20
push str.x_cp20004
mov ecx, 0x51a848
mov byte [ebp - 4], 0x4a
call fcn.00405d20
push str.x_cp20005
mov ecx, 0x51a860
mov byte [ebp - 4], 0x4b
call fcn.00405d20
push str.x_IA5
mov ecx, 0x51a878
mov byte [ebp - 4], 0x4c
call fcn.00405d20
push str.x_IA5_German
mov ecx, 0x51a890
mov byte [ebp - 4], 0x4d
call fcn.00405d20
push str.x_IA5_Swedish
mov ecx, 0x51a8a8
mov byte [ebp - 4], 0x4e
call fcn.00405d20
push str.x_IA5_Norwegian
mov ecx, 0x51a8c0
mov byte [ebp - 4], 0x4f
call fcn.00405d20
mov byte [ebp - 4], 0x50
push str.us_ascii
mov ecx, 0x51a8d8
call fcn.00405d20
push str.x_cp20261
mov ecx, 0x51a8f0
mov byte [ebp - 4], 0x51
call fcn.00405d20
push str.x_cp20269
mov ecx, 0x51a908
mov byte [ebp - 4], 0x52
call fcn.00405d20
push str.IBM273
mov ecx, 0x51a920
mov byte [ebp - 4], 0x53
call fcn.00405d20
push str.IBM277
mov ecx, 0x51a938
mov byte [ebp - 4], 0x54
call fcn.00405d20
push str.IBM278
mov ecx, 0x51a950
mov byte [ebp - 4], 0x55
call fcn.00405d20
push str.IBM280
mov ecx, 0x51a968
mov byte [ebp - 4], 0x56
call fcn.00405d20
push str.IBM284
mov ecx, 0x51a980
mov byte [ebp - 4], 0x57
call fcn.00405d20
push str.IBM285
mov ecx, 0x51a998
mov byte [ebp - 4], 0x58
call fcn.00405d20
push str.IBM290
mov ecx, 0x51a9b0
mov byte [ebp - 4], 0x59
call fcn.00405d20
push str.IBM297
mov ecx, 0x51a9c8
mov byte [ebp - 4], 0x5a
call fcn.00405d20
push str.IBM420
mov ecx, 0x51a9e0
mov byte [ebp - 4], 0x5b
call fcn.00405d20
push str.IBM423
mov ecx, 0x51a9f8
mov byte [ebp - 4], 0x5c
call fcn.00405d20
push str.IBM424
mov ecx, 0x51aa10
mov byte [ebp - 4], 0x5d
call fcn.00405d20
push str.x_EBCDIC_KoreanExtended
mov ecx, 0x51aa28
mov byte [ebp - 4], 0x5e
call fcn.00405d20
push str.IBM_Thai
mov ecx, 0x51aa40
mov byte [ebp - 4], 0x5f
call fcn.00405d20
mov byte [ebp - 4], 0x60
mov ecx, 0x51aa58
push str.koi8_r
call fcn.00405d20
push str.IBM871
mov ecx, 0x51aa70
mov byte [ebp - 4], 0x61
call fcn.00405d20
push str.IBM880
mov ecx, 0x51aa88
mov byte [ebp - 4], 0x62
call fcn.00405d20
push str.IBM905
mov ecx, 0x51aaa0
mov byte [ebp - 4], 0x63
call fcn.00405d20
push str.IBM00924
mov ecx, 0x51aab8
mov byte [ebp - 4], 0x64
call fcn.00405d20
push str.EUC_JP
mov ecx, 0x51aad0
mov byte [ebp - 4], 0x65
call fcn.00405d20
push str.x_cp20936
mov ecx, 0x51aae8
mov byte [ebp - 4], 0x66
call fcn.00405d20
push str.x_cp20949
mov ecx, 0x51ab00
mov byte [ebp - 4], 0x67
call fcn.00405d20
push str.cp1025
mov ecx, 0x51ab18
mov byte [ebp - 4], 0x68
call fcn.00405d20
push str.koi8_u
mov ecx, 0x51ab30
mov byte [ebp - 4], 0x69
call fcn.00405d20
push str.iso_8859_1
mov ecx, 0x51ab48
mov byte [ebp - 4], 0x6a
call fcn.00405d20
push str.iso_8859_2
mov ecx, 0x51ab60
mov byte [ebp - 4], 0x6b
call fcn.00405d20
push str.iso_8859_3
mov ecx, 0x51ab78
mov byte [ebp - 4], 0x6c
call fcn.00405d20
push str.iso_8859_4
mov ecx, 0x51ab90
mov byte [ebp - 4], 0x6d
call fcn.00405d20
push str.iso_8859_5
mov ecx, 0x51aba8
mov byte [ebp - 4], 0x6e
call fcn.00405d20
push str.iso_8859_6
mov ecx, 0x51abc0
mov byte [ebp - 4], 0x6f
call fcn.00405d20
push str.iso_8859_7
mov ecx, 0x51abd8
mov byte [ebp - 4], 0x70
call fcn.00405d20
push str.iso_8859_8
mov ecx, 0x51abf0
mov byte [ebp - 4], 0x71
call fcn.00405d20
push str.iso_8859_9
mov ecx, 0x51ac08
mov byte [ebp - 4], 0x72
call fcn.00405d20
push str.iso_8859_13
mov ecx, 0x51ac20
mov byte [ebp - 4], 0x73
call fcn.00405d20
push str.iso_8859_15
mov ecx, 0x51ac38
mov byte [ebp - 4], 0x74
call fcn.00405d20
push str.x_Europa
mov ecx, 0x51ac50
mov byte [ebp - 4], 0x75
call fcn.00405d20
push str.iso_8859_8_i
mov ecx, 0x51ac68
mov byte [ebp - 4], 0x76
call fcn.00405d20
push str.iso_2022_jp
mov ecx, 0x51ac80
mov byte [ebp - 4], 0x77
call fcn.00405d20
push str.csISO2022JP
mov ecx, 0x51ac98
mov byte [ebp - 4], 0x78
call fcn.00405d20
push str.iso_2022_jp
mov ecx, 0x51acb0
mov byte [ebp - 4], 0x79
call fcn.00405d20
push str.iso_2022_kr
mov ecx, 0x51acc8
mov byte [ebp - 4], 0x7a
call fcn.00405d20
push str.x_cp50227
mov ecx, 0x51ace0
mov byte [ebp - 4], 0x7b
call fcn.00405d20
push str.euc_jp
mov ecx, 0x51acf8
mov byte [ebp - 4], 0x7c
call fcn.00405d20
push str.EUC_CN
mov ecx, 0x51ad10
mov byte [ebp - 4], 0x7d
call fcn.00405d20
push str.euc_kr
mov ecx, 0x51ad28
mov byte [ebp - 4], 0x7e
call fcn.00405d20
push str.hz_gb_2312
mov ecx, 0x51ad40
mov byte [ebp - 4], 0x7f
call fcn.00405d20
push str.GB18030
mov ecx, 0x51ad58
mov byte [ebp - 4], 0x80
call fcn.00405d20
push str.x_iscii_de
mov ecx, 0x51ad70
mov byte [ebp - 4], 0x81
call fcn.00405d20
push str.x_iscii_be
mov ecx, 0x51ad88
mov byte [ebp - 4], 0x82
call fcn.00405d20
push str.x_iscii_ta
mov ecx, 0x51ada0
mov byte [ebp - 4], 0x83
call fcn.00405d20
push str.x_iscii_te
mov ecx, 0x51adb8
mov byte [ebp - 4], 0x84
call fcn.00405d20
push str.x_iscii_as
mov ecx, 0x51add0
mov byte [ebp - 4], 0x85
call fcn.00405d20
push str.x_iscii_or
mov ecx, 0x51ade8
mov byte [ebp - 4], 0x86
call fcn.00405d20
push str.x_iscii_ka
mov ecx, 0x51ae00
mov byte [ebp - 4], 0x87
call fcn.00405d20
push str.x_iscii_ma
mov ecx, 0x51ae18
mov byte [ebp - 4], 0x88
call fcn.00405d20
push str.x_iscii_gu
mov ecx, 0x51ae30
mov byte [ebp - 4], 0x89
call fcn.00405d20
push str.x_iscii_pa
mov ecx, 0x51ae48
mov byte [ebp - 4], 0x8a
call fcn.00405d20
push fcn.00402110
push 0x4020b0
push 0xd
push 0x18
push 0x51ae60
mov byte [ebp - 4], 0x8b
call fcn.00499707
push 0x4dba90
call fcn.004957fd
add esp, 4
mov dword [ebp - 4], 0xffffffff
xor ebx, ebx
mov esi, 0x51a158
cmp dword [edi + 0x14], 8
jb 0x451001
mov eax, dword [edi]
jmp 0x451003
mov eax, edi
push dword [edi + 0x10]
push eax
push dword [esi + 0x10]
push ecx
mov ecx, esi
call fcn.00406e10
test eax, eax
je 0x451039
add esi, 0x18
inc ebx
cmp esi, 0x51af98
jl 0x450ff7
mov eax, 0xfde9
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx*4 + 0x4ec6c8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret