Function at 0x433cf0
Capabilities:
Authenticate hmac
Encode data using xor
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push eax
mov esi, dword [ebp + 0x14]
mov eax, dword [0x458b4c]
test eax, eax
jne 0x435972
movzx eax, byte [0x451560]
xor al, 0x35
mov byte [0x451630], al
movzx eax, byte [0x451561]
mov ecx, eax
add cl, al
and cl, 0xe8
sub al, cl
add al, 0xf4
mov ecx, 0x4042147d
xor ecx, dword [str.M_rr]
mov byte [0x451631], al
mov dword [0x451632], ecx
movzx eax, byte [0x451566]
xor al, 0x2d
mov byte [0x451636], al
movzx eax, byte [0x451567]
xor al, 0xfa
mov byte [0x451637], al
movzx eax, byte [0x451568]
xor al, 0xf2
mov byte [0x451638], al
movzx eax, byte [0x451569]
mov ecx, eax
add cl, al
and cl, 0x4c
sub al, cl
add al, 0x26
mov byte [0x451639], al
movzx eax, byte [0x45156a]
xor al, 0x39
mov byte [0x45163a], al
movzx eax, byte [0x45156b]
mov ecx, eax
add cl, al
and cl, 0xb8
sub al, cl
add al, 0xdc
mov byte [0x45163b], al
movsd xmm0, qword [0x45156c]
xorps xmm0, xmmword [0x4466e0]
movlps qword [0x45163c], xmm0
movzx eax, byte [0x451574]
mov ecx, eax
add cl, al
and cl, 0x46
sub al, cl
add al, 0xa3
mov byte [0x451644], al
movzx eax, byte [0x451575]
mov ecx, eax
add cl, al
and cl, 0x94
sub al, cl
add al, 0xca
mov byte [0x451645], al
movzx eax, byte [0x451576]
xor al, 0xaa
mov byte [0x451646], al
movzx eax, byte [0x451577]
xor al, 0xb6
mov byte [0x451647], al
movzx eax, byte [0x451578]
xor al, 0xf2
mov byte [0x451648], al
movzx eax, byte [0x451579]
mov ecx, eax
not cl
or al, 0x6c
or cl, 0x93
and cl, al
not cl
mov byte [0x451649], cl
movzx eax, byte [0x45157a]
xor al, 0x81
mov byte [0x45164a], al
movzx eax, byte [0x45157b]
xor al, 0xf2
mov byte [0x45164b], al
movzx eax, byte [0x45157c]
xor al, 0x1a
mov byte [0x45164c], al
movzx eax, byte [0x45157d]
mov ecx, eax
not cl
or al, 0xcf
or cl, 0x30
and cl, al
not cl
mov byte [0x45164d], cl
mov eax, 0x4acd83d2
xor eax, dword [0x45157e]
mov dword [0x45164e], eax
movzx eax, byte [0x451582]
xor al, 0xa5
mov byte [0x451652], al
movzx eax, byte [0x451583]
xor al, 0x8b
mov byte [0x451653], al
movzx eax, byte [0x451584]
mov ecx, eax
add cl, al
and cl, 0xb4
sub al, cl
add al, 0xda
mov byte [0x451654], al
mov eax, 0xe09210b3
xor eax, dword [0x451585]
mov dword [0x451655], eax
movzx eax, byte [0x451589]
xor al, 0xef
mov byte [0x451659], al
movzx eax, byte [str.aUWx1pvHH]
xor al, 0xfb
mov byte [0x45165a], al
movzx eax, byte [0x45158b]
xor al, 0xb4
mov byte [0x45165b], al
movzx eax, byte [0x45158c]
mov ecx, eax
add cl, al
and cl, 0xa6
sub al, cl
add al, 0x53
mov byte [0x45165c], al
mov eax, 0x34b6567
xor eax, dword [0x45158d]
mov dword [0x45165d], eax
movzx eax, byte [0x451591]
mov ecx, eax
add cl, al
and cl, 0x88
sub al, cl
add al, 0x44
mov byte [0x451661], al
movzx eax, byte [0x451592]
mov ecx, eax
add cl, al
and cl, 0x88
sub al, cl
add al, 0x44
mov byte [0x451662], al
mov eax, 0x14cc7a7d
xor eax, dword [0x451593]
mov dword [0x451663], eax
movzx eax, byte [0x451597]
xor al, 0x5a
mov byte [0x451667], al
movzx eax, byte [0x451598]
xor al, 0x95
mov byte [0x451668], al
movzx eax, byte [0x451599]
mov ecx, eax
add cl, al
and cl, 0xb4
sub al, cl
add al, 0x5a
mov byte [0x451669], al
movsd xmm0, qword [0x45159a]
xorps xmm0, xmmword [0x4466f0]
movlps qword [0x45166a], xmm0
mov eax, 0x68d839a9
xor eax, dword [0x4515a2]
mov dword [0x451672], eax
movzx eax, byte [0x4515a6]
mov ecx, eax
add cl, al
and cl, 0x76
sub al, cl
add al, 0xbb
mov byte [0x451676], al
mov eax, 0x38d25ecc
xor eax, dword [0x4515a7]
mov dword [0x451677], eax
movzx eax, byte [0x4515ab]
xor al, 0x45
mov byte [0x45167b], al
movzx eax, byte [0x4515ac]
mov ecx, eax
add cl, al
and cl, 0x1c
sub al, cl
add al, 0x8e
mov byte [0x45167c], al
movzx eax, byte [0x4515ad]
mov ecx, eax
add cl, al
and cl, 0xba
sub al, cl
add al, 0x5d
mov byte [0x45167d], al
mov eax, 0xe88f87f7
xor eax, dword [0x4515ae]
mov dword [0x45167e], eax
movzx eax, byte [0x4515b2]
xor al, 0x4d
mov byte [0x451682], al
movzx eax, byte [0x4515b3]
xor al, 0xd7
mov byte [0x451683], al
movzx eax, byte [0x4515b4]
mov ecx, eax
add cl, al
and cl, 0x4a
sub al, cl
add al, 0x25
mov byte [0x451684], al
mov eax, 0x9728f712
xor eax, dword [0x4515b5]
mov dword [0x451685], eax
movzx eax, byte [0x4515b9]
xor al, 0xb1
mov byte [0x451689], al
movzx eax, byte [0x4515ba]
xor al, 0x45
mov byte [0x45168a], al
movzx eax, byte [0x4515bb]
xor al, 0xb3
mov byte [0x45168b], al
movzx eax, byte [0x4515bc]
mov ecx, eax
add cl, al
and cl, 0xfa
sub al, cl
add al, 0xfd
mov byte [0x45168c], al
movsd xmm0, qword [0x4515bd]
xorps xmm0, xmmword [0x446700]
movlps qword [0x45168d], xmm0
movzx eax, byte [0x4515c5]
xor al, 0x12
mov byte [0x451695], al
movzx eax, byte [0x4515c6]
mov ecx, eax
add cl, al
and cl, 0x18
sub al, cl
add al, 0x8c
mov byte [0x451696], al
movzx eax, byte [0x4515c7]
xor al, 0x86
mov byte [0x451697], al
movzx eax, byte [0x4515c8]
mov byte [0x451698], al
movzx eax, byte [0x4515c9]
mov ecx, eax
add cl, al
and cl, 0x46
sub al, cl
add al, 0x23
mov byte [0x451699], al
movsd xmm0, qword [0x4515ca]
xorps xmm0, xmmword [0x446710]
movlps qword [0x45169a], xmm0
movzx eax, byte [0x4515d2]
xor al, 0x8f
mov byte [0x4516a2], al
movzx eax, byte [0x4515d3]
xor al, 0x1e
mov byte [0x4516a3], al
movzx eax, byte [0x4515d4]
xor al, 0x72
mov byte [0x4516a4], al
movzx eax, byte [0x4515d5]
mov ecx, eax
add cl, al
and cl, 0xb6
sub al, cl
add al, 0xdb
mov byte [0x4516a5], al
movzx eax, byte [0x4515d6]
xor al, 0x18
mov byte [0x4516a6], al
movzx eax, byte [0x4515d7]
mov ecx, eax
not cl
or cl, 0x54
or al, 0xab
and al, cl
mov byte [0x4516a7], al
movups xmm0, xmmword [0x4515d8]
xorps xmm0, xmmword [0x446720]
movups xmmword [0x4516a8], xmm0
movzx eax, byte [0x4515e8]
xor al, 0x8c
mov byte [0x4516b8], al
movzx eax, byte [0x4515e9]
xor al, 0xa1
mov byte [0x4516b9], al
movzx eax, byte [0x4515ea]
mov ecx, eax
add cl, al
and cl, 0x5e
sub al, cl
add al, 0x2f
mov ecx, 0xeb2ddf7b
xor ecx, dword [0x4515eb]
mov byte [0x4516ba], al
mov dword [0x4516bb], ecx
movzx eax, byte [0x4515ef]
xor al, 6
mov byte [0x4516bf], al
movzx eax, byte [0x4515f0]
xor al, 0x69
mov byte [0x4516c0], al
movzx eax, byte [0x4515f1]
xor al, 0x1c
mov byte [0x4516c1], al
movzx eax, byte [0x4515f2]
mov ecx, eax
add cl, al
and cl, 0xb2
sub al, cl
add al, 0xd9
mov byte [0x4516c2], al
movzx eax, byte [0x4515f3]
xor al, 0xe3
mov byte [0x4516c3], al
movzx eax, byte [0x4515f4]
mov ecx, eax
add cl, al
and cl, 0xa0
sub al, cl
add al, 0x50
mov byte [0x4516c4], al
movzx eax, byte [0x4515f5]
mov ecx, eax
not cl
or cl, 0xbb
or al, 0x44
and al, cl
mov byte [0x4516c5], al
movzx eax, byte [0x4515f6]
xor al, 0xd0
mov byte [0x4516c6], al
movzx eax, byte [0x4515f7]
xor al, 0x95
mov byte [0x4516c7], al
movzx eax, byte [0x4515f8]
mov ecx, eax
not cl
or cl, 0xcc
or al, 0x33
and al, cl
mov byte [0x4516c8], al
movzx eax, byte [0x4515f9]
mov ecx, eax
add cl, al
and cl, 0x1a
sub al, cl
add al, 0x8d
mov byte [0x4516c9], al
movsd xmm0, qword [0x4515fa]
xorps xmm0, xmmword [0x446730]
movlps qword [0x4516ca], xmm0
mov eax, 0x1f290fe6
xor eax, dword [0x451602]
mov dword [0x4516d2], eax
movzx eax, byte [0x451606]
xor al, 0xb2
mov byte [0x4516d6], al
movzx eax, byte [0x451607]
xor al, 0xa4
mov byte [0x4516d7], al
movzx eax, byte [0x451608]
mov ecx, eax
add cl, al
and cl, 0x8a
sub al, cl
add al, 0x45
mov byte [0x4516d8], al
movzx eax, byte [0x451609]
mov ecx, eax
add cl, al
and cl, 0x84
sub al, cl
add al, 0xc2
mov byte [0x4516d9], al
mov eax, 0x4bb491f3
xor eax, dword [0x45160a]
mov dword [0x4516da], eax
movzx eax, byte [0x45160e]
mov ecx, eax
add cl, al
and cl, 0xf6
sub al, cl
add al, 0x7b
mov byte [0x4516de], al
movzx eax, byte [0x45160f]
xor al, 0xac
mov byte [0x4516df], al
movzx eax, byte [0x451610]
xor al, 0x28
mov byte [0x4516e0], al
movzx eax, byte [0x451611]
xor al, 0xce
mov byte [0x4516e1], al
movzx eax, byte [0x451612]
mov ecx, eax
add cl, al
and cl, 0x8e
sub al, cl
add al, 0xc7
movsd xmm0, qword [0x451613]
xorps xmm0, xmmword [0x446740]
mov byte [0x4516e2], al
mov eax, 0x8ccb6b0e
xor eax, dword [0x45161b]
movlps qword [0x4516e3], xmm0
mov dword [0x4516eb], eax
movzx eax, byte [0x45161f]
mov ecx, eax
not cl
or cl, 0x3e
or al, 0xc1
and al, cl
mov byte [0x4516ef], al
movaps xmm0, xmmword [0x451620]
xorps xmm0, xmmword [0x446750]
movss dword [0x4516f0], xmm0
movzx eax, byte [0x451624]
mov ecx, eax
add cl, al
and cl, 0x64
sub al, cl
add al, 0x32
mov byte [0x4516f4], al
movzx eax, byte [0x451625]
xor al, 0x37
mov byte [0x4516f5], al
movzx eax, byte [0x451626]
xor al, 0x4c
mov byte [0x4516f6], al
movzx eax, byte [0x451627]
xor al, 0x71
mov byte [0x4516f7], al
movzx eax, byte [0x451628]
mov ecx, eax
add cl, al
and cl, 0xf8
sub al, cl
add al, 0xfc
mov byte [0x4516f8], al
movaps xmm0, xmmword [0x451700]
xorps xmm0, xmmword [0x446760]
movss dword [0x451910], xmm0
movzx eax, byte [0x451704]
mov byte [0x451914], al
movzx eax, byte [0x451705]
mov ecx, eax
add cl, al
and cl, 0xd8
sub al, cl
add al, 0xec
mov byte [0x451915], al
movzx eax, byte [0x451706]
xor al, 0x63
mov byte [0x451916], al
movzx eax, byte [0x451707]
xor al, 0xe4
mov byte [0x451917], al
movzx eax, byte [0x451708]
xor al, 0xf0
mov byte [0x451918], al
movzx eax, byte [0x451709]
mov ecx, eax
add cl, al
and cl, 0x3a
sub al, cl
add al, 0x9d
mov byte [0x451919], al
movzx eax, byte [0x45170a]
mov ecx, eax
not cl
or al, 0xe4
or cl, 0x1b
and cl, al
not cl
mov byte [0x45191a], cl
mov eax, 0x1e225623
xor eax, dword [0x45170b]
mov dword [0x45191b], eax
movzx eax, byte [0x45170f]
xor al, 2
mov byte [0x45191f], al
movzx eax, byte [0x451710]
xor al, 0x90
mov byte [0x451920], al
movzx eax, byte [0x451711]
xor al, 0xd6
mov byte [0x451921], al
movzx eax, byte [0x451712]
mov ecx, eax
add cl, al
and cl, 0xee
sub al, cl
add al, 0x77
mov byte [0x451922], al
movzx eax, byte [0x451713]
mov ecx, eax
add cl, al
and cl, 0x10
sub al, cl
add al, 0x88
mov byte [0x451923], al
mov eax, 0x2c8d458d
xor eax, dword [0x451714]
mov dword [0x451924], eax
movzx eax, byte [0x451718]
mov ecx, eax
not cl
or al, 0xec
or cl, 0x13
and cl, al
not cl
mov byte [0x451928], cl
mov eax, 0x935b7d2b
xor eax, dword [0x451719]
mov dword [0x451929], eax
movzx eax, byte [0x45171d]
xor al, 0x61
mov byte [0x45192d], al
movzx eax, byte [0x45171e]
xor al, 0x5b
mov byte [0x45192e], al
movzx eax, byte [0x45171f]
mov ecx, eax
add cl, al
and cl, 0xf8
sub al, cl
add al, 0xfc
mov byte [0x45192f], al
movsd xmm0, qword [0x451720]
xorps xmm0, xmmword [0x446770]
movlps qword [0x451930], xmm0
movzx eax, byte [0x451728]
xor al, 0x7c
mov byte [0x451938], al
movzx eax, byte [0x451729]
xor al, 0xc6
mov byte [0x451939], al
movzx eax, byte [0x45172a]
mov ecx, eax
add cl, al
and cl, 0xde
sub al, cl
add al, 0x6f
mov ecx, 0xb8b23f26
xor ecx, dword [0x45172b]
mov byte [0x45193a], al
mov dword [0x45193b], ecx
movzx eax, byte [0x45172f]
mov ecx, eax
not cl
or al, 0x78
or cl, 0x87
and cl, al
not cl
mov byte [0x45193f], cl
movzx eax, byte [0x451730]
mov ecx, eax
add cl, al
and cl, 0xbe
sub al, cl
add al, 0xdf
mov byte [0x451940], al
movzx eax, byte [0x451731]
xor al, 0x3c
mov byte [0x451941], al
movzx eax, byte [0x451732]
xor al, 0xd5
mov byte [0x451942], al
movzx eax, byte [0x451733]
mov ecx, eax
add cl, al
and cl, 0x1e
sub al, cl
add al, 0xf
mov byte [0x451943], al
movzx eax, byte [0x451734]
xor al, 0x44
mov byte [0x451944], al
movzx eax, byte [0x451735]
xor al, 0xed
mov byte [str.A_], al
movzx eax, byte [0x451736]
xor al, 0x23
mov byte [0x451946], al
movzx eax, byte [0x451737]
mov ecx, eax
add cl, al
and cl, 0xb6
sub al, cl
add al, 0x5b
mov byte [0x451947], al
movzx eax, byte [0x451738]
mov ecx, eax
add cl, al
and cl, 0x4e
sub al, cl
add al, 0x27
mov byte [0x451948], al
movzx eax, byte [0x451739]
xor al, 0xcb
mov byte [0x451949], al
movzx eax, byte [0x45173a]
xor al, 0x13
mov byte [0x45194a], al
movzx eax, byte [0x45173b]
xor al, 0x56
mov byte [0x45194b], al
movzx eax, byte [0x45173c]
mov ecx, eax
add cl, al
and cl, 0xd6
sub al, cl
add al, 0x6b
mov byte [0x45194c], al
mov eax, 0x3bf7ec43
xor eax, dword [0x45173d]
mov dword [0x45194d], eax
movzx eax, byte [0x451741]
xor al, 0x24
mov byte [0x451951], al
movzx eax, byte [str.__]
xor al, 0x4c
mov byte [0x451952], al
movzx eax, byte [0x451743]
mov ecx, eax
add cl, al
and cl, 0x98
sub al, cl
add al, 0x4c
movsd xmm0, qword [0x451744]
xorps xmm0, xmmword [0x446780]
mov byte [0x451953], al
mov eax, 0xb75bd6d5
xor eax, dword [0x45174c]
movlps qword [0x451954], xmm0
mov dword [0x45195c], eax
movzx eax, byte [0x451750]
xor al, 0x4e
mov byte [0x451960], al
movzx eax, byte [0x451751]
mov ecx, eax
not cl
or al, 0x5e
or cl, 0xa1
and cl, al
not cl
mov byte [0x451961], cl
mov eax, 0x239d789b
xor eax, dword [0x451752]
mov dword [0x451962], eax
movzx eax, byte [0x451756]
xor al, 0xaf
mov byte [0x451966], al
movzx eax, byte [0x451757]
mov ecx, eax
add cl, al
and cl, 8
sub al, cl
add al, 4
mov byte [0x451967], al
movzx eax, byte [0x451758]
xor al, 0x33
mov byte [0x451968], al
movzx eax, byte [0x451759]
mov ecx, eax
add cl, al
and cl, 0xec
sub al, cl
add al, 0x76
mov byte [0x451969], al
movsd xmm0, qword [0x45175a]
xorps xmm0, xmmword [0x446790]
movlps qword [0x45196a], xmm0
movzx eax, byte [0x451762]
xor al, 8
mov byte [0x451972], al
movzx eax, byte [0x451763]
xor al, 0xac
mov byte [0x451973], al
movzx eax, byte [0x451764]
xor al, 0x5b
mov byte [0x451974], al
movzx eax, byte [0x451765]
mov ecx, eax
not cl
or al, 0x65
or cl, 0x9a
and cl, al
not cl
mov byte [0x451975], cl
movzx eax, byte [0x451766]
xor al, 0xfe
mov byte [0x451976], al
movzx eax, byte [0x451767]
xor al, 0x3f
mov byte [0x451977], al
movzx eax, byte [0x451768]
mov ecx, eax
add cl, al
and cl, 0x56
sub al, cl
add al, 0xab
mov byte [0x451978], al
movzx eax, byte [0x451769]
mov ecx, eax
add cl, al
and cl, 0xca
sub al, cl
add al, 0x65
mov byte [0x451979], al
movzx eax, byte [0x45176a]
xor al, 0xeb
mov byte [0x45197a], al
movzx eax, byte [0x45176b]
xor al, 0x4a
mov byte [0x45197b], al
movzx eax, byte [0x45176c]
mov ecx, eax
not cl
or al, 0x2f
or cl, 0xd0
and cl, al
not cl
mov byte [0x45197c], cl
movzx eax, byte [0x45176d]
xor al, 0xef
mov byte [0x45197d], al
movzx eax, byte [0x45176e]
xor al, 0x8e
mov byte [0x45197e], al
movzx eax, byte [0x45176f]
mov ecx, eax
add cl, al
and cl, 0x1e
sub al, cl
add al, 0x8f
mov byte [0x45197f], al
movzx eax, byte [0x451770]
xor al, 0x99
mov byte [0x451980], al
movzx eax, byte [str._b_8.]
xor al, 0x30
mov byte [0x451981], al
movzx eax, byte [0x451772]
xor al, 0xf5
mov byte [0x451982], al
movzx eax, byte [0x451773]
mov ecx, eax
add cl, al
and cl, 0x42
sub al, cl
add al, 0xa1
mov byte [0x451983], al
movzx eax, byte [0x451774]
mov ecx, eax
add cl, al
and cl, 0xe6
sub al, cl
add al, 0x73
mov byte [0x451984], al
movzx eax, byte [0x451775]
mov ecx, eax
add cl, al
and cl, 0xf2
sub al, cl
add al, 0x79
mov byte [0x451985], al
mov eax, 0xef3af71d
xor eax, dword [0x451776]
mov dword [0x451986], eax
movzx eax, byte [str.f_t_a]
xor al, 0x55
mov byte [0x45198a], al
movzx eax, byte [0x45177b]
mov ecx, eax
add cl, al
and cl, 0x54
sub al, cl
add al, 0xaa
mov byte [0x45198b], al
mov eax, 0x413ae8b6
xor eax, dword [0x45177c]
mov dword [0x45198c], eax
movzx eax, byte [0x451780]
xor al, 0xbf
mov byte [0x451990], al
movzx eax, byte [0x451781]
mov ecx, eax
add cl, al
and cl, 0xd0
sub al, cl
add al, 0xe8
mov byte [0x451991], al
movzx eax, byte [0x451782]
mov ecx, eax
add cl, al
and cl, 0x5a
sub al, cl
add al, 0xad
movsd xmm0, qword [0x451783]
xorps xmm0, xmmword [0x4467a0]
mov byte [0x451992], al
movlps qword [0x451993], xmm0
movzx eax, byte [0x45178b]
mov ecx, eax
add cl, al
and cl, 0x7a
sub al, cl
add al, 0x3d
mov byte [0x45199b], al
movzx eax, byte [0x45178c]
xor al, 0x85
mov byte [0x45199c], al
movzx eax, byte [0x45178d]
xor al, 0x85
mov byte [0x45199d], al
movzx eax, byte [0x45178e]
mov ecx, eax
add cl, al
and cl, 0xde
sub al, cl
add al, 0xef
mov byte [0x45199e], al
movzx eax, byte [0x45178f]
xor al, 0x4b
mov byte [0x45199f], al
movzx eax, byte [0x451790]
xor al, 0xa
mov byte [0x4519a0], al
movzx eax, byte [0x451791]
xor al, 0x23
mov byte [0x4519a1], al
movzx eax, byte [0x451792]
mov ecx, eax
add cl, al
and cl, 0x56
sub al, cl
add al, 0xab
mov byte [0x4519a2], al
movzx eax, byte [0x451793]
xor al, 0x8e
mov byte [0x4519a3], al
movzx eax, byte [0x451794]
xor al, 0x27
mov byte [0x4519a4], al
movzx eax, byte [0x451795]
mov ecx, eax
add cl, al
and cl, 0x92
sub al, cl
add al, 0xc9
mov byte [0x4519a5], al
movzx eax, byte [0x451796]
mov ecx, eax
add cl, al
and cl, 0xee
sub al, cl
add al, 0x77
mov byte [str.OK_w_b], al
movzx eax, byte [0x451797]
xor al, 0xc8
mov byte [0x4519a7], al
movzx eax, byte [0x451798]
mov ecx, eax
not cl
or cl, 0x84
or al, 0x7b
and al, cl
mov byte [0x4519a8], al
movsd xmm0, qword [0x451799]
xorps xmm0, xmmword [0x4467b0]
movlps qword [0x4519a9], xmm0
mov eax, 0x35d96163
xor eax, dword [0x4517a1]
mov dword [0x4519b1], eax
movzx eax, byte [0x4517a5]
xor al, 0xd1
mov byte [0x4519b5], al
movzx eax, byte [0x4517a6]
add al, 0x80
mov byte [0x4519b6], al
movzx eax, byte [0x4517a7]
xor al, 0xf
mov byte [0x4519b7], al
movzx eax, byte [0x4517a8]
mov ecx, eax
add cl, al
and cl, 0x28
sub al, cl
add al, 0x94
mov byte [0x4519b8], al
movzx eax, byte [0x4517a9]
xor al, 0x15
mov byte [0x4519b9], al
movzx eax, byte [0x4517aa]
xor al, 0xa1
mov byte [0x4519ba], al
movzx eax, byte [0x4517ab]
mov ecx, eax
add cl, al
and cl, 0x82
sub al, cl
add al, 0x41
mov byte [0x4519bb], al
movzx eax, byte [0x4517ac]
mov ecx, eax
add cl, al
and cl, 0x82
sub al, cl
add al, 0x41
mov byte [0x4519bc], al
mov eax, 0x80e244c0
xor eax, dword [0x4517ad]
mov dword [0x4519bd], eax
movzx eax, byte [0x4517b1]
xor al, 0x2a
mov byte [0x4519c1], al
movzx eax, byte [0x4517b2]
mov ecx, eax
add cl, al
and cl, 0xde
sub al, cl
add al, 0xef
mov byte [0x4519c2], al
movzx eax, byte [0x4517b3]
xor al, 0xd8
mov byte [0x4519c3], al
movzx eax, byte [0x4517b4]
xor al, 0xb9
mov byte [0x4519c4], al
movzx eax, byte [0x4517b5]
mov ecx, eax
add cl, al
and cl, 0xc6
sub al, cl
add al, 0xe3
mov byte [0x4519c5], al
movzx eax, byte [0x4517b6]
xor al, 0xf3
mov byte [0x4519c6], al
movzx eax, byte [0x4517b7]
mov ecx, eax
add cl, al
and cl, 0xec
sub al, cl
add al, 0xf6
mov byte [0x4519c7], al
movsd xmm0, qword [0x4517b8]
xorps xmm0, xmmword [0x4467c0]
movlps qword [0x4519c8], xmm0
movzx eax, byte [0x4517c0]
xor al, 0x88
mov byte [0x4519d0], al
movzx eax, byte [0x4517c1]
mov ecx, eax
add cl, al
and cl, 0x48
sub al, cl
add al, 0xa4
mov byte [0x4519d1], al
movzx eax, byte [0x4517c2]
xor al, 0x3c
mov byte [0x4519d2], al
movzx eax, byte [0x4517c3]
mov ecx, eax
add cl, al
and cl, 0x6c
sub al, cl
add al, 0x36
mov byte [0x4519d3], al
movsd xmm0, qword [0x4517c4]
xorps xmm0, xmmword [0x4467d0]
movlps qword [0x4519d4], xmm0
movzx eax, byte [0x4517cc]
xor al, 0x70
mov byte [0x4519dc], al
movzx eax, byte [0x4517cd]
mov ecx, eax
add cl, al
and cl, 0x3e
sub al, cl
add al, 0x1f
mov byte [0x4519dd], al
movzx eax, byte [0x4517ce]
xor al, 0xb3
mov byte [0x4519de], al
movzx eax, byte [0x4517cf]
xor al, 0xb7
mov byte [0x4519df], al
movzx eax, byte [0x4517d0]
mov ecx, eax
add cl, al
and cl, 0x6c
sub al, cl
add al, 0xb6
mov byte [str._nl_JzF_], al
movzx eax, byte [str.A_j]
mov ecx, eax
add cl, al
and cl, 0xf2
sub al, cl
add al, 0x79
mov byte [0x4519e1], al
movzx eax, byte [0x4517d2]
xor al, 0xfd
mov byte [0x4519e2], al
movzx eax, byte [0x4517d3]
xor al, 0x8e
mov byte [0x4519e3], al
movzx eax, byte [0x4517d4]
mov ecx, eax
add cl, al
and cl, 0x3e
sub al, cl
add al, 0x1f
mov byte [0x4519e4], al
mov eax, 0x9c13bf2b
xor eax, dword [0x4517d5]
mov dword [0x4519e5], eax
movzx eax, byte [0x4517d9]
xor al, 0x6c
mov byte [0x4519e9], al
movzx eax, byte [0x4517da]
xor al, 0xf7
mov byte [0x4519ea], al
movzx eax, byte [0x4517db]
mov ecx, eax
add cl, al
and cl, 0x88
sub al, cl
add al, 0x44
mov byte [0x4519eb], al
movzx eax, byte [0x4517dc]
mov ecx, eax
add cl, al
and cl, 0xa2
sub al, cl
add al, 0xd1
mov byte [0x4519ec], al
movzx eax, byte [0x4517dd]
xor al, 0x1e
mov byte [0x4519ed], al
movzx eax, byte [0x4517de]
xor al, 0x6e
mov byte [0x4519ee], al
movzx eax, byte [0x4517df]
mov ecx, eax
add cl, al
sub al, cl
add al, 0x7f
mov byte [0x4519ef], al
movzx eax, byte [0x4517e0]
xor al, 0xa3
mov byte [0x4519f0], al
movzx eax, byte [0x4517e1]
mov ecx, eax
not cl
or cl, 0x77
or al, 0x88
and al, cl
mov byte [0x4519f1], al
movzx eax, byte [0x4517e2]
xor al, 0x1c
mov byte [0x4519f2], al
movzx eax, byte [0x4517e3]
xor al, 0x2e
mov byte [0x4519f3], al
movzx eax, byte [0x4517e4]
xor al, 0x8e
mov byte [0x4519f4], al
movzx eax, byte [0x4517e5]
mov ecx, eax
add cl, al
and cl, 0xe0
sub al, cl
add al, 0x70
movsd xmm0, qword [0x4517e6]
xorps xmm0, xmmword [0x4467e0]
mov byte [0x4519f5], al
movlps qword [0x4519f6], xmm0
movzx eax, byte [0x4517ee]
xor al, 0x23
mov byte [0x4519fe], al
movzx eax, byte [0x4517ef]
xor al, 0xf
mov byte [0x4519ff], al
movzx eax, byte [0x4517f0]
mov ecx, eax
add cl, al
and cl, 0x88
sub al, cl
add al, 0x44
mov byte [0x451a00], al
mov eax, 0x8ce127b5
xor eax, dword [0x4517f1]
mov dword [0x451a01], eax
movzx eax, byte [0x4517f5]
xor al, 0x66
mov byte [0x451a05], al
movzx eax, byte [0x4517f6]
xor al, 0x53
mov byte [0x451a06], al
movzx eax, byte [0x4517f7]
xor al, 0x33
mov byte [0x451a07], al
movzx eax, byte [0x4517f8]
mov ecx, eax
add cl, al
and cl, 0x4a
sub al, cl
add al, 0xa5
mov byte [0x451a08], al
movsd xmm0, qword [0x4517f9]
xorps xmm0, xmmword [0x4467f0]
movlps qword [0x451a09], xmm0
mov eax, 0x62434c11
xor eax, dword [str._trZu]
mov dword [0x451a11], eax
movzx eax, byte [0x451805]
mov ecx, eax
add cl, al
and cl, 0x8e
sub al, cl
add al, 0x47
movsd xmm0, qword [0x451806]
xorps xmm0, xmmword [0x446800]
mov byte [0x451a15], al
movlps qword [0x451a16], xmm0
movzx eax, byte [0x45180e]
xor al, 0x67
mov byte [0x451a1e], al
movzx eax, byte [0x45180f]
mov ecx, eax
add cl, al
and cl, 0x42
sub al, cl
add al, 0xa1
mov byte [0x451a1f], al
movsd xmm0, qword [0x451810]
xorps xmm0, xmmword [str.GXA_]
movlps qword [0x451a20], xmm0
movzx eax, byte [0x451818]
xor al, 0x3c
mov byte [0x451a28], al
movzx eax, byte [0x451819]
mov ecx, eax
add cl, al
and cl, 0x6c
sub al, cl
add al, 0x36
mov ecx, 0x20c13920
xor ecx, dword [0x45181a]
mov byte [0x451a29], al
mov dword [0x451a2a], ecx
movzx eax, byte [0x45181e]
xor al, 0x54
mov byte [0x451a2e], al
movzx eax, byte [0x45181f]
xor al, 0x7a
mov byte [0x451a2f], al
movzx eax, byte [0x451820]
mov ecx, eax
add cl, al
and cl, 0xc
sub al, cl
add al, 0x86
mov byte [0x451a30], al
mov eax, 0xbc97192a
xor eax, dword [0x451821]
mov dword [0x451a31], eax
movzx eax, byte [0x451825]
mov ecx, eax
add cl, al
and cl, 0xc8
sub al, cl
add al, 0x64
mov ecx, 0x334b95db
xor ecx, dword [0x451826]
mov byte [0x451a35], al
mov dword [0x451a36], ecx
movzx eax, byte [0x45182a]
xor al, 0x29
mov byte [0x451a3a], al
movzx eax, byte [0x45182b]
mov ecx, eax
add cl, al
and cl, 0x84
sub al, cl
add al, 0xc2
mov byte [0x451a3b], al
movups xmm0, xmmword [0x45182c]
xorps xmm0, xmmword [0x446820]
movups xmmword [0x451a3c], xmm0
mov eax, 0x42b27270
xor eax, dword [0x45183c]
mov dword [0x451a4c], eax
movzx eax, byte [0x451840]
mov ecx, eax
add cl, al
and cl, 0xf2
sub al, cl
add al, 0x79
mov byte [0x451a50], al
movsd xmm0, qword [0x451841]
xorps xmm0, xmmword [0x446830]
movlps qword [0x451a51], xmm0
movzx eax, byte [0x451849]
xor al, 0xe0
mov byte [0x451a59], al
movzx eax, byte [0x45184a]
xor al, 0x37
mov byte [0x451a5a], al
movzx eax, byte [0x45184b]
xor al, 0x8c
mov byte [0x451a5b], al
movzx eax, byte [0x45184c]
mov ecx, eax
add cl, al
and cl, 0x64
sub al, cl
add al, 0xb2
mov byte [0x451a5c], al
movzx eax, byte [0x45184d]
xor al, 0xa9
mov byte [0x451a5d], al
movzx eax, byte [0x45184e]
mov ecx, eax
add cl, al
and cl, 0x30
sub al, cl
add al, 0x98
mov byte [0x451a5e], al
movzx eax, byte [0x45184f]
xor al, 0x4c
mov byte [0x451a5f], al
movzx eax, byte [0x451850]
mov ecx, eax
add cl, al
and cl, 0xc0
sub al, cl
add al, 0xe0
mov byte [0x451a60], al
mov eax, 0x32b41506
xor eax, dword [0x451851]
mov dword [0x451a61], eax
movzx eax, byte [0x451855]
mov ecx, eax
not cl
or cl, 0x61
or al, 0x9e
and al, cl
mov byte [0x451a65], al
movzx eax, byte [str.Zmw]
xor al, 0x3c
mov byte [0x451a66], al
movzx eax, byte [0x451857]
xor al, 0x39
mov byte [0x451a67], al
movzx eax, byte [0x451858]
mov ecx, eax
add cl, al
and cl, 0xd4
sub al, cl
add al, 0x6a
mov byte [0x451a68], al
movzx eax, byte [0x451859]
mov ecx, eax
add cl, al
and cl, 0x32
sub al, cl
add al, 0x19
mov byte [0x451a69], al
movzx eax, byte [0x45185a]
xor al, 0x2c
mov byte [0x451a6a], al
movzx eax, byte [0x45185b]
xor al, 0x33
mov byte [0x451a6b], al
movzx eax, byte [0x45185c]
mov ecx, eax
not cl
or cl, 0x53
or al, 0xac
and al, cl
mov byte [0x451a6c], al
movzx eax, byte [0x45185d]
xor al, 0x70
mov byte [0x451a6d], al
movzx eax, byte [0x45185e]
xor al, 0x2d
mov byte [0x451a6e], al
movzx eax, byte [0x45185f]
mov ecx, eax
add cl, al
and cl, 0x12
sub al, cl
add al, 0x89
mov byte [0x451a6f], al
movzx eax, byte [0x451860]
xor al, 0x43
mov byte [0x451a70], al
movzx eax, byte [0x451861]
xor al, 0x6e
mov byte [str.H__5Y], al
movzx eax, byte [0x451862]
mov ecx, eax
add cl, al
and cl, 0x8a
sub al, cl
add al, 0x45
mov byte [0x451a72], al
movzx eax, byte [0x451863]
xor al, 0xd3
mov byte [0x451a73], al
movzx eax, byte [0x451864]
xor al, 0x88
mov byte [0x451a74], al
movzx eax, byte [0x451865]
mov ecx, eax
add cl, al
and cl, 0xc4
sub al, cl
add al, 0xe2
mov byte [0x451a75], al
movzx eax, byte [0x451866]
xor al, 0xe2
mov byte [0x451a76], al
movzx eax, byte [0x451867]
xor al, 0xbc
mov byte [0x451a77], al
movzx eax, byte [0x451868]
mov ecx, eax
add cl, al
and cl, 0x3c
sub al, cl
add al, 0x9e
mov byte [0x451a78], al
movzx eax, byte [0x451869]
mov ecx, eax
not cl
or cl, 0xa9
or al, 0x56
and al, cl
movsd xmm0, qword [0x45186a]
xorps xmm0, xmmword [0x446840]
mov byte [0x451a79], al
movlps qword [0x451a7a], xmm0
movzx eax, byte [0x451872]
xor al, 0xfb
mov byte [0x451a82], al
movzx eax, byte [0x451873]
mov ecx, eax
add cl, al
and cl, 0xcc
sub al, cl
add al, 0x66
mov byte [0x451a83], al
movzx eax, byte [0x451874]
mov ecx, eax
add cl, al
and cl, 0x30
sub al, cl
add al, 0x18
mov byte [0x451a84], al
movzx eax, byte [0x451875]
xor al, 0x85
mov byte [0x451a85], al
movzx eax, byte [0x451876]
xor al, 0xbf
mov byte [0x451a86], al
movzx eax, byte [0x451877]
xor al, 0xf3
mov byte [0x451a87], al
movzx eax, byte [0x451878]
mov ecx, eax
not cl
or cl, 0x5c
or al, 0xa3
and al, cl
mov byte [0x451a88], al
movzx eax, byte [0x451879]
mov ecx, eax
not cl
or cl, 0x99
or al, 0x66
and al, cl
mov byte [0x451a89], al
movzx eax, byte [0x45187a]
mov ecx, eax
add cl, al
and cl, 0xb8
sub al, cl
add al, 0xdc
mov byte [0x451a8a], al
movzx eax, byte [0x45187b]
xor al, 0x18
mov byte [0x451a8b], al
movzx eax, byte [0x45187c]
xor al, 0x8f
mov byte [0x451a8c], al
movzx eax, byte [0x45187d]
mov ecx, eax
not cl
or al, 0xf2
or cl, 0xd
and cl, al
not cl
mov byte [0x451a8d], cl
movzx eax, byte [0x45187e]
xor al, 0xe8
mov byte [0x451a8e], al
movzx eax, byte [0x45187f]
xor al, 0x4c
mov byte [0x451a8f], al
movzx eax, byte [0x451880]
mov ecx, eax
not cl
or al, 0x51
or cl, 0xae
and cl, al
not cl
mov byte [0x451a90], cl
movzx eax, byte [0x451881]
xor al, 0xe7
mov byte [str.Pq_r], al
movzx eax, byte [0x451882]
mov ecx, eax
add cl, al
and cl, 0x8e
sub al, cl
add al, 0xc7
mov byte [0x451a92], al
mov eax, 0xb843e9e5
xor eax, dword [0x451883]
mov dword [0x451a93], eax
movzx eax, byte [0x451887]
xor al, 0x5c
mov byte [0x451a97], al
movzx eax, byte [0x451888]
xor al, 0x11
mov byte [0x451a98], al
movzx eax, byte [0x451889]
mov ecx, eax
add cl, al
and cl, 0x36
sub al, cl
add al, 0x9b
mov byte [0x451a99], al
mov eax, 0xdbec7c16
xor eax, dword [0x45188a]
mov dword [0x451a9a], eax
movzx eax, byte [0x45188e]
xor al, 0xa9
mov byte [0x451a9e], al
movzx eax, byte [0x45188f]
xor al, 0x2d
mov byte [0x451a9f], al
movzx eax, byte [0x451890]
xor al, 0xf8
mov byte [0x451aa0], al
movzx eax, byte [0x451891]
mov ecx, eax
add cl, al
and cl, 0x3e
sub al, cl
add al, 0x9f
mov byte [0x451aa1], al
movzx eax, byte [0x451892]
mov ecx, eax
add cl, al
and cl, 0xda
sub al, cl
add al, 0x6d
mov byte [0x451aa2], al
movzx eax, byte [0x451893]
mov ecx, eax
add cl, al
and cl, 0x48
sub al, cl
add al, 0xa4
mov ecx, 0x30cfc7ae
xor ecx, dword [0x451894]
mov byte [0x451aa3], al
mov dword [0x451aa4], ecx
movzx eax, byte [0x451898]
xor al, 0xf5
mov byte [0x451aa8], al
movzx eax, byte [0x451899]
xor al, 0x23
mov byte [0x451aa9], al
movzx eax, byte [0x45189a]
xor al, 0x90
mov byte [0x451aaa], al
movzx eax, byte [0x45189b]
mov ecx, eax
add cl, al
and cl, 0x92
sub al, cl
add al, 0x49
mov ecx, 0x196ef6f7
xor ecx, dword [0x45189c]
mov byte [0x451aab], al
mov dword [0x451aac], ecx
movzx eax, byte [0x4518a0]
xor al, 0x43
mov byte [0x451ab0], al
movzx eax, byte [0x4518a1]
mov ecx, eax
add cl, al
and cl, 6
sub al, cl
add al, 0x83
mov byte [0x451ab1], al
mov eax, 0x3e0e6c44
xor eax, dword [0x4518a2]
mov dword [0x451ab2], eax
movzx eax, byte [0x4518a6]
mov ecx, eax
add cl, al
and cl, 0x74
sub al, cl
add al, 0xba
mov byte [0x451ab6], al
movzx eax, byte [0x4518a7]
xor al, 0x4d
mov byte [0x451ab7], al
movzx eax, byte [0x4518a8]
xor al, 0x64
mov byte [0x451ab8], al
movzx eax, byte [0x4518a9]
mov ecx, eax
add cl, al
and cl, 0x56
sub al, cl
add al, 0x2b
mov byte [0x451ab9], al
movzx eax, byte [0x4518aa]
xor al, 0x32
mov byte [0x451aba], al
movzx eax, byte [0x4518ab]
xor al, 0xf7
mov byte [0x451abb], al
movzx eax, byte [0x4518ac]
mov byte [0x451abc], al
movzx eax, byte [0x4518ad]
xor al, 0x9a
mov byte [0x451abd], al
movzx eax, byte [0x4518ae]
xor al, 0xe3
mov byte [0x451abe], al
movzx eax, byte [0x4518af]
mov ecx, eax
add cl, al
and cl, 0x42
sub al, cl
add al, 0x21
mov byte [0x451abf], al
movaps xmm0, xmmword [0x4518b0]
xorps xmm0, xmmword [0x446850]
movss dword [0x451ac0], xmm0
movzx eax, byte [str.Z_bb_]
xor al, 0x1e
mov byte [0x451ac4], al
movzx eax, byte [0x4518b5]
xor al, 0x49
mov byte [0x451ac5], al
movzx eax, byte [0x4518b6]
xor al, 0x26
mov byte [0x451ac6], al
movzx eax, byte [0x4518b7]
mov ecx, eax
add cl, al
and cl, 0xda
sub al, cl
add al, 0x6d
mov byte [0x451ac7], al
movzx eax, byte [0x4518b8]
xor al, 0x82
mov byte [0x451ac8], al
movzx eax, byte [0x4518b9]
mov ecx, eax
add cl, al
and cl, 0x2c
sub al, cl
add al, 0x96
mov byte [0x451ac9], al
movzx eax, byte [0x4518ba]
mov ecx, eax
add cl, al
and cl, 0x32
sub al, cl
add al, 0x19
mov byte [0x451aca], al
movzx eax, byte [0x4518bb]
xor al, 0x99
mov byte [0x451acb], al
movzx eax, byte [0x4518bc]
mov ecx, eax
add cl, al
and cl, 0xb6
sub al, cl
add al, 0x5b
mov byte [0x451acc], al
movzx eax, byte [0x4518bd]
mov ecx, eax
add cl, al
and cl, 0x9c
sub al, cl
add al, 0xce
mov byte [0x451acd], al
movzx eax, byte [0x4518be]
mov ecx, eax
not cl
or al, 0x43
or cl, 0xbc
and cl, al
not cl
mov byte [0x451ace], cl
mov eax, 0x1ede1095
xor eax, dword [0x4518bf]
mov dword [0x451acf], eax
movzx eax, byte [0x4518c3]
xor al, 0xbf
mov byte [0x451ad3], al
movzx eax, byte [0x4518c4]
mov ecx, eax
not cl
or cl, 0x8d
or al, 0x72
and al, cl
mov byte [0x451ad4], al
movzx eax, byte [0x4518c5]
mov ecx, eax
add cl, al
and cl, 0x40
sub al, cl
add al, 0xa0
mov byte [0x451ad5], al
mov eax, 0xddaf1505
xor eax, dword [0x4518c6]
mov dword [str.xuS], eax
movzx eax, byte [0x4518ca]
xor al, 0x5b
mov byte [0x451ada], al
movzx eax, byte [0x4518cb]
xor al, 0x33
mov byte [0x451adb], al
movzx eax, byte [0x4518cc]
xor al, 0x59
mov byte [0x451adc], al
movzx eax, byte [0x4518cd]
mov ecx, eax
add cl, al
and cl, 0xac
sub al, cl
add al, 0xd6
mov byte [0x451add], al
movsd xmm0, qword [0x4518ce]
xorps xmm0, xmmword [0x446860]
movlps qword [0x451ade], xmm0
movzx eax, byte [0x4518d6]
mov ecx, eax
add cl, al
and cl, 0x3e
sub al, cl
add al, 0x9f
mov byte [0x451ae6], al
movzx eax, byte [0x4518d7]
xor al, 0x13
mov byte [0x451ae7], al
movzx eax, byte [0x4518d8]
xor al, 0x76
mov byte [0x451ae8], al
movzx eax, byte [0x4518d9]
xor al, 0xac
mov byte [0x451ae9], al
movzx eax, byte [0x4518da]
mov ecx, eax
add cl, al
and cl, 0x78
sub al, cl
add al, 0x3c
mov byte [0x451aea], al
movzx eax, byte [0x4518db]
mov ecx, eax
add cl, al
and cl, 0xec
sub al, cl
add al, 0x76
mov byte [0x451aeb], al
movzx eax, byte [0x4518dc]
xor al, 0xb0
mov byte [0x451aec], al
movzx eax, byte [0x4518dd]
mov ecx, eax
add cl, al
and cl, 0x44
sub al, cl
add al, 0x22
mov byte [0x451aed], al
mov eax, 0x9d2b874a
xor eax, dword [0x4518de]
mov dword [0x451aee], eax
movzx eax, byte [0x4518e2]
xor al, 0xcb
mov byte [0x451af2], al
movzx eax, byte [0x4518e3]
mov ecx, eax
add cl, al
and cl, 0x6a
sub al, cl
add al, 0xb5
mov ecx, 0x39a27875
xor ecx, dword [0x4518e4]
mov byte [0x451af3], al
mov dword [0x451af4], ecx
movzx eax, byte [0x4518e8]
mov ecx, eax
not cl
or al, 0x4c
or cl, 0xb3
and cl, al
not cl
mov eax, 0xef7a0304
xor eax, dword [0x4518e9]
mov byte [0x451af8], cl
mov dword [0x451af9], eax
movzx eax, byte [0x4518ed]
xor al, 0x61
mov byte [0x451afd], al
movzx eax, byte [0x4518ee]
mov ecx, eax
not cl
or al, 0xfe
or cl, 1
and cl, al
not cl
mov byte [0x451afe], cl
movzx eax, byte [0x4518ef]
xor al, 0xb6
mov byte [0x451aff], al
movzx eax, byte [0x4518f0]
xor al, 0xf2
mov byte [0x451b00], al
movzx eax, byte [0x4518f1]
mov ecx, eax
add cl, al
and cl, 0x9c
sub al, cl
add al, 0xce
mov byte [0x451b01], al
movzx eax, byte [str.bOO_]
mov ecx, eax
add cl, al
and cl, 0x48
sub al, cl
add al, 0x24
mov byte [0x451b02], al
movzx eax, byte [0x4518f3]
xor al, 0x76
mov byte [0x451b03], al
movzx eax, byte [0x4518f4]
xor al, 9
mov byte [0x451b04], al
movzx eax, byte [0x4518f5]
mov ecx, eax
add cl, al
and cl, 0xca
sub al, cl
add al, 0x65
mov ecx, 0x4ec813b0
xor ecx, dword [0x4518f6]
mov byte [0x451b05], al
mov dword [0x451b06], ecx
movzx eax, byte [0x4518fa]
xor al, 0x23
mov byte [0x451b0a], al
movzx eax, byte [0x4518fb]
mov ecx, eax
not cl
or al, 0xed
or cl, 0x12
and cl, al
not cl
mov byte [0x451b0b], cl
mov eax, 0x34f1e4cb
xor eax, dword [0x4518fc]
mov dword [0x451b0c], eax
movzx eax, byte [0x451900]
mov ecx, eax
add cl, al
and cl, 0x9a
sub al, cl
add al, 0x4d
mov byte [0x451b10], al
mov eax, dword [ebp + 0xc]
mov dword [0x458b4c], 1
push eax
mov edi, esp
cmp esi, 0x24
ja 0x435b37
cmp esi, 1
je 0x435b37
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebp + 8]
lea ebx, [eax + edx]
dec ebx
mov byte [eax + edx - 1], 0
test ecx, ecx
je 0x435a15
cmp esi, 0xa
je 0x435a23
cmp esi, 0x10
jne 0x435a9e
cmp ecx, 0x100
jb 0x435ad0
mov eax, ecx
nop word cs:[eax + eax]
mov edx, ecx
movzx ecx, dl
mov esi, edx
add ecx, ecx
movzx edx, byte [ecx + 0x451911]
mov byte [ebx - 1], dl
movzx ecx, byte [ecx + 0x451910]
mov byte [ebx - 2], cl
add ebx, 0xfffffffe
shr eax, 8
cmp esi, 0xffff
mov ecx, eax
ja 0x4359d0
cmp eax, 0xf
ja 0x435adb
movzx eax, byte [eax + str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ]
lea ecx, [ebx - 1]
jmp 0x435a94
lea eax, [ebx - 1]
mov dword [edi], eax
mov byte [ebx - 1], 0x30
jmp 0x435b35
mov dword [ebp - 0x10], edi
cmp ecx, 0x64
jb 0x435b0c
nop
mov eax, ecx
mov edx, 0x51eb851f
mul edx
shr edx, 5
imul edi, edx, 0x64
mov eax, ecx
sub eax, edi
mov edi, eax
or edi, 2
mov esi, eax
and esi, 2
imul edi, esi
xor esi, 2
and eax, 0x7d
imul eax, esi
mov esi, ecx
movzx ecx, byte [eax + edi + 0x451631]
mov byte [ebx - 1], cl
movzx eax, byte [eax + edi + 0x451630]
mov byte [ebx - 2], al
add ebx, 0xfffffffe
cmp esi, 0x270f
mov ecx, edx
ja 0x435a30
cmp edx, 9
ja 0x435b17
movzx eax, byte [edx + str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ]
lea ecx, [ebx - 1]
mov edi, dword [ebp - 0x10]
mov dword [edi], ecx
mov byte [ebx - 1], al
jmp 0x435b35
mov dword [ebp - 0x10], edi
nop word cs:[eax + eax]
mov eax, ecx
xor edx, edx
div esi
mov edi, ecx
movzx ecx, byte [edx + str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ]
mov byte [ebx - 1], cl
dec ebx
cmp edi, esi
mov ecx, eax
jae 0x435ab0
mov edi, dword [ebp - 0x10]
mov dword [edi], ebx
jmp 0x435b35
mov eax, ecx
cmp eax, 0xf
jbe 0x435a06
mov ecx, eax
and ecx, 2
mov edx, eax
or eax, 2
imul eax, ecx
xor ecx, 2
and edx, 0xfffffd
imul edx, ecx
movzx ecx, byte [edx + eax + 0x451911]
mov byte [ebx - 1], cl
movzx eax, byte [edx + eax + 0x451910]
lea ecx, [ebx - 2]
jmp 0x435b30
mov edx, ecx
cmp edx, 9
jbe 0x435a87
movzx eax, byte [edx + edx + 0x451631]
mov byte [ebx - 1], al
movzx eax, byte [edx + edx + 0x451630]
lea ecx, [ebx - 2]
mov edi, dword [ebp - 0x10]
mov dword [edi], ecx
mov byte [ebx - 2], al
mov eax, dword [edi]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret