Function at 0x408000
Capabilities:
Hash data using murmur3

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x90
mov dword [esp + 0x14], edx
mov ebx, ecx
mov eax, dword [ecx + 4]
mov dword [esp + 0x74], eax
mov esi, dword [ecx + 8]
mov edi, dword [ecx + 0xc]
mov dword [esp + 0x6c], edi
mov dword [esp + 0x8c], ecx
mov ecx, esi
mov ebp, esi
mov dword [esp + 0x78], esi
xor ecx, eax
lea eax, [ecx + ecx]
not eax
add eax, ecx
xor eax, ecx
and eax, edi
xor eax, ecx
mov esi, dword [edx]
mov dword [esp + 0x44], esi
mov ecx, eax
xor ecx, esi
or eax, esi
xor eax, ecx
mov esi, dword [ebx]
mov dword [esp + 0x80], esi
add ecx, esi
lea edi, [ecx + eax*2]
rol edi, 0xb
mov ecx, dword [ebx + 0x10]
mov eax, edi
and eax, ecx
mov esi, ecx
mov dword [esp + 0x7c], ecx
mov ecx, eax
and ecx, 0xfffffffd
mov edx, eax
and edx, 2
or eax, 2
imul eax, edx
xor edx, 2
imul edx, ecx
xor edi, esi
add edi, eax
add edi, edx
mov eax, ebp
rol eax, 0xa
mov dword [esp + 0x54], eax
mov ecx, eax
mov ebx, dword [esp + 0x74]
xor ecx, ebx
xor ecx, edi
mov ebp, dword [esp + 0x14]
mov eax, dword [ebp + 4]
mov dword [esp + 0x60], eax
add eax, esi
add ecx, eax
rol ecx, 0xe
add ecx, dword [esp + 0x6c]
mov eax, ecx
mov dword [esp], ecx
and eax, edi
add eax, eax
mov esi, ebx
rol esi, 0xa
mov dword [esp + 0x10], esi
lea edx, [ecx + edi]
sub edx, eax
xor edx, esi
mov eax, dword [ebp + 8]
lea esi, [edx + eax]
mov dword [esp + 0x3c], eax
neg esi
mov ecx, dword [esp + 0x6c]
xor esi, ecx
add eax, edx
dec eax
and eax, ecx
add eax, eax
sub eax, esi
rol eax, 0xf
not eax
lea edx, [eax + eax]
not edx
add edx, eax
and eax, 0x8280945c
mov ebx, dword [esp + 0x54]
mov esi, ebx
sub esi, eax
and edx, 0x7d7f6ba3
lea ecx, [edx + esi]
add ecx, 0x8280945c
rol edi, 0xa
mov eax, dword [esp]
xor eax, edi
xor eax, ecx
mov esi, ecx
mov dword [esp + 4], ecx
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0x58], ecx
add eax, ecx
add eax, ebx
rol eax, 0xc
mov ebp, eax
mov ebx, dword [esp + 0x10]
xor ebp, ebx
or eax, ebx
xor ebp, eax
add ebp, eax
mov ecx, dword [esp]
rol ecx, 0xa
mov dword [esp], ecx
mov edx, ebp
xor edx, esi
mov esi, edx
not esi
mov eax, ecx
not eax
or esi, eax
and eax, edx
lea edx, [ecx + esi]
inc edx
or eax, edx
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x10]
mov dword [esp + 0x1c], edx
add eax, edx
mov edx, eax
not edx
and edx, ebx
mov esi, eax
xor eax, ebx
add eax, ebx
sub eax, edx
and esi, ebx
add eax, esi
mov edx, edi
not edx
rol eax, 5
and edx, eax
mov ebx, eax
xor ebx, edi
add ebx, eax
sub ebx, edx
mov edx, edi
and eax, edi
add ebx, eax
mov esi, dword [esp + 4]
rol esi, 0xa
mov dword [esp + 4], esi
mov eax, ebp
xor eax, esi
xor eax, ebx
mov esi, ecx
mov ecx, dword [ecx + 0x14]
mov dword [esp + 0x5c], ecx
add edx, ecx
add edx, eax
rol edx, 8
rol ebp, 0xa
mov edi, dword [esp]
add edx, edi
mov eax, edx
mov ecx, edx
mov dword [esp + 0x20], edx
xor eax, ebx
mov edx, dword [esi + 0x18]
mov dword [esp + 0x2c], edx
add edi, edx
add edi, ebp
add edi, eax
and eax, ebp
add eax, eax
sub edi, eax
rol edi, 7
add edi, dword [esp + 4]
mov eax, edi
mov dword [esp], edi
and eax, ecx
mov edx, eax
and edx, 0xfffffffd
mov esi, eax
and esi, 2
or eax, 2
imul eax, esi
xor esi, 2
imul esi, edx
add eax, esi
lea edx, [edi + ecx]
mov esi, edx
not esi
and esi, eax
not eax
and eax, edx
sub eax, esi
rol ebx, 0xa
mov edi, dword [esp + 0x14]
mov ecx, dword [edi + 0x1c]
mov dword [esp + 0x40], ecx
mov esi, dword [esp + 4]
add esi, ecx
add esi, ebx
add esi, eax
and eax, ebx
add eax, eax
sub esi, eax
rol esi, 9
mov edx, ebp
add esi, ebp
mov ecx, dword [esp + 0x20]
rol ecx, 0xa
mov dword [esp + 0x20], ecx
mov eax, dword [esp]
xor eax, ecx
xor eax, esi
mov ecx, dword [edi + 0x20]
mov dword [esp + 0x34], ecx
add edx, ecx
add edx, eax
rol edx, 0xb
add edx, ebx
mov ebp, edx
mov ecx, edx
not ebp
mov edi, esi
mov edx, esi
and edx, ebp
lea eax, [edx + edx]
not eax
add eax, edx
and edx, 0x1d5839ba
and eax, 0xe2a7c645
or eax, edx
mov edx, esi
not edx
and edx, ecx
mov dword [esp + 8], ecx
xor eax, 0xe2a7c645
or eax, edx
lea edx, [eax + eax]
not edx
add edx, eax
and edx, 0x5a25794e
and eax, 0xa5da86b1
or eax, edx
mov esi, dword [esp]
rol esi, 0xa
mov dword [esp], esi
lea edx, [esi + esi]
not edx
add edx, esi
and edx, 0x5a25794e
and esi, 0xa5da86b1
or esi, edx
xor esi, eax
mov eax, dword [esp + 0x14]
mov edx, dword [eax + 0x24]
mov dword [esp + 0x50], edx
mov eax, esi
xor esi, edx
add esi, ebx
and eax, edx
lea ebx, [esi + eax*2]
rol ebx, 0xd
add ebx, dword [esp + 0x20]
or ebp, ebx
mov edx, ebp
add edx, ebp
not edx
add edx, ebp
lea esi, [ebx + ebx]
not esi
add esi, ebx
or esi, ecx
lea eax, [esi + esi]
not eax
add eax, esi
or eax, edx
rol edi, 0xa
mov edx, eax
not edx
or edx, edi
mov dword [esp + 4], edi
add edx, eax
inc edx
mov ebp, edx
or ebp, 0xfffffffd
inc ebp
mov esi, edx
and esi, 0xfffffffd
imul esi, ebp
mov ebp, edx
and ebp, 2
or edx, 2
imul edx, ebp
sub esi, edx
mov ecx, dword [esp + 0x14]
mov ecx, dword [ecx + 0x28]
mov dword [esp + 0x48], ecx
add eax, edi
add eax, ecx
add eax, esi
mov edx, eax
mov ecx, dword [esp + 0x20]
and edx, ecx
xor eax, ecx
lea ecx, [eax + edx*2]
mov edx, ecx
shl edx, 0xe
mov eax, edx
xor eax, 0x951b2042
mov edi, edx
or edi, 0x6ae4c000
and edi, eax
mov eax, ecx
shr eax, 0x12
mov ebp, eax
not ebp
mov esi, ebp
sub ebp, edx
and edx, 0x951b0000
xor edx, 0x951b2042
add edi, edx
and esi, 0x951b2042
and eax, 0x1fbd
or eax, esi
xor eax, edi
rol ecx, 0xe
add ebp, ecx
mov edx, dword [esp]
mov edi, edx
sub edi, ebp
add edi, eax
not eax
or eax, ebp
add edi, eax
mov ecx, dword [esp + 8]
rol ecx, 0xa
mov dword [esp + 8], ecx
mov eax, ebx
xor eax, ecx
xor eax, edi
mov esi, dword [esp + 0x14]
mov ecx, dword [esi + 0x2c]
mov dword [esp + 0x4c], ecx
add edx, ecx
add edx, eax
rol edx, 0xf
mov ecx, edx
rol ebx, 0xa
mov ebp, dword [esp + 4]
add ecx, ebp
mov eax, ecx
xor eax, edi
mov edx, dword [esi + 0x30]
mov dword [esp + 0x28], edx
add ebp, edx
add ebp, ebx
add ebp, eax
and eax, ebx
add eax, eax
sub ebp, eax
rol ebp, 6
mov esi, dword [esp + 8]
add ebp, esi
mov dword [esp + 4], ebp
rol edi, 0xa
mov eax, ecx
xor eax, edi
xor eax, ebp
mov ebp, dword [esp + 0x14]
mov edx, dword [ebp + 0x34]
mov dword [esp + 0x20], edx
add esi, edx
add esi, eax
rol esi, 7
add esi, ebx
rol ecx, 0xa
mov dword [esp], ecx
mov eax, dword [esp + 4]
xor eax, ecx
xor eax, esi
mov edx, dword [ebp + 0x38]
mov dword [esp + 0x38], edx
add ebx, edx
add ebx, eax
mov eax, ebx
shl eax, 9
mov ebp, ebx
shl ebx, 0xa
not ebx
add ebx, eax
shr ebp, 0x17
add ebp, edi
add ebp, ebx
lea eax, [ebx + ebx]
not eax
add ebp, eax
mov ecx, dword [esp + 4]
rol ecx, 0xa
mov dword [esp + 4], ecx
mov eax, ebp
xor eax, esi
mov edx, dword [esp + 0x14]
mov edx, dword [edx + 0x3c]
mov dword [esp + 0x14], edx
add edi, edx
add edi, ecx
add edi, eax
and eax, ecx
add eax, eax
sub edi, eax
rol edi, 8
add edi, dword [esp]
mov eax, edi
xor eax, 0xc51df6f1
lea edx, [edi + edi]
and edx, 0x75c4121c
sub eax, edx
rol esi, 0xa
mov dword [esp + 8], esi
mov edx, edi
and edx, ebp
add eax, 0x3ae2090e
and eax, esi
mov esi, eax
and eax, edx
xor edx, 0xe8c51b4f
xor esi, 0xe8c51b4f
mov ebx, esi
and ebx, edx
add esi, edx
add ebx, ebx
sub esi, ebx
or eax, esi
mov ecx, dword [esp + 0x40]
add eax, ecx
add eax, 0x5a827999
mov edx, eax
mov ecx, dword [esp]
and edx, ecx
xor ecx, eax
lea eax, [ecx + edx*2]
rol eax, 7
mov esi, dword [esp + 4]
add eax, esi
rol ebp, 0xa
mov ecx, edi
xor ecx, ebp
and ecx, eax
xor ecx, ebp
add ecx, dword [esp + 0x1c]
mov edx, ecx
xor ecx, 0x5a827999
add ecx, esi
and edx, 0xda827999
lea esi, [ecx + edx*2]
rol esi, 6
mov ebx, dword [esp + 8]
add esi, ebx
rol edi, 0xa
mov ecx, esi
not ecx
or ecx, eax
add ecx, esi
inc ecx
lea edx, [esi + esi]
not edx
add edx, esi
and edx, edi
or edx, ecx
mov ecx, ebx
add ecx, dword [esp + 0x20]
lea ebx, [edx + ecx]
add ebx, 0x5a827999
rol ebx, 8
add ebx, ebp
rol eax, 0xa
mov dword [esp + 8], eax
mov ecx, ebx
not ecx
and ecx, eax
add ebp, dword [esp + 0x60]
add ebp, ecx
mov ecx, ebx
and ecx, esi
add ebp, ecx
add ebp, 0x5a827999
rol ebp, 0xd
rol esi, 0xa
add ebp, edi
mov ecx, ebp
not ecx
mov eax, ebx
or eax, ecx
and ecx, esi
mov edx, esi
not edx
or edx, ebp
xor edx, ecx
not edx
add edx, ecx
add eax, ebp
inc eax
or edx, eax
mov eax, edx
mov ecx, dword [esp + 0x48]
and eax, ecx
xor edx, ecx
lea eax, [edx + eax*2]
mov ecx, eax
xor eax, 0x5a827999
add eax, edi
and ecx, 0xda827999
lea edi, [eax + ecx*2]
mov eax, ebx
shr eax, 0x16
lea edx, [eax + eax]
not edx
add edx, eax
mov ecx, ebx
shl ecx, 0xa
not ecx
and ecx, edx
rol ebx, 0xa
lea eax, [ebx + ebx]
not eax
add eax, ebx
lea edx, [ecx + ecx]
not edx
add edx, ecx
lea ebx, [eax + eax]
not ebx
add ebx, eax
and ebx, edx
mov dword [esp + 4], ebx
mov edx, edi
rol edx, 0xb
mov edi, dword [esp + 8]
add edx, edi
mov eax, edx
not eax
mov ecx, ebp
or ecx, eax
add ecx, edx
inc ecx
mov dword [esp], edx
and eax, ebx
or eax, ecx
mov ecx, edi
add ecx, dword [esp + 0x2c]
add eax, ecx
add eax, 0x5a827999
mov edi, eax
shl edi, 9
mov ecx, edi
xor ecx, 0x4917b800
mov ebx, edi
or edi, 0xb6e84600
and edi, ecx
and ebx, 0x4917b800
xor ebx, 0x4917b8f0
or edi, ebx
shr eax, 0x17
xor edi, eax
xor edi, 0x4917b8f0
add edi, esi
rol ebp, 0xa
mov eax, edx
xor eax, ebp
and eax, edi
xor eax, ebp
add eax, dword [esp + 0x14]
mov ebx, eax
or ebx, 0x5a827998
add ebx, esi
and eax, 0x5a827998
add ebx, eax
inc ebx
mov eax, ebx
shr eax, 0x19
lea esi, [eax + eax]
not esi
add esi, eax
mov ecx, esi
and ecx, 0x760b28c8
mov edx, eax
and edx, 0x37
or edx, ecx
and eax, 0xfffffffc
and esi, 0x8b224603
or esi, eax
mov eax, ebx
shl eax, 7
xor esi, eax
lea ecx, [eax + 0x37]
xor eax, 0x760b28c8
xor ecx, eax
and ecx, edx
xor ecx, eax
rol ebx, 7
xor esi, 0x74ddb9fc
and esi, ebx
or esi, ecx
mov edx, dword [esp]
rol edx, 0xa
mov dword [esp], edx
mov ebx, dword [esp + 4]
add esi, ebx
mov eax, esi
not eax
mov ecx, edi
or ecx, eax
add ecx, esi
inc ecx
and eax, edx
or eax, ecx
mov edx, dword [esp + 0x58]
neg edx
mov dword [esp + 0x24], edx
neg eax
mov ecx, eax
and ecx, edx
xor eax, edx
lea eax, [eax + ecx*2]
neg eax
lea edx, [ebx + eax]
add edx, 0x5a827999
rol edx, 0xf
add edx, ebp
rol edi, 0xa
mov eax, edx
not eax
and eax, edi
add ebp, dword [esp + 0x28]
add ebp, eax
mov eax, edx
and eax, esi
lea ecx, [eax + ebp]
add ecx, 0x5a827999
rol ecx, 7
mov eax, ecx
and eax, dword [esp]
mov ebx, eax
and ebx, 0xfffffffd
mov ebp, eax
and ebp, 2
or eax, 2
imul eax, ebp
xor ebp, 2
imul ebp, ebx
xor ecx, dword [esp]
add ecx, eax
add ecx, ebp
rol esi, 0xa
mov eax, ecx
not eax
mov dword [esp + 4], eax
mov ebx, ecx
and ebx, edx
mov ebp, esi
and ebp, eax
or ebp, ebx
mov ebx, ebp
mov eax, dword [esp + 0x44]
xor ebp, eax
add ebp, dword [esp]
and ebx, eax
lea ebp, [ebp + ebx*2 + 0x5a827999]
mov dword [esp], ebp
shr ebp, 0x14
mov ebx, ebp
not ebx
mov eax, ebx
or ebx, 0x3e4e9d16
add ebx, ebp
inc ebx
and eax, 0xc1b162e9
or ebx, eax
mov eax, dword [esp]
shl eax, 0xc
xor ebx, eax
xor ebx, 0xc1b162e9
add ebx, edi
mov eax, ebx
not eax
or eax, dword [esp + 4]
rol edx, 0xa
mov ebp, edx
not ebp
or ebp, ebx
and ebp, eax
not ebp
add edi, dword [esp + 0x50]
lea eax, [edi + ebp]
add eax, 0x5a827999
rol eax, 0xf
add eax, esi
rol ecx, 0xa
mov edi, eax
not edi
and edi, ecx
add esi, dword [esp + 0x5c]
add esi, edi
mov edi, eax
and edi, ebx
add esi, edi
add esi, 0x5a827999
rol esi, 9
mov edi, esi
and edi, edx
xor esi, edx
lea ebp, [esi + edi*2]
rol ebx, 0xa
mov esi, ebp
not esi
and esi, ebx
add edx, dword [esp + 0x3c]
add edx, esi
mov esi, ebp
and esi, eax
lea edi, [esi + edx]
add edi, 0x5a827999
rol edi, 0xb
add edi, ecx
lea edx, [edi + edi]
not edx
add edx, edi
lea esi, [edx + edx]
not esi
add esi, edx
rol eax, 0xa
mov edx, edi
and edx, ebp
or esi, eax
sub esi, edi
or esi, edx
add ecx, dword [esp + 0x38]
add ecx, esi
add ecx, 0x5a827999
rol ecx, 7
add ecx, ebx
rol ebp, 0xa
mov edx, edi
xor edx, ebp
and edx, ecx
xor edx, ebp
add edx, dword [esp + 0x4c]
mov esi, edx
xor esi, 0x6273bfe7
add esi, ebx
and edx, 0xe273bfe7
lea esi, [esi + edx*2]
add esi, 0xf80eb9b2
rol esi, 0xd
mov ebx, eax
neg ebx
xor ebx, esi
lea edx, [eax - 1]
and edx, esi
add edx, edx
sub edx, ebx
rol edi, 0xa
mov ebx, edx
not ebx
mov esi, edi
and esi, ebx
add eax, dword [esp + 0x34]
add eax, esi
mov esi, edx
and esi, ecx
add esi, eax
add esi, 0x5a827999
rol esi, 0xc
rol ecx, 0xa
add esi, ebp
or ebx, esi
xor ebx, ecx
mov eax, ebx
xor eax, dword [esp + 0x24]
sub ebp, eax
mov eax, dword [esp + 0x58]
dec eax
mov dword [esp + 0x64], eax
and ebx, eax
lea ebp, [ebp + ebx*2 + 0x6ed9eba1]
rol ebp, 0xb
add ebp, edi
mov eax, ebp
not eax
or eax, esi
mov ebx, ebp
mov dword [esp + 8], ebp
sub ebx, esi
add ebx, eax
rol edx, 0xa
xor ebx, edx
add edi, dword [esp + 0x48]
add ebx, edi
add ebx, 0x6ed9eba1
mov eax, ebx
shl eax, 0xd
shr ebx, 0x13
not ebx
sub ebx, eax
lea eax, [ebx + ebx]
mov edi, eax
not edi
add ebx, ecx
add edi, ebx
sub eax, ebx
and eax, ebp
mov ebx, eax
not ebx
lea ebp, [ebx + ebx]
not ebp
add ebp, ebx
and ebp, eax
rol esi, 0xa
mov eax, esi
not eax
or eax, ebp
or ebx, esi
and eax, ebx
add ecx, dword [esp + 0x38]
lea ebx, [eax + ecx]
add ebx, 0x6ed9eba1
rol ebx, 6
add ebx, edx
mov dword [esp + 4], ebx
mov ebp, ebx
not ebp
mov eax, edi
or eax, ebp
mov ecx, ebx
sub ecx, edi
add ecx, eax
lea eax, [ebx + ebx]
not eax
add eax, ebx
and eax, edi
not eax
and eax, ecx
mov ebx, dword [esp + 8]
rol ebx, 0xa
mov dword [esp + 8], ebx
mov ecx, edx
xor ecx, 0xda17c19f
and edx, 0xda17c19f
add ecx, dword [esp + 0x1c]
lea ecx, [ecx + edx*2]
xor eax, ebx
add eax, ecx
add eax, 0x94c22a02
mov dword [esp], eax
mov ecx, edi
shl ecx, 0xa
mov eax, ecx
not eax
mov ebx, eax
or ebx, 0xf06e0885
lea edx, [ebx + ecx]
inc edx
shr edi, 0x16
lea ebx, [edi + edi]
not ebx
add ebx, edi
mov ecx, ebx
or ebx, eax
and eax, 0xf91f77a
or edx, eax
and ecx, 0xf91f77a
and edi, 0x85
or edi, ecx
xor edi, edx
not ebx
or ebx, edi
mov eax, dword [esp]
rol eax, 7
add eax, esi
or ebp, eax
mov edx, eax
xor ebp, ebx
add esi, dword [esp + 0x50]
lea edi, [esi + ebp]
add edi, 0x6ed9eba1
mov eax, edi
shr edi, 0x12
mov ecx, edi
xor ecx, 0x8b06c902
mov esi, edi
or esi, 0x36fd
and esi, ecx
or edi, 0x74f936fd
not esi
and esi, edi
shl eax, 0xe
xor esi, eax
mov edi, esi
xor edi, 0x8b06c902
xor esi, 0x74f936fd
mov ebp, dword [esp + 8]
add esi, ebp
sub edi, ebp
mov eax, edi
mov dword [esp], edx
or eax, edx
mov ecx, esi
sub ecx, edx
add ecx, eax
mov edx, dword [esp + 4]
rol edx, 0xa
mov dword [esp + 4], edx
mov eax, dword [esp + 0x14]
add eax, edx
add eax, ecx
and ecx, edx
add ecx, ecx
sub eax, ecx
mov ecx, eax
xor eax, 0x43ed5143
add eax, ebp
and ecx, 0xc3ed5143
lea ebp, [eax + ecx*2]
add ebp, 0x2aec9a5e
rol ebp, 9
mov eax, dword [esp]
rol eax, 0xa
mov dword [esp], eax
lea edx, [ebx + ebp]
or edi, edx
xor edi, eax
mov eax, dword [esp + 0x34]
add eax, ebx
add edi, eax
add edi, 0x6ed9eba1
mov ecx, edx
and ecx, 2
mov eax, edx
mov dword [esp + 0xc], edx
or eax, 2
imul eax, ecx
xor ecx, 2
and edx, 0xfffffffd
imul edx, ecx
add eax, edx
lea ecx, [ebx + ebp]
dec ecx
mov edx, eax
xor edx, ecx
not eax
and eax, ecx
add eax, eax
sub eax, edx
rol edi, 0xd
mov ebx, dword [esp + 4]
add edi, ebx
rol esi, 0xa
or eax, edi
mov ecx, eax
and ecx, esi
add ecx, ecx
mov edx, esi
sub edx, ecx
add edx, eax
mov eax, dword [esp + 0x60]
mov ecx, eax
neg ecx
mov dword [esp + 0x68], ecx
dec eax
and eax, edx
not edx
and edx, ecx
sub eax, edx
mov ecx, eax
xor ecx, 0xee54855f
add ecx, ebx
and eax, 0xee54855f
lea ebx, [ecx + eax*2]
add ebx, 0x80856642
rol ebx, 0xf
mov dword [esp + 0x18], edi
mov eax, edi
xor eax, 0x5d69ddac
mov edx, edi
or edx, 0xa2962253
and edx, eax
mov ebp, dword [esp]
add ebx, ebp
not edi
mov ecx, ebx
and ecx, edi
and edi, 0x5d69ddac
or edi, edx
mov eax, ebx
xor eax, 0xa2962253
mov edx, eax
and edx, edi
add eax, edi
add edx, edx
sub eax, edx
or eax, ecx
mov ecx, dword [esp + 0xc]
rol ecx, 0xa
mov dword [esp + 0xc], ecx
xor eax, ecx
mov edx, dword [esp + 0x3c]
mov ecx, edx
neg ecx
xor ecx, eax
dec edx
and edx, eax
sub ebp, ecx
lea edx, [edx*2 + 0x6ed9eba1]
add edx, ebp
mov ecx, ebx
mov dword [esp + 4], ebx
lea eax, [ebx + ebx]
not eax
add eax, ebx
not ecx
and ecx, eax
rol edx, 0xe
mov eax, dword [esp + 0x18]
rol eax, 0xa
mov dword [esp + 0x18], eax
add edx, esi
mov dword [esp], edx
or ecx, edx
xor ecx, eax
add esi, dword [esp + 0x40]
add ecx, esi
add ecx, 0x6ed9eba1
mov ebp, ecx
shl ebp, 8
mov eax, ebp
not eax
mov edx, ecx
mov esi, ecx
mov dword [esp + 8], ecx
shl edx, 9
not edx
add edx, ebp
mov ecx, edx
and ecx, 0x9343eadc
or eax, 0x6cbc1523
lea ebx, [eax + ebp]
inc ebx
or ebx, ecx
mov eax, esi
shr eax, 0x18
mov edi, eax
not edi
mov esi, edi
and esi, 0x9343eadc
mov ecx, eax
and ecx, 0x23
or ecx, esi
xor ecx, ebx
and ebp, 0x7dac3000
and edx, 0x8253cfed
or edx, ebp
and eax, 0x12
mov esi, edi
and esi, 0x8253cfed
or esi, eax
mov eax, dword [esp + 8]
rol eax, 8
xor esi, edx
not esi
and esi, eax
or esi, ecx
mov ebp, dword [esp + 0xc]
add esi, ebp
mov dword [esp + 8], esi
mov edi, dword [esp + 4]
rol edi, 0xa
mov ecx, esi
not ecx
mov ebx, dword [esp]
mov edx, ebx
and edx, ecx
mov eax, edi
mov dword [esp + 4], edi
not eax
mov esi, edx
xor esi, eax
add esi, edx
and eax, edx
and edx, edi
sub esi, edx
lea edx, [eax + eax]
not edx
add edx, eax
and edx, esi
mov eax, ebp
add eax, dword [esp + 0x44]
lea ebp, [edx + eax]
add ebp, 0x6ed9eba1
rol ebp, 0xd
mov esi, dword [esp + 0x18]
add ebp, esi
rol ebx, 0xa
mov dword [esp], ebx
or ecx, ebp
xor ecx, ebx
mov eax, dword [esp + 0x2c]
add eax, ecx
add eax, 0x6ed9eba1
mov ecx, eax
mov edx, esi
and ecx, esi
xor edx, eax
lea eax, [edx + ecx*2]
mov edx, eax
shl edx, 6
shr eax, 0x1a
mov edi, edx
not edi
lea ecx, [eax + eax]
not ecx
add ecx, eax
mov esi, ecx
or ecx, edi
and edi, 0x9be01a6a
and edx, 0x641fe580
or edx, edi
and esi, 0x9be01a6a
and eax, 0x15
or eax, esi
xor eax, edx
mov edx, eax
and edx, ecx
xor ecx, eax
not ecx
add eax, dword [esp + 4]
add eax, ecx
sub eax, edx
mov esi, eax
and esi, ebp
mov edx, eax
mov edi, eax
mov dword [esp + 0x18], eax
not edx
mov ecx, edx
xor ecx, ebp
mov eax, ebp
add ecx, edi
sub ecx, esi
mov ebp, dword [esp + 8]
rol ebp, 0xa
mov edi, ebp
mov esi, ebp
mov dword [esp + 8], ebp
not edi
mov ebp, edi
mov ebx, edi
mov dword [esp + 0xc], edi
sub ebp, ecx
lea edi, [ecx + ecx]
not edi
add edi, ecx
or ecx, esi
add ebp, ecx
not ebp
and edi, ebx
mov ecx, edi
not ecx
and ecx, ebp
xor edi, ebp
add edi, ebp
sub edi, ecx
lea ecx, [edi + edi]
not ecx
add ecx, edi
and edi, 0x90854bc9
mov esi, dword [esp + 0x20]
sub esi, edi
and ecx, 0x6f7ab436
add ecx, esi
add ecx, 0x90854bc9
mov esi, ecx
xor ecx, 0x6ed9eba1
add ecx, dword [esp + 4]
and esi, 0xeed9eba1
lea ebx, [ecx + esi*2]
rol ebx, 5
mov ebp, ebx
and ebp, 1
xor ebx, 1
rol eax, 0xa
mov dword [esp + 0x30], eax
mov ecx, dword [esp]
add ebx, ecx
lea esi, [ebx + ebp*2]
dec esi
mov dword [esp + 4], esi
or edx, esi
xor edx, eax
add ecx, dword [esp + 0x4c]
lea edi, [edx + ecx]
add edi, 0x6ed9eba1
rol edi, 0xc
lea edx, [ebx + ebp*2]
mov ecx, dword [esp + 8]
add edi, ecx
neg edx
mov ebx, edi
not ebx
mov esi, edi
xor esi, edx
or edx, ebx
lea ebp, [edx + edi]
inc ebp
or ebp, esi
mov esi, dword [esp + 0x18]
rol esi, 0xa
mov eax, dword [esp + 0x5c]
lea edx, [eax + esi]
add edx, ebp
and ebp, esi
add ebp, ebp
sub edx, ebp
add edx, 0x6ed9eba1
mov eax, dword [esp + 0xc]
or eax, edx
add eax, ecx
or edx, ecx
lea ecx, [edx + eax]
inc ecx
rol ecx, 7
mov ebp, dword [esp + 0x30]
add ecx, ebp
mov eax, dword [esp + 4]
rol eax, 0xa
mov dword [esp + 4], eax
or ebx, ecx
xor ebx, eax
mov eax, dword [esp + 0x28]
lea edx, [eax + ebx]
add edx, 0x6ed9eba1
mov ebx, edx
mov eax, ebp
and ebx, ebp
xor eax, edx
lea eax, [eax + ebx*2]
rol eax, 5
add eax, esi
rol edi, 0xa
mov ebx, eax
mov edx, eax
xor ebx, ecx
and ebx, edi
xor ebx, ecx
neg ebx
mov ebp, ebx
mov eax, dword [esp + 0x68]
and ebp, eax
xor ebx, eax
lea eax, [ebx + ebp*2]
lea ebx, [ebx + ebp*2]
dec ebx
sub esi, eax
or ebx, 0x8f1bbcdc
add ebx, esi
neg eax
or eax, 0x8f1bbcdc
add ebx, eax
inc ebx
mov eax, ecx
shr eax, 0x16
rol ecx, 0xa
and eax, 2
mov ebp, ecx
or ebp, 2
imul ebp, eax
xor eax, 2
mov esi, ecx
and esi, 0xfffffffd
imul esi, eax
add ebp, esi
mov esi, ebx
rol esi, 0xb
mov ebx, dword [esp + 4]
add esi, ebx
mov eax, esi
and eax, ecx
not ebp
add ebp, ecx
and ebp, edx
or ebp, eax
add ebx, dword [esp + 0x50]
add ebp, ebx
add ebp, 0x8f1bbcdc
rol ebp, 0xc
rol edx, 0xa
add ebp, edi
mov eax, edx
not eax
mov ebx, esi
and eax, esi
add edi, dword [esp + 0x4c]
add edi, eax
mov eax, ebp
and eax, edx
add eax, edi
add eax, 0x8f1bbcdc
rol eax, 0xe
add eax, ecx
rol ebx, 0xa
mov dword [esp + 8], ebx
mov esi, eax
and esi, ebx
mov edi, ebx
not edi
and edi, ebp
add edi, dword [esp + 0x48]
add esi, edi
add esi, 0x8f1bbcdc
mov edi, esi
and edi, ecx
xor ecx, esi
lea ecx, [ecx + edi*2]
rol ecx, 0xf
add ecx, edx
mov ebx, edx
rol ebp, 0xa
mov dword [esp + 4], ebp
mov esi, ecx
mov edx, ecx
not esi
or esi, ebp
not ebp
and ebp, eax
mov edi, ebp
add edi, ebp
not edi
add edi, ebp
mov dword [esp], ecx
add ecx, esi
inc ecx
and edi, ecx
and ecx, ebp
add ebx, dword [esp + 0x44]
add ebx, ebp
add esi, edx
lea edx, [ebx + esi*2]
add edx, 2
lea ecx, [edi + ecx*2]
sub edx, ecx
add edx, 0x8f1bbcdc
rol edx, 0xe
mov ecx, edx
mov esi, dword [esp + 8]
and ecx, esi
xor edx, esi
mov ebx, esi
rol eax, 0xa
lea ebp, [edx + ecx*2]
mov ecx, eax
and ecx, 0xfffffffd
mov edx, eax
and edx, 2
mov edi, eax
or edi, 2
imul edi, edx
xor edx, 2
imul edx, ecx
sub edi, eax
add edi, edx
lea esi, [edi + edi]
not esi
add esi, edi
mov ecx, ebp
and ecx, eax
mov edi, dword [esp]
and esi, edi
or esi, ecx
mov ecx, esi
mov edx, dword [esp + 0x34]
xor esi, edx
add esi, ebx
and ecx, edx
lea ecx, [esi + ecx*2]
add ecx, 0x8f1bbcdc
rol ecx, 0xf
mov edx, ecx
mov ebx, dword [esp + 4]
and edx, ebx
xor ecx, ebx
mov esi, edi
rol esi, 0xa
lea edx, [ecx + edx*2]
mov ecx, edx
and ecx, esi
mov dword [esp], esi
not esi
and esi, ebp
add esi, dword [esp + 0x28]
add ecx, esi
add ecx, 0x8f1bbcdc
mov esi, ecx
and esi, ebx
xor ebx, ecx
lea ecx, [ebx + esi*2]
rol ecx, 9
mov esi, ecx
and esi, 1
xor ecx, 1
lea ecx, [ecx + esi*2]
lea esi, [eax + ecx]
dec esi
add ecx, eax
mov ebx, ebp
rol ebx, 0xa
mov edi, ecx
neg edi
or edi, ebx
add edi, ecx
mov ebp, ebx
mov dword [esp + 4], ebx
not ebp
and ebp, edx
mov ecx, edi
xor ecx, ebp
not ebp
and ebp, edi
add eax, dword [esp + 0x1c]
add eax, edi
add eax, ecx
sub eax, ebp
add eax, 0x8f1bbcdc
rol eax, 8
mov edi, dword [esp]
mov ecx, edi
neg ecx
lea ebp, [edi - 1]
and ebp, eax
not eax
and eax, ecx
sub ebp, eax
rol edx, 0xa
mov eax, ebp
and eax, edx
mov ecx, edx
not ecx
and ecx, esi
add ecx, dword [esp + 0x20]
add eax, ecx
add eax, 0x1163967f
mov ecx, eax
or ecx, 0xee9c6980
add ecx, edi
and eax, 0xee9c6980
lea edi, [eax + ecx]
add edi, 0x8f1bbcdd
rol edi, 9
add edi, ebx
rol esi, 0xa
mov ecx, edi
and ecx, esi
lea eax, [esi + esi]
not eax
add eax, esi
and eax, ebp
or eax, ecx
add eax, 0x80d50efc
mov ecx, eax
mov ebx, dword [esp + 0x58]
xor eax, ebx
add eax, dword [esp + 4]
and ecx, ebx
lea ecx, [eax + ecx*2]
add ecx, 0xe46ade0
rol ecx, 0xe
rol ebp, 0xa
add ecx, edx
mov dword [esp], ecx
xor ecx, edi
and ecx, ebp
xor ecx, edi
mov ebx, ecx
mov eax, dword [esp + 0x40]
xor ecx, eax
add ecx, edx
and ebx, eax
lea ecx, [ecx + ebx*2]
add ecx, 0x142d97a4
mov edx, ecx
and edx, 0xfaee2538
xor ecx, 0x7aee2538
lea edx, [ecx + edx*2]
mov ebx, esi
neg ebx
rol edx, 5
xor ebx, edx
lea ecx, [esi - 1]
and ecx, edx
add ecx, ecx
rol edi, 0xa
sub ecx, ebx
mov edx, edi
not edx
mov ebx, dword [esp]
and edx, ebx
add esi, dword [esp + 0x14]
add esi, edx
mov edx, ecx
and edx, edi
lea eax, [edx + esi]
add eax, 0x8f1bbcdc
rol eax, 6
add eax, ebp
rol ebx, 0xa
mov edx, ebx
mov dword [esp], ebx
not edx
and edx, ecx
add ebp, dword [esp + 0x38]
add ebp, edx
mov edx, eax
and edx, ebx
lea ebx, [edx + ebp]
add ebx, 0x8f1bbcdc
mov edx, ecx
shl edx, 0xa
mov esi, edx
not esi
lea edx, [edx + esi*2]
inc edx
shr ecx, 0x16
not ecx
and ecx, edx
mov dword [esp + 0x18], ecx
mov edx, eax
not edx
rol ebx, 8
add ebx, edi
mov ebp, ecx
not ebp
mov dword [esp + 4], ebp
or edx, ecx
add edx, eax
inc edx
mov esi, ebx
and esi, ebp
or esi, edx
add edi, dword [esp + 0x5c]
lea edx, [esi + edi]
add edx, 0x8f1bbcdc
rol edx, 6
rol eax, 0xa
mov ecx, dword [esp]
add edx, ecx
mov esi, edx
not esi
mov edi, eax
mov ebp, eax
mov dword [esp + 8], eax
not edi
xor ebp, esi
and esi, edi
sub ebp, esi
and edi, ebx
or edi, ebp
add ecx, dword [esp + 0x2c]
lea esi, [edi + ecx]
add esi, 0x8f1bbcdc
mov eax, esi
shl eax, 5
mov edi, eax
xor edi, 0x2fcde99b
mov ebp, eax
or eax, 0xd0321660
and eax, edi
and ebp, 0x2fcde980
xor ebp, 0x2fcde99b
or eax, ebp
shr esi, 0x1b
xor eax, esi
xor eax, 0x2fcde99b
rol ebx, 0xa
add dword [esp + 4], eax
mov esi, dword [esp + 0x18]
mov ecx, esi
sub ecx, eax
sub eax, esi
mov esi, ecx
or esi, ebx
add esi, eax
mov ebp, ebx
not ebp
and ebp, edx
mov edi, esi
and edi, ebp
add edi, edi
mov eax, ebp
sub ebp, edi
not eax
and eax, esi
lea esi, [esi*2]
add esi, ebp
mov edi, esi
not edi
and edi, eax
not eax
and eax, esi
sub eax, edi
mov esi, eax
mov edi, dword [esp + 0x3c]
xor eax, edi
sub eax, dword [esp + 0x18]
and esi, edi
lea eax, [eax + esi*2]
add eax, 0x8f1bbcdb
mov dword [esp], eax
rol edx, 0xa
mov esi, edx
and esi, 1
xor edx, 1
lea ebp, [edx + esi*2]
mov dword [esp + 0xc], ebp
lea esi, [edx + esi*2]
dec esi
mov edx, ecx
and edx, 0x63d4c884
mov eax, dword [esp + 4]
mov edi, eax
and edi, 0x9c2b377b
or edi, edx
mov edx, ebp
neg edx
mov ebp, esi
and ebp, 0x63d4c884
and edx, 0x9c2b377b
or edx, ebp
xor edx, edi
mov ebp, dword [esp]
rol ebp, 0xc
or ecx, esi
not ecx
or ecx, edx
mov edi, dword [esp + 8]
add ebp, edi
mov edx, ebp
and edx, ecx
add edi, dword [esp + 0x1c]
add edi, ecx
add edi, ebp
add edx, edx
sub edi, edx
add edi, 0xa953fd4e
rol edi, 9
add edi, ebx
rol eax, 0xa
mov dword [esp + 4], eax
mov ecx, eax
not ecx
or ecx, ebp
xor ecx, edi
mov eax, edi
add ebx, dword [esp + 0x44]
add ebx, ecx
add ebx, 0xa953fd4e
rol ebx, 0xf
mov ecx, ebx
not ecx
or ecx, esi
lea edx, [ebx + ecx]
inc edx
mov ecx, edx
and ecx, 2
mov edi, edx
or edx, 2
imul edx, ecx
xor ecx, 2
and edi, 0xfffffffd
imul edi, ecx
xor ebx, esi
add ebx, edx
add ebx, edi
rol ebp, 0xa
mov dword [esp], ebp
mov dword [esp + 8], eax
mov ecx, eax
not ecx
or ecx, ebp
mov edx, eax
sub edx, ebp
add edx, ecx
lea ecx, [eax + eax]
not ecx
add ecx, eax
and ecx, ebp
not ecx
and ecx, edx
mov dword [esp + 0x18], ebx
mov edx, ebx
not edx
and edx, ecx
lea esi, [ecx + ecx]
not esi
add esi, ecx
mov edi, dword [esp + 0x5c]
mov eax, dword [esp + 0xc]
add eax, edi
dec eax
and esi, ebx
add eax, esi
add eax, edx
add eax, 0xa953fd4e
mov dword [esp + 0x68], eax
mov esi, dword [esp + 0x6c]
mov ecx, esi
and ecx, 0xfffffffd
mov edx, esi
and edx, 2
mov eax, esi
or eax, 2
imul eax, edx
xor edx, 2
imul edx, ecx
sub eax, esi
add eax, edx
mov ecx, dword [esp + 0x78]
lea edx, [ecx + ecx]
not edx
add edx, ecx
mov esi, ecx
mov ecx, eax
or eax, edx
and edx, 0x3e3e2c26
and esi, 0xc1c1d3d9
or esi, edx
xor ecx, 0xc1c1d3d9
mov edx, ecx
and edx, esi
add ecx, esi
add edx, edx
sub ecx, edx
not eax
or eax, ecx
mov ebp, dword [esp + 0x74]
mov ecx, dword [esp + 0x80]
add ecx, ebp
add ecx, edi
add ecx, eax
and eax, ebp
mov edx, eax
or edx, 0xfffffffd
inc edx
mov esi, eax
and esi, 0xfffffffd
imul esi, edx
mov edx, eax
and edx, 2
or eax, 2
imul eax, edx
sub esi, eax
lea eax, [esi + ecx]
add eax, 0x50a28be6
mov ecx, eax
mov esi, eax
rol eax, 8
lea edx, [eax + eax]
not edx
add edx, eax
shr esi, 0x18
lea eax, [esi + esi]
not eax
add eax, esi
shl ecx, 8
not ecx
and eax, ecx
mov ecx, edx
xor ecx, eax
not eax
and eax, edx
add ecx, edx
mov edi, ecx
not edi
mov ebx, dword [esp + 0x7c]
add eax, ebx
add edi, eax
sub ecx, eax
mov esi, dword [esp + 0x54]
not esi
or esi, ebp
mov edx, esi
not edx
mov eax, edi
and eax, esi
add eax, eax
xor esi, eax
and eax, edx
mov edx, dword [esp + 0x38]
add ebx, edx
add ebx, edi
add ebx, esi
add eax, eax
sub ebx, eax
add ebx, 0x50a28be6
rol ebx, 9
mov eax, dword [esp + 0x6c]
add ebx, eax
mov dword [esp + 0xc], ebx
and ecx, dword [esp + 0x10]
xor ecx, ebx
not ecx
mov edx, dword [esp + 0x40]
add eax, edx
lea esi, [ecx + eax]
add esi, 0x50a28be6
rol edi, 0xa
mov dword [esp + 0x30], edi
mov ecx, ebx
and ecx, edi
mov eax, ebx
xor eax, edi
sub eax, ebx
add eax, ecx
rol esi, 9
mov edx, dword [esp + 0x54]
add esi, edx
mov ecx, esi
mov dword [esp + 0x70], esi
or ecx, eax
lea edi, [ecx + ecx]
not edi
add edi, ecx
and eax, esi
or edi, eax
mov ebx, dword [esp + 0x68]
rol ebx, 5
mov ecx, edi
mov eax, dword [esp + 0x44]
xor ecx, eax
or edi, eax
xor ecx, edi
mov dword [esp + 0x88], ecx
add edi, edx
mov dword [esp + 0x84], edi
mov edx, dword [esp + 4]
add ebx, edx
mov edi, dword [esp + 8]
rol edi, 0xa
mov eax, edi
not eax
mov ecx, dword [esp + 0x18]
or eax, ecx
xor eax, ebx
add edx, dword [esp + 0x50]
add edx, eax
add edx, 0xa953fd4e
mov eax, ecx
shr eax, 0x16
lea esi, [eax + eax]
not esi
add esi, eax
mov eax, ecx
shl eax, 0xa
not eax
rol ecx, 0xa
or eax, esi
sub ecx, eax
mov dword [esp + 0x18], ecx
rol edx, 0xb
mov ebp, dword [esp]
add edx, ebp
mov eax, ecx
neg eax
or eax, ebx
mov esi, eax
not esi
mov ecx, edx
or ecx, esi
add ecx, eax
add ecx, ecx
add ecx, 2
and esi, ecx
not ecx
and ecx, eax
add ebp, dword [esp + 0x40]
add ebp, edx
add ebp, ecx
sub ebp, esi
mov dword [esp], ebp
rol ebx, 0xa
mov eax, ebx
not eax
lea ecx, [ebx + eax*2]
mov esi, 0xfffffffe
sub esi, ecx
mov ecx, edx
and ecx, ebx
or eax, edx
add eax, ecx
and esi, edx
sub eax, esi
mov esi, dword [esp]
add esi, 0xa953fd4e
rol esi, 6
add esi, edi
xor eax, esi
add edi, dword [esp + 0x28]
add eax, edi
add eax, 0xa953fd4e
rol eax, 8
mov ebp, dword [esp + 0x18]
lea edi, [eax + ebp]
dec edi
rol edx, 0xa
lea eax, [edx + edx]
not eax
add eax, edx
or eax, esi
xor eax, edi
mov ecx, dword [esp + 0x3c]
add ecx, ebp
dec ecx
lea ebp, [eax + ecx]
add ebp, 0xa953fd4e
rol ebp, 0xd
add ebp, ebx
rol esi, 0xa
mov dword [esp], esi
mov eax, esi
not eax
lea eax, [esi + eax*2]
inc eax
or eax, edi
xor eax, ebp
add eax, 0x83721270
mov ecx, eax
mov esi, dword [esp + 0x48]
and ecx, esi
xor eax, esi
lea eax, [eax + ecx*2]
mov ecx, eax
xor ecx, 0x7c8ded8f
add ecx, ebx
and eax, 0xfc8ded8f
lea eax, [ecx + eax*2]
add eax, 0xa953fd4f
rol eax, 0xc
add eax, edx
mov ebx, edi
rol ebx, 0xa
mov ecx, ebx
not ecx
or ecx, ebp
xor ecx, eax
add edx, dword [esp + 0x38]
lea edi, [ecx + edx]
add edi, 0xa953fd4e
mov ecx, ebp
shl ecx, 0xa
mov edx, ebp
shl edx, 0xb
not edx
add edx, ecx
mov ecx, ebp
shr ecx, 0x16
not ecx
and ecx, edx
lea edx, [ecx + ecx]
not edx
add edx, ecx
rol ebp, 0xa
and ebp, edx
rol edi, 5
mov ecx, eax
and ecx, ebp
mov edx, eax
xor edx, ebp
sub edx, eax
add edx, ecx
mov ecx, dword [esp]
add edi, ecx
xor edx, edi
not edx
add ecx, dword [esp + 0x60]
add ecx, edx
add ecx, 0xa953fd4e
mov dword [esp + 0x68], ecx
mov ecx, eax
shl ecx, 0xa
mov esi, eax
mov edx, eax
shl eax, 0xb
not eax
add eax, ecx
shr esi, 0x16
lea ecx, [esi + esi]
not ecx
add ecx, esi
and ecx, eax
rol edx, 0xa
not edx
or ecx, edx
mov edx, dword [esp + 0x68]
rol edx, 0xc
add edx, ebx
mov eax, edi
or eax, ecx
xor eax, edx
mov esi, edx
mov edx, eax
not edx
and edx, dword [esp + 0x24]
and eax, dword [esp + 0x64]
sub eax, edx
mov edx, eax
xor edx, 0xa953fd4d
add edx, ebx
and eax, 0x2953fd4d
lea edx, [edx + eax*2]
inc edx
rol edx, 0xd
add edx, ebp
rol edi, 0xa
mov dword [esp + 0x54], edi
mov eax, edi
not eax
or eax, esi
mov ebx, esi
xor eax, edx
mov edi, edx
mov dword [esp + 8], edx
add ebp, dword [esp + 0x34]
add eax, ebp
add eax, 0xa953fd4e
rol eax, 0xe
mov esi, 0xfffffffe
sub esi, ecx
and esi, eax
not eax
lea edx, [ecx + 1]
and eax, edx
mov ebp, ebx
rol ebp, 0xa
mov dword [esp + 0x68], ebp
sub esi, eax
mov dword [esp + 0x18], esi
not ebp
or ebp, edi
xor ebp, esi
mov eax, ebp
mov edi, dword [esp + 0x4c]
and eax, edi
mov edx, eax
and edx, 0xfffffffd
mov esi, eax
and esi, 2
or eax, 2
imul eax, esi
xor esi, 2
imul esi, edx
mov dword [esp + 0x24], esi
xor ebp, edi
sub ebp, ecx
mov edi, dword [esp + 0xc]
rol edi, 0xa
mov dword [esp + 0xc], edi
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x84]
lea esi, [ecx + edx]
add esi, 0x50a28be6
mov ebx, dword [esp + 0x70]
mov ecx, ebx
and ecx, edi
mov edx, edi
xor edx, ebx
not edx
add edx, ebx
sub edx, ecx
rol esi, 0xb
mov edi, dword [esp + 0x10]
add esi, edi
mov ecx, dword [esp + 0x50]
add ecx, edi
xor edx, esi
add ecx, edx
add ecx, 0x50a28be6
rol ecx, 0xd
add ebp, eax
mov dword [esp + 0x64], ebp
mov edx, dword [esp + 0x30]
add ecx, edx
rol ebx, 0xa
mov eax, ebx
not eax
or eax, esi
xor eax, ecx
add edx, dword [esp + 0x3c]
lea edi, [eax + edx]
add edi, 0x50a28be6
rol edi, 0xf
mov ebp, dword [esp + 0xc]
add edi, ebp
mov eax, edi
not eax
mov edx, eax
and edx, 0x72976e7b
or eax, 0x8d689184
add eax, edi
inc eax
or eax, edx
rol esi, 0xa
mov edx, esi
not edx
or edx, ecx
xor eax, edx
xor eax, 0x72976e7b
mov edx, ebp
add edx, dword [esp + 0x4c]
add eax, edx
add eax, 0x50a28be6
rol eax, 0xf
add eax, ebx
rol ecx, 0xa
lea edx, [ecx + ecx]
not edx
add edx, ecx
or edx, edi
xor edx, eax
add ebx, dword [esp + 0x1c]
add edx, ebx
add edx, 0x50a28be6
rol edi, 0xa
mov ebx, eax
not ebx
or ebx, edi
mov ebp, eax
sub ebp, edi
add ebp, ebx
rol edx, 5
add edx, esi
mov ebx, edx
and ebx, ebp
add esi, dword [esp + 0x20]
add esi, ebp
add esi, edx
add ebx, ebx
sub esi, ebx
add esi, 0x50a28be6
rol esi, 7
rol eax, 0xa
add esi, ecx
mov ebx, eax
not ebx
or ebx, edx
xor ebx, esi
add ecx, dword [esp + 0x2c]
add ecx, ebx
add ecx, 0x50a28be6
mov dword [esp], ecx
mov ebx, edx
shr edx, 0x16
lea ebp, [edx + edx]
not ebp
add ebp, edx
mov ecx, ebp
xor ecx, 0xc1b31679
or ebp, 0x3e4ce986
and ebp, ecx
and edx, 0x279
or edx, ebp
shl ebx, 0xa
xor edx, ebx
mov ecx, dword [esp]
rol ecx, 7
add ecx, edi
mov dword [esp], ecx
mov ebp, edx
xor edx, 0xc1b31679
or edx, esi
xor edx, ecx
add edi, dword [esp + 0x14]
lea ecx, [edx + edi]
add ecx, 0x50a28be6
rol ecx, 8
mov edx, ecx
and edx, eax
xor ecx, eax
lea ecx, [ecx + edx*2]
mov dword [esp + 4], ecx
mov ecx, esi
shr ecx, 0x16
lea edx, [ecx + ecx]
not edx
add edx, ecx
mov ecx, esi
shl ecx, 0xa
mov edi, ecx
not edi
or edi, edx
lea ebx, [edi + ecx]
inc ebx
rol esi, 0xa
add esi, ecx
mov ecx, esi
not ecx
and ecx, ebx
not ebx
and ebx, esi
sub ebx, ecx
mov ecx, ebx
not ecx
mov esi, dword [esp]
or ecx, esi
mov edx, dword [esp + 4]
xor ecx, edx
add eax, dword [esp + 0x34]
add eax, ecx
add eax, 0x50a28be6
xor ebp, 0x3e4ce986
rol eax, 0xb
mov ecx, eax
or ecx, 0xdd76e175
and eax, 0xdd76e175
add ecx, ebp
lea edi, [ecx + eax]
mov dword [esp + 0x10], edi
lea edi, [eax + ecx]
add edi, 0x22891e8b
mov ecx, dword [esp + 0x10]
lea eax, [ecx + ecx]
add eax, 0x45123d16
not eax
add ecx, eax
add ecx, 0x22891e8b
and ecx, 0x9c40b518
mov eax, edi
and eax, 0x63bf4ae7
or eax, ecx
rol esi, 0xa
mov dword [esp], esi
mov ecx, esi
not ecx
or ecx, edx
mov edx, ecx
xor edx, 0x9c40b518
mov esi, ecx
or ecx, 0x63bf4ae7
and ecx, edx
not esi
and esi, 0x9c40b518
add ecx, esi
xor ecx, eax
add ebp, dword [esp + 0x60]
lea eax, [ecx + ebp]
add eax, 0x50a28be6
rol eax, 0xe
add eax, ebx
mov edx, eax
mov eax, dword [esp + 4]
rol eax, 0xa
mov dword [esp + 4], eax
not eax
or eax, edi
mov ecx, edx
xor eax, edx
add ebx, dword [esp + 0x48]
lea edx, [eax + ebx]
add edx, 0x50a28be6
rol edi, 0xa
mov dword [esp + 0xc], edi
mov ebx, edi
not ebx
mov eax, ecx
and eax, ebx
add ebx, ecx
mov esi, ecx
sub ebx, eax
sub ebx, eax
or ebx, eax
rol edx, 0xe
mov edi, dword [esp]
add edx, edi
mov dword [esp + 0x10], edx
xor ebx, edx
add ebx, dword [esp + 0x58]
mov eax, ebx
and eax, 0x50a28be4
mov ecx, ebx
and ecx, 2
mov edx, ecx
xor edx, 2
imul edx, eax
or eax, 2
imul eax, ecx
xor ebx, 0x50a28be6
add ebx, edi
add ebx, edx
add ebx, eax
mov edi, esi
mov dword [esp + 0x30], esi
mov ebp, esi
shl ebp, 0xa
mov dword [esp], ebp
mov eax, ebp
xor eax, 0x6eefdc00
mov edx, ebp
or edx, 0x91102000
and edx, eax
not ebp
mov eax, ebp
and eax, 0x6eefdda8
or edx, eax
shr edi, 0x16
lea ecx, [edi + edi]
not ecx
add ecx, edi
mov eax, ecx
and eax, 0x6eefdda8
mov esi, edi
and esi, 0x257
or esi, eax
and eax, edx
add esi, edx
add eax, eax
sub esi, eax
mov eax, dword [esp]
and eax, 0xe1335400
and ebp, 0x1eccab28
or ebp, eax
and edi, 0xd7
and ecx, 0x1eccab28
or ecx, edi
xor ecx, ebp
mov eax, dword [esp + 0x30]
rol eax, 0xa
not ecx
and ecx, eax
or ecx, esi
rol ebx, 0xc
mov esi, dword [esp + 4]
add ebx, esi
lea eax, [ecx + ecx]
not eax
add eax, ecx
mov edx, dword [esp + 0x10]
or eax, edx
xor eax, ebx
add esi, dword [esp + 0x28]
lea ebp, [eax + esi]
add ebp, 0x50a28be6
rol ebp, 6
rol edx, 0xa
mov dword [esp + 0x10], edx
mov esi, dword [esp + 0xc]
add ebp, esi
mov eax, edx
not eax
and eax, ebx
add esi, dword [esp + 0x2c]
add esi, eax
mov eax, ebp
and eax, edx
add eax, esi
add eax, 0x5c4dd124
rol eax, 9
mov edx, eax
and edx, 0xc35807b1
xor eax, 0x435807b1
add eax, ecx
lea eax, [eax + edx*2]
mov edx, eax
or edx, 0xbca7f84e
and eax, 0xbca7f84e
lea esi, [edx + eax]
inc esi
rol ebx, 0xa
mov eax, ebx
not eax
and eax, ebp
add ecx, dword [esp + 0x4c]
add ecx, eax
mov eax, esi
and eax, ebx
lea edi, [eax + ecx]
add edi, 0x5c4dd124
rol edi, 0xd
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x64]
add eax, ecx
add eax, 0xa953fd4d
mov dword [esp + 0x64], eax
add edi, dword [esp + 0x10]
rol ebp, 0xa
mov eax, edi
xor eax, esi
and eax, ebp
xor eax, esi
add eax, 0x34903576
mov ecx, eax
mov edx, dword [esp + 0x58]
xor eax, edx
add eax, dword [esp + 0x10]
and ecx, edx
lea edx, [eax + ecx*2]
add edx, 0x27bd9bae
rol edx, 0xf
add edx, ebx
rol esi, 0xa
mov dword [esp + 4], esi
mov eax, edx
xor eax, edi
and eax, esi
xor eax, edi
mov ecx, eax
mov esi, dword [esp + 0x40]
xor eax, esi
add eax, ebx
and ecx, esi
lea ebx, [eax + ecx*2]
add ebx, 0x5c4dd124
rol edi, 0xa
mov esi, edx
not esi
or esi, edi
mov ecx, esi
not ecx
lea eax, [ecx + ecx]
not eax
add eax, ecx
rol ebx, 7
or eax, esi
mov ecx, ebx
add ecx, ebp
mov dword [esp], ecx
and ecx, edi
lea esi, [ecx + ecx]
not esi
add esi, ecx
mov ebx, esi
and ebx, ecx
xor ecx, esi
sub ecx, esi
add ecx, ebx
not eax
or eax, ecx
add eax, dword [esp + 0x44]
mov ecx, eax
xor eax, 0x5c4dd124
add eax, ebp
and ecx, 0xdc4dd124
lea esi, [eax + ecx*2]
mov ecx, edx
shr ecx, 0x16
mov eax, edx
shl eax, 0xb
or eax, ecx
shl edx, 0xa
sub eax, edx
lea ecx, [eax + eax]
sub ecx, eax
lea ebx, [ecx + ecx]
not ebx
add ebx, ecx
rol esi, 0xc
mov ebp, dword [esp + 4]
add esi, ebp
mov ecx, esi
and ecx, eax
and ebx, dword [esp]
mov edx, ecx
xor edx, ebx
not ebx
and ebx, ecx
add ecx, dword [esp + 0x20]
add ecx, edx
sub ecx, ebx
mov edx, 0xa3b22edc
sub edx, ecx
xor edx, ebp
add ecx, 0x5c4dd123
and ecx, ebp
add ecx, ecx
sub ecx, edx
rol ecx, 8
mov edx, ecx
and edx, edi
xor ecx, edi
lea ecx, [ecx + edx*2]
mov ebx, dword [esp]
rol ebx, 0xa
mov dword [esp], ebx
mov edx, ebx
not edx
and edx, esi
add edi, dword [esp + 0x5c]
add edi, edx
mov edx, ecx
and edx, ebx
add edx, edi
add edx, 0x5c4dd124
rol edx, 9
mov edi, edx
not edi
lea ebx, [edi + edi]
not ebx
add ebx, edi
or ebx, edi
add edx, ebx
inc edx
mov edi, edx
not edi
mov ebp, eax
not ebp
or ebp, edi
mov ebx, ebp
not ebx
and ebp, 2
mov edi, ebx
and edi, 0xfffffffd
imul edi, ebp
mov ebp, ebx
and ebp, 2
or ebx, 2
imul ebx, ebp
xor edx, eax
add edx, edi
rol esi, 0xa
add edx, ebx
mov edi, edx
and edi, esi
lea ebp, [esi + esi]
not ebp
add ebp, esi
and ebp, ecx
or ebp, edi
add ebp, dword [esp + 0x48]
mov edi, ebp
xor edi, 0xa3b22edb
or ebp, 0x5c4dd124
and edi, ebp
add ebp, eax
add ebp, edi
mov ebx, ebp
shl ebx, 0xb
rol ebp, 0xb
add ebp, ebx
mov eax, ebp
not eax
and eax, ebx
not ebx
and ebx, ebp
sub ebx, eax
rol ecx, 0xa
mov edi, ecx
xor edi, 0xb7d76a5d
mov eax, ecx
or eax, 0x482895a2
and eax, edi
mov edi, ecx
not edi
and edi, 0xb7d76a5d
or eax, edi
lea edi, [ecx + ecx]
and edi, 0x90512b44
sub eax, edi
mov ebp, dword [esp]
add ebx, ebp
mov edi, ebx
and edi, ecx
add eax, 0x482895a2
and eax, edx
or eax, edi
add ebp, dword [esp + 0x38]
add eax, ebp
add eax, 0x5c4dd124
rol eax, 7
rol edx, 0xa
mov dword [esp + 0x10], edx
add eax, esi
mov dword [esp + 4], eax
mov edi, edx
not edi
and edi, ebx
add esi, dword [esp + 0x14]
add esi, edi
mov edi, eax
and edi, edx
add esi, edi
add esi, 0x5c4dd124
rol esi, 7
mov edi, esi
and edi, ecx
xor esi, ecx
lea eax, [esi + edi*2]
mov dword [esp], eax
mov esi, ebx
shl esi, 0xa
mov ebp, esi
not ebp
or ebp, 0x35f14e28
add ebp, esi
inc ebp
and esi, 0xca0eb000
xor esi, 0xca0eb1d7
mov eax, esi
xor eax, ebp
not ebp
and ebp, esi
add eax, esi
sub eax, ebp
shr ebx, 0x16
mov esi, ebx
and esi, 0x1d7
or esi, 0x15014208
and ebx, 0x228
xor ebx, esi
xor ebx, eax
mov edi, dword [esp + 4]
mov eax, edi
not eax
mov esi, ebx
xor esi, 0xdf0ff3df
xor ebx, 0x20f00c20
mov ebp, ebx
and ebp, eax
xor eax, esi
mov edx, edi
sub edx, eax
add edx, ebp
and ebx, edi
or edx, ebx
mov eax, dword [esp]
and eax, esi
or edx, eax
mov eax, dword [esp + 0x34]
lea ebp, [eax + edx]
add ebp, 0x5c4dd124
mov ebx, ebp
and ebx, ecx
mov eax, ebx
and eax, 2
mov edx, ebx
or ebx, 2
imul ebx, eax
xor eax, 2
and edx, 0xfffffffd
imul edx, eax
xor ecx, ebp
add ecx, ebx
add ecx, edx
rol ecx, 0xc
mov edx, edi
rol edx, 0xa
mov dword [esp + 4], edx
mov edi, dword [esp + 0x10]
add ecx, edi
mov ebp, ecx
mov eax, ecx
and eax, edx
not edx
mov ebx, dword [esp]
and edx, ebx
add edx, dword [esp + 0x28]
add eax, edx
add eax, 0x5c4dd124
mov edx, eax
and edx, edi
xor edi, eax
lea eax, [edi + edx*2]
rol eax, 7
mov edi, ebx
rol edi, 0xa
add eax, esi
mov dword [esp], eax
and eax, edi
lea edx, [edi + edi]
not edx
add edx, edi
and edx, ecx
or edx, eax
add esi, dword [esp + 0x1c]
lea ebx, [edx + esi]
add ebx, 0x5c4dd124
mov ecx, dword [esp + 8]
rol ecx, 0xa
mov dword [esp + 8], ecx
mov eax, ecx
not eax
lea edx, [eax + ecx*2]
mov dword [esp + 0x24], edx
and eax, 2
mov edx, ecx
and edx, 0xfffffffd
rol ebx, 6
imul edx, eax
mov dword [esp + 0xc], edx
mov esi, dword [esp + 4]
add ebx, esi
rol ebp, 0xa
mov eax, ebx
and eax, ebp
mov ecx, dword [esp]
lea edx, [ecx + ecx]
not edx
add edx, ecx
or edx, ebp
not edx
or edx, eax
mov eax, esi
add eax, dword [esp + 0x50]
add edx, eax
add edx, 0x5c4dd124
rol edx, 0xf
add edx, edi
mov dword [esp + 4], edx
rol ecx, 0xa
mov dword [esp], ecx
and edx, ecx
lea eax, [ecx + ecx]
not eax
add eax, ecx
and eax, ebx
or eax, edx
add edi, dword [esp + 0x60]
lea edx, [eax + edi]
add edx, 0x5c4dd124
rol ebx, 0xa
mov eax, ebx
or eax, 0xfffffffd
inc eax
mov esi, ebx
and esi, 0xfffffffd
imul esi, eax
mov eax, ebx
and eax, 2
mov edi, ebx
or edi, 2
imul edi, eax
sub esi, edi
rol edx, 0xd
add edx, ebp
mov edi, edx
and edi, ebx
lea eax, [ebx + esi]
dec eax
and eax, dword [esp + 4]
mov esi, edi
not esi
mov ecx, edi
xor ecx, eax
and esi, eax
sub edi, ecx
add edi, esi
or edi, ecx
mov eax, edi
mov ecx, dword [esp + 0x3c]
and eax, ecx
xor edi, ecx
lea eax, [edi + eax*2]
add eax, 0x5c4dd124
mov ecx, eax
xor ecx, ebp
or ebp, eax
xor ebp, ecx
lea esi, [ecx + ebp*2]
mov ecx, dword [esp + 8]
mov eax, ecx
and eax, 2
or ecx, 2
rol esi, 0xb
imul ecx, eax
mov dword [esp + 0x30], ecx
add esi, dword [esp]
mov dword [esp + 0x10], esi
mov eax, edx
not eax
or eax, esi
mov ecx, eax
not ecx
mov esi, ecx
or ecx, 0x9ff4704e
lea edi, [eax + ecx]
inc edi
and esi, 0x600b8fb1
or edi, esi
mov eax, dword [esp + 4]
rol eax, 0xa
mov dword [esp + 4], eax
xor edi, eax
xor edi, 0x600b8fb1
add edi, dword [esp + 0x14]
mov ecx, edi
and ecx, 0x6d703ef1
mov eax, edi
and eax, 2
mov esi, eax
xor esi, 2
imul esi, ecx
or ecx, 2
imul ecx, eax
xor edi, 0x6d703ef3
add edi, dword [esp]
add edi, esi
add edi, ecx
rol edi, 9
mov eax, dword [esp + 0xc]
add dword [esp + 0x30], eax
mov eax, edi
and eax, ebx
xor edi, ebx
lea ebp, [edi + eax*2]
rol edx, 0xa
mov ecx, dword [esp + 0x10]
mov eax, ecx
not eax
or eax, ebp
xor eax, edx
add ebx, dword [esp + 0x5c]
add ebx, eax
add ebx, 0x6d703ef3
rol ebx, 7
mov esi, dword [esp + 4]
add ebx, esi
mov eax, ecx
rol eax, 0xa
mov dword [esp + 0x10], eax
mov ecx, ebx
not ecx
and ecx, ebp
xor ecx, eax
not ecx
add ecx, dword [esp + 0x60]
mov eax, ecx
xor eax, 0x9e12543d
add eax, esi
and ecx, 0x1e12543d
lea ecx, [eax + ecx*2]
add ecx, 0xcf5deab6
rol ecx, 0xf
mov esi, edx
neg esi
xor esi, ecx
lea edi, [edx - 1]
and edi, ecx
add edi, edi
sub edi, esi
rol ebp, 0xa
mov dword [esp], ebp
lea ecx, [ebx + ebx]
not ecx
add ecx, ebx
or ecx, edi
xor ecx, ebp
add edx, dword [esp + 0x58]
lea eax, [ecx + edx]
add eax, 0x6d703ef3
mov edx, ebx
shl edx, 0xa
shr ebx, 0x16
mov ecx, ebx
not ecx
mov ebp, edx
and ebp, 0xc22d6c00
xor ebp, 0xc22d6c5f
and edx, 0x3dd29000
or edx, ebp
and ebp, ecx
and ecx, 0xc22d6c5f
and ebx, 0xffffffa0
or ebx, ecx
add edx, ebx
add ebp, ebp
sub edx, ebp
rol eax, 0xb
mov esi, dword [esp + 0x10]
add eax, esi
mov dword [esp + 0xc], eax
mov ecx, edi
not ecx
or ecx, eax
xor ecx, edx
add esi, dword [esp + 0x40]
lea ebx, [ecx + esi]
add ebx, 0x6d703ef3
mov ecx, edi
shl ecx, 0xa
mov ebp, edi
shr ebp, 0x16
mov eax, ebp
add eax, ebp
not eax
add eax, ebp
and eax, ecx
shl edi, 0xb
or edi, ebp
sub edi, eax
rol ebx, 8
mov ebp, dword [esp]
add ebx, ebp
mov eax, ebx
mov esi, dword [esp + 0xc]
and eax, esi
mov ecx, esi
xor ecx, ebx
not ecx
add ecx, ebx
sub ecx, eax
mov eax, ebp
add eax, dword [esp + 0x38]
add eax, edi
add eax, ecx
and ecx, edi
add ecx, ecx
sub eax, ecx
add eax, 0x6d703ef3
rol eax, 6
add eax, edx
mov dword [esp], eax
rol esi, 0xa
mov dword [esp + 0xc], esi
lea ecx, [ebx + ebx]
not ecx
add ecx, ebx
or ecx, eax
xor ecx, esi
add ecx, dword [esp + 0x2c]
mov eax, ecx
or eax, 0xdacc0d75
add eax, edx
and ecx, 0xdacc0d75
add eax, ecx
add eax, 0xc2b75f64
mov ecx, eax
xor ecx, 0xcfecd219
and eax, 0xcfecd219
lea ebp, [ecx + eax*2]
inc ebp
rol ebp, 6
add ebp, edi
mov dword [esp + 4], ebp
rol ebx, 0xa
not ebp
mov ecx, dword [esp]
and ecx, ebp
xor ecx, ebx
not ecx
mov edx, dword [esp + 0x50]
mov eax, edx
and eax, ecx
xor ecx, edx
lea esi, [ecx + eax*2]
mov edx, 0x928fc10d
sub edx, esi
lea eax, [ecx + eax*2]
add eax, 0x6d703ef2
and eax, edi
not edi
and edi, edx
sub eax, edi
rol eax, 0xe
mov edx, dword [esp + 0xc]
add eax, edx
mov ecx, dword [esp]
rol ecx, 0xa
mov dword [esp], ecx
or ebp, eax
mov esi, eax
xor ebp, ecx
mov eax, ebp
mov ecx, dword [esp + 0x4c]
xor ebp, ecx
add ebp, edx
and eax, ecx
lea ecx, [eax*2 + 0x6d703ef3]
add ecx, ebp
rol ecx, 0xc
add ecx, ebx
mov edi, dword [esp + 4]
rol edi, 0xa
mov dword [esp + 4], edi
mov eax, esi
not eax
or eax, ecx
mov ebp, ecx
mov dword [esp + 0xc], ecx
lea ecx, [eax + eax]
not ecx
add ecx, eax
not eax
or eax, edi
lea edx, [eax + eax]
not edx
add edx, eax
and ecx, edi
xor edx, ecx
mov eax, edx
mov ecx, dword [esp + 0x34]
xor eax, ecx
or edx, ecx
xor eax, edx
add edx, ebx
lea ebx, [eax + edx]
add ebx, 0x6d703ef3
rol ebx, 0xd
mov edi, dword [esp]
add ebx, edi
mov eax, ebp
not eax
or eax, ebx
lea ebp, [eax + eax]
not ebp
add ebp, eax
mov ecx, ebp
xor ecx, 0x859b43b9
or ebp, 0x7a64bc46
and ebp, ecx
rol esi, 0xa
lea edx, [esi + esi]
not edx
add edx, esi
mov ecx, esi
mov dword [esp + 0x10], esi
and edx, 0x7a64bc46
and ecx, 0x859b43b9
or ecx, edx
mov esi, eax
not esi
or esi, 0x7a64bc46
mov edx, esi
and edx, 0x51d6f3ab
and eax, 0x84090010
or eax, edx
xor eax, ebp
not esi
and esi, ebp
xor eax, 0x51d6f3ab
or esi, eax
xor esi, ecx
mov eax, edi
add eax, dword [esp + 0x28]
lea edi, [esi + eax]
add edi, 0x6d703ef3
mov edx, dword [esp + 0xc]
mov esi, edx
shl esi, 0xa
mov eax, esi
xor eax, 0x724f9da9
mov ecx, esi
or esi, 0x8db06000
and esi, eax
and ecx, 0x724f9c00
xor ecx, 0x724f9da9
or esi, ecx
mov eax, edx
shr eax, 0x16
xor esi, eax
mov ecx, ebx
and ecx, 2
mov eax, ebx
or eax, 2
imul eax, ecx
xor ecx, 2
mov edx, ebx
and edx, 0xfffffffd
imul edx, ecx
add eax, edx
rol edi, 5
mov ecx, dword [esp + 4]
add edi, ecx
xor esi, 0x724f9da9
not eax
add eax, ebx
or eax, edi
add ecx, dword [esp + 0x3c]
add ecx, esi
add ecx, eax
and eax, esi
add eax, eax
sub ecx, eax
mov eax, ebx
shr ebx, 0x16
lea ebp, [ebx + ebx]
not ebp
add ebp, ebx
add ecx, 0x6d703ef3
rol ecx, 0xe
shl eax, 0xa
not eax
and ebp, eax
mov ebx, dword [esp + 0x10]
add ecx, ebx
mov eax, ecx
mov edx, ecx
not eax
and eax, edi
xor eax, ebp
add ebx, dword [esp + 0x48]
add eax, ebx
add eax, 0x6d703ef3
mov dword [esp], eax
mov eax, edi
shl eax, 0xa
shr edi, 0x16
lea ecx, [eax + 0x2d6]
xor eax, 0x1afa7929
lea ebx, [edi - 0x1afa7c00]
and eax, ebx
xor edi, 0x1afa7929
and edi, ecx
or edi, eax
mov ecx, edi
lea ebx, [edx + edx]
not ebx
add ebx, edx
mov eax, edx
mov edi, edx
and eax, 0x356c1e2c
and ebx, 0xca93e1d3
or ebx, eax
mov edx, dword [esp]
rol edx, 0xd
mov eax, ecx
mov dword [esp + 0x10], ecx
and ecx, 0xb8247ab
or ecx, 0x44493014
and eax, 0xf47db854
xor eax, ecx
mov ecx, edx
add ecx, esi
mov dword [esp], ecx
xor ebx, 0x356c1e2c
or ebx, ecx
xor ebx, 0xb8247ab
xor eax, 0x4fcb77bf
mov ecx, ebx
and ecx, eax
add ecx, ecx
sub eax, ecx
add eax, ebx
mov ecx, eax
not ecx
mov edx, dword [esp + 0x44]
or ecx, edx
add ecx, eax
xor eax, edx
add eax, esi
lea esi, [eax + ecx*2]
add esi, 0x6d703ef5
rol esi, 0xd
mov dword [esp + 0x70], esi
mov eax, dword [esp + 0x30]
sub dword [esp + 0x24], eax
mov ebx, edi
rol ebx, 0xa
mov edi, ebp
not edi
mov eax, dword [esp]
lea edx, [eax + eax]
not edx
add edx, eax
lea eax, [esi + edi]
mov dword [esp + 0xc], eax
or edx, eax
mov eax, edx
and eax, ebx
mov dword [esp + 4], ebx
mov esi, eax
or esi, 0xfffffffd
inc esi
mov ecx, eax
and ecx, 0xfffffffd
imul ecx, esi
mov esi, eax
and esi, 2
or eax, 2
imul eax, esi
sub ecx, eax
mov eax, dword [esp + 0x1c]
add eax, ebx
add edx, eax
add ecx, edx
add ecx, 0x6d703ef3
mov eax, ecx
and eax, edi
mov edx, eax
and edx, 0xfffffffd
mov esi, eax
and esi, 2
or eax, 2
imul eax, esi
xor esi, 2
imul esi, edx
xor edi, ecx
add edi, eax
add edi, esi
sub ebp, dword [esp + 0x70]
rol edi, 7
mov ecx, dword [esp + 0x10]
add edi, ecx
mov eax, edi
mov ebx, dword [esp + 0xc]
and eax, ebx
xor ebp, edi
add ebp, edi
sub ebp, eax
mov edx, dword [esp]
rol edx, 0xa
mov dword [esp], edx
mov eax, ecx
add eax, dword [esp + 0x20]
add eax, edx
add eax, ebp
and ebp, edx
add ebp, ebp
sub eax, ebp
add eax, 0x6d703ef3
rol eax, 5
mov esi, dword [esp + 4]
add eax, esi
mov ebp, eax
rol ebx, 0xa
not eax
mov ecx, ebp
xor ecx, ebx
or eax, ebx
mov edx, eax
not edx
or edx, ecx
add eax, edx
inc eax
mov ecx, ebp
and ecx, edi
mov edx, eax
not edx
and edx, ecx
xor eax, ecx
add eax, ecx
sub eax, edx
mov ecx, eax
mov edx, dword [esp + 0x34]
xor eax, edx
add eax, esi
and ecx, edx
lea eax, [eax + ecx*2]
add eax, 0x7a6d76e9
rol eax, 0xf
neg eax
mov esi, dword [esp]
mov ecx, esi
neg ecx
mov edx, eax
and edx, ecx
xor ecx, eax
lea eax, [ecx + edx*2]
lea ecx, [ecx + edx*2]
dec ecx
neg eax
rol edi, 0xa
mov edx, eax
and edx, ebp
and ecx, edi
or ecx, edx
add ecx, dword [esp + 0x2c]
mov edx, ecx
xor edx, 0x7a6d76e8
add edx, esi
and ecx, 0xfa6d76e8
lea ecx, [edx + ecx*2]
inc ecx
rol ecx, 5
mov edx, ecx
and edx, 0x25cfb0a2
xor ecx, 0x25cfb0a2
add ecx, ebx
lea esi, [ecx + edx*2]
lea ecx, [ecx + edx*2]
add ecx, 0xda304f5e
mov dword [esp], ecx
mov ecx, 0x25cfb0a1
sub ecx, esi
mov edx, ecx
or edx, eax
add edx, esi
add edx, 0xda304f5f
rol ebp, 0xa
and ecx, ebp
or ecx, edx
mov edx, ebx
add edx, dword [esp + 0x1c]
add ecx, edx
add ecx, 0x7a6d76e9
mov edx, ecx
shr edx, 0x18
mov ebx, ecx
shl ebx, 9
add ebx, edi
add ebx, edx
shl ecx, 8
rol eax, 0xa
sub ebx, ecx
mov ecx, ebx
not ecx
and ecx, eax
add edi, dword [esp + 0x60]
add edi, ecx
mov ecx, ebx
and ecx, dword [esp]
add ecx, edi
add ecx, 0x7a6d76e9
mov edx, dword [esp + 0x18]
mov edi, edx
mov esi, dword [esp + 0x24]
xor edi, esi
not esi
and esi, edx
add edi, edx
rol ecx, 0xb
sub edi, esi
mov dword [esp + 0x30], edi
add ecx, ebp
mov esi, dword [esp]
rol esi, 0xa
mov dword [esp], esi
mov edx, ecx
not edx
and edx, esi
add ebp, dword [esp + 0x58]
add ebp, edx
mov edx, ecx
and edx, ebx
add edx, ebp
add edx, 0x7a6d76e9
rol edx, 0xe
add edx, 0x76e1288c
mov esi, edx
and esi, eax
xor edx, eax
lea edi, [edx + esi*2]
lea edx, [edx + esi*2]
add edx, 0x891ed774
mov esi, 0x76e1288b
sub esi, edi
mov ebp, esi
xor ebp, ecx
add ebp, edi
mov edi, esi
and edi, ecx
add edi, ebp
add edi, 0x891ed775
rol ebx, 0xa
mov ebp, edx
and ebp, ecx
or edi, ebp
mov ebp, edx
and ebp, 0xf7240535
and esi, 0x8dbfaca
or esi, ebp
xor esi, 0xf7240535
and esi, ebx
or esi, edi
add eax, dword [esp + 0x4c]
lea edi, [esi + eax]
add edi, 0x7a6d76e9
rol edi, 0xe
mov esi, dword [esp]
add edi, esi
rol ecx, 0xa
mov eax, edi
not eax
and eax, ecx
add esi, dword [esp + 0x14]
add esi, eax
mov eax, edi
and eax, edx
lea ebp, [eax + esi]
add ebp, 0x7a6d76e9
mov esi, edx
shl esi, 0xa
shr edx, 0x16
not edx
sub edx, esi
mov dword [esp + 4], edx
rol ebp, 6
add ebp, ebx
mov dword [esp + 0x24], ebp
mov esi, ebp
and esi, edi
or ebp, edx
not ebp
or ebp, esi
add ebx, dword [esp + 0x44]
add ebx, ebp
add ebx, 0x7a6d76e9
mov eax, ebx
shl eax, 0xe
mov edx, ebx
shr edx, 0x12
lea ebp, [edx + edx]
not ebp
add ebp, edx
and ebp, eax
shl ebx, 0xf
add edx, ecx
add edx, ebx
rol edi, 0xa
sub edx, ebp
mov dword [esp], edx
mov eax, edx
and eax, dword [esp + 0x24]
lea ebx, [edx + edx]
not ebx
add ebx, edx
and ebx, edi
or ebx, eax
add ebx, dword [esp + 0x5c]
mov eax, ebx
xor eax, 0x7a6d76e8
add eax, ecx
and ebx, 0xfa6d76e8
lea ecx, [eax + ebx*2]
inc ecx
rol ecx, 6
mov edx, dword [esp + 4]
mov eax, edx
not eax
add eax, ecx
mov esi, eax
mov dword [esp + 0x10], eax
mov ebp, edx
sub ebp, ecx
sub ecx, edx
mov eax, ebp
or eax, dword [esp]
add eax, ecx
mov edx, dword [esp + 0x24]
rol edx, 0xa
mov dword [esp + 0x24], edx
mov ecx, esi
or ecx, edx
lea ebx, [ecx + ebp]
inc ebx
or ebx, eax
mov ecx, ebx
mov esi, dword [esp + 0x28]
and ecx, esi
mov edx, ecx
and edx, 2
mov eax, ecx
or ecx, 2
imul ecx, edx
xor edx, 2
and eax, 0xfffffffd
imul eax, edx
xor ebx, esi
sub ebx, dword [esp + 4]
add ebx, ecx
add eax, ebx
add eax, 0x7a6d76e8
rol eax, 9
add eax, edi
add eax, 0xee3770ea
mov ecx, eax
or ecx, 0x11c88f15
and eax, 0x11c88f15
add ecx, eax
inc ecx
mov eax, dword [esp]
rol eax, 0xa
mov dword [esp], eax
mov ebx, ecx
mov edx, ecx
mov dword [esp + 4], ecx
not ebx
and eax, ebx
add edi, dword [esp + 0x3c]
add edi, eax
not ebp
and ebp, ecx
lea eax, [edi + ebp]
add eax, 0x7a6d76e9
rol eax, 0xc
mov ecx, eax
mov edi, dword [esp + 0x24]
and ecx, edi
xor eax, edi
lea ecx, [eax + ecx*2]
mov eax, ecx
or eax, edx
sub ebx, ecx
add ebx, eax
lea ebp, [ecx + ecx]
not ebp
add ebp, ecx
mov eax, ecx
mov esi, ecx
mov dword [esp + 0xc], ecx
and eax, 0xf26c351d
mov ecx, ebp
and ecx, 0xd93cae2
or ecx, eax
mov edx, dword [esp + 0x10]
rol edx, 0xa
mov dword [esp + 0x10], edx
lea eax, [edx + edx]
not eax
add eax, edx
and edx, 0xf26c351d
and eax, 0xd93cae2
or eax, edx
xor eax, ecx
and eax, ebp
not ebx
or eax, ebx
add edi, dword [esp + 0x20]
add edi, eax
add edi, 0x7a6d76e9
rol edi, 9
add edi, dword [esp]
mov ebx, dword [esp + 4]
rol ebx, 0xa
mov dword [esp + 4], ebx
mov ecx, edi
and ecx, esi
mov ebp, edi
not ebp
and ebx, ebp
or ebx, ecx
mov ecx, ebx
mov edx, dword [esp + 0x50]
and ecx, edx
mov esi, ecx
and esi, 0xfffffffd
mov eax, ecx
and eax, 2
or ecx, 2
imul ecx, eax
xor eax, 2
imul eax, esi
xor ebx, edx
add ebx, dword [esp]
add ebx, ecx
add eax, ebx
add eax, 0x7a6d76e9
rol eax, 0xc
mov esi, eax
or esi, 0x1c0cabde
and eax, 0x1c0cabde
add esi, dword [esp + 0x10]
lea ecx, [esi + eax]
add esi, eax
add esi, 0xe3f35422
mov dword [esp], esi
mov ebx, 0x1c0cabdd
sub ebx, ecx
mov eax, ebx
and eax, 0x2f79f2d3
and esi, 0xd0860d2c
or esi, eax
xor esi, 0xd0860d2c
add ecx, esi
and ebp, esi
xor esi, edi
add esi, ecx
sub esi, ebp
mov ecx, dword [esp + 0xc]
rol ecx, 0xa
mov dword [esp + 0xc], ecx
mov eax, ebx
and eax, ecx
mov ecx, eax
not ecx
lea ebp, [esi - 0x1c0cabdd]
and ecx, ebp
xor eax, ebp
mov edx, dword [esp + 0x40]
add esi, edx
add esi, 0xe3f35423
add esi, eax
sub esi, ecx
mov eax, esi
xor esi, 0x7a6d76e9
add esi, dword [esp + 0x10]
and eax, 0xfa6d76e9
lea edx, [esi + eax*2]
rol edx, 5
add edx, dword [esp + 4]
mov eax, edx
and eax, ebx
add ebx, edx
add eax, eax
sub ebx, eax
rol edi, 0xa
mov eax, edx
not eax
mov dword [esp + 0x24], eax
and ebx, edx
mov esi, edi
and esi, eax
or esi, ebx
mov ebx, esi
mov ebp, dword [esp + 0x48]
and ebx, ebp
mov ecx, ebx
and ecx, 2
mov eax, ebx
or ebx, 2
imul ebx, ecx
xor ecx, 2
and eax, 0xfffffffd
imul eax, ecx
xor esi, ebp
add esi, dword [esp + 4]
add esi, ebx
lea ebp, [eax + esi]
add ebp, 0x7a6d76e9
mov ecx, dword [esp + 0x64]
rol ecx, 0xb
add ecx, dword [esp + 0x54]
mov dword [esp + 0x64], ecx
mov ebx, ecx
not ebx
mov dword [esp + 0x10], ebx
mov esi, dword [esp + 0x30]
mov eax, esi
not eax
or eax, ecx
or esi, ebx
mov ebx, ebp
rol ebx, 0xf
and esi, eax
mov dword [esp + 0x30], esi
lea eax, [edx + edx]
not eax
add eax, edx
and eax, dword [esp + 0x24]
add ebx, dword [esp + 0xc]
mov dword [esp + 4], ebx
mov ecx, dword [esp]
rol ecx, 0xa
mov dword [esp], ecx
mov ebp, ebx
not ebp
or eax, ebp
not ecx
or ecx, ebx
and ecx, eax
not ecx
mov eax, dword [esp + 0x38]
add eax, ecx
add eax, 0x7a6d76e9
mov ecx, eax
mov esi, dword [esp + 0xc]
and ecx, esi
xor esi, eax
lea ebx, [esi + ecx*2]
rol ebx, 8
add ebx, edi
mov ecx, ebx
not ecx
or ebp, ecx
mov esi, ebp
not esi
mov eax, esi
and eax, 0xfffffffd
and ebp, 2
imul ebp, eax
mov eax, esi
and eax, 2
or esi, 2
imul esi, eax
add esi, ebp
mov ebp, dword [esp + 4]
lea eax, [ebx + ebp]
sub eax, esi
add edi, dword [esp + 0x28]
rol edx, 0xa
xor eax, edx
add edi, eax
rol edi, 8
mov eax, edi
and eax, 0xde8e9c45
xor edi, 0x5e8e9c45
add edi, dword [esp]
lea esi, [edi + eax*2]
lea edi, [edi + eax*2]
add edi, 0xa17163bb
rol ebp, 0xa
mov eax, 0x5e8e9c44
sub eax, esi
lea esi, [ebx + ebx]
not esi
add esi, ebx
or esi, ecx
mov ecx, eax
and ecx, ebx
and esi, edi
add esi, ecx
xor esi, ebp
mov ecx, dword [esp]
add ecx, dword [esp + 0x14]
add ecx, esi
rol ecx, 5
add ecx, edx
mov esi, edi
xor esi, eax
and esi, ecx
xor esi, eax
add edx, dword [esp + 0x48]
rol ebx, 0xa
not esi
mov eax, ebx
and eax, esi
add edx, ebx
add edx, esi
add eax, eax
sub edx, eax
rol edx, 0xc
add edx, ebp
mov eax, edx
mov dword [esp], ecx
and eax, ecx
add eax, eax
add ecx, edx
sub ecx, eax
mov esi, ebp
add esi, dword [esp + 0x1c]
rol edi, 0xa
mov dword [esp + 0x1c], edi
xor ecx, edi
add esi, ecx
mov ecx, edx
not ecx
lea eax, [edx + edx]
not eax
add eax, edx
or eax, ecx
mov ecx, esi
rol ecx, 9
add ecx, ebx
lea ebp, [ecx + ecx]
not ebp
add ebp, ecx
mov esi, ecx
mov dword [esp + 4], ecx
mov ecx, ebp
and ecx, eax
xor eax, ebp
sub eax, ebp
add eax, ecx
mov ecx, esi
not ecx
and ecx, edx
or eax, ecx
mov ecx, dword [esp + 0x60]
lea edi, [ecx + ebx]
dec edi
mov esi, dword [esp]
rol esi, 0xa
mov dword [esp], esi
mov ecx, esi
xor ecx, eax
xor eax, 0xf799a2cb
xor esi, 0xf799a2cb
add edi, esi
add edi, eax
not ecx
and ecx, esi
add ecx, ecx
sub edi, ecx
inc edi
rol edi, 0xc
mov esi, dword [esp + 0x1c]
add edi, esi
mov eax, edi
not eax
or eax, ebp
mov ecx, edi
mov ebx, dword [esp + 4]
or ecx, ebx
and ecx, eax
mov ebp, esi
add ebp, dword [esp + 0x5c]
rol edx, 0xa
xor ecx, edx
add ebp, ecx
rol ebp, 5
mov esi, dword [esp]
add ebp, esi
add esi, dword [esp + 0x34]
rol ebx, 0xa
mov dword [esp + 4], ebx
mov eax, edi
xor eax, ebx
xor eax, ebp
add esi, eax
mov eax, dword [esp + 0x30]
not eax
mov ecx, dword [esp + 0x2c]
add eax, ecx
add eax, 0xa953fd4e
mov ebx, eax
mov ecx, dword [esp + 0x54]
and ebx, ecx
mov dword [esp + 0x28], ebx
rol esi, 0xe
xor ecx, eax
mov dword [esp + 0x54], ecx
add esi, edx
rol edi, 0xa
mov eax, esi
mov ebx, esi
xor eax, ebp
mov ecx, eax
and ecx, edi
add eax, edi
add ecx, ecx
sub eax, ecx
mov ecx, eax
mov esi, dword [esp + 0x40]
and ecx, esi
xor eax, esi
add eax, edx
lea eax, [eax + ecx*2]
rol eax, 6
add eax, dword [esp + 4]
mov ecx, eax
mov edx, eax
mov dword [esp + 0x1c], eax
not ecx
mov dword [esp], ebx
lea eax, [ebx + ebx]
not eax
add eax, ebx
or eax, ecx
or edx, ebx
not edx
lea ecx, [edx + edx]
not ecx
add ecx, edx
and ecx, eax
rol ebp, 0xa
mov eax, ecx
not eax
mov edx, ebp
and edx, eax
mov esi, ebp
not esi
or esi, eax
add esi, ecx
inc esi
or esi, edx
add esi, dword [esp + 0x2c]
mov eax, esi
mov ebx, dword [esp + 4]
and eax, ebx
mov ecx, eax
and ecx, 2
mov edx, eax
or eax, 2
imul eax, ecx
xor ecx, 2
and edx, 0xfffffffd
imul edx, ecx
xor esi, ebx
add esi, eax
add esi, edx
rol esi, 8
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x28]
lea eax, [eax + ecx*2]
mov dword [esp + 4], eax
add esi, edi
mov ecx, dword [esp]
rol ecx, 0xa
add edi, dword [esp + 0x3c]
mov edx, dword [esp + 0x1c]
mov eax, edx
xor eax, ecx
mov ebx, ecx
xor eax, esi
add edi, eax
rol edi, 0xd
add edi, ebp
rol edx, 0xa
mov dword [esp + 0x1c], edx
mov eax, edi
xor eax, esi
mov ecx, eax
and ecx, edx
add eax, edx
add ecx, ecx
sub eax, ecx
mov ecx, eax
xor ecx, 0x45fcffa
and eax, 0x45fcffa
lea eax, [ecx + eax*2]
inc eax
mov ecx, eax
mov edx, dword [esp + 0x20]
xor eax, edx
add eax, ebp
and ecx, edx
lea edx, [eax + ecx*2]
add edx, 0xfba03005
rol edx, 6
add edx, ebx
lea eax, [edx + edx]
not eax
add eax, edx
and eax, 0x46b53bfa
mov ecx, edx
and ecx, 0xb94ac405
or ecx, eax
mov eax, edi
xor eax, 0x46b53bfa
mov ebp, edi
xor ebp, 0xb94ac405
or ebp, ecx
not ecx
or ecx, eax
and ebp, ecx
mov eax, ebx
add eax, dword [esp + 0x38]
mov ebx, esi
rol ebx, 0xa
xor ebp, ebx
mov dword [esp + 0x2c], ebx
not ebp
add ebp, eax
mov eax, edi
shr edi, 0x16
mov ecx, edi
xor ecx, 0x7cae47c2
mov esi, edi
or esi, 0x3d
and esi, ecx
and edi, 0xffffffc2
xor edi, esi
shl eax, 0xa
or edi, eax
rol ebp, 5
mov esi, dword [esp + 0x1c]
add ebp, esi
mov eax, ebp
mov dword [esp], edx
and eax, edx
add eax, eax
lea ecx, [edx + ebp]
sub ecx, eax
xor ecx, edi
mov eax, ecx
mov edx, dword [esp + 0x44]
and eax, edx
xor ecx, edx
add ecx, esi
lea edx, [ecx + eax*2]
rol edx, 0xf
add edx, ebx
lea eax, [edx + edx]
not eax
add eax, edx
mov ecx, eax
and ecx, 0x7d2deccc
mov ebx, edx
mov esi, edx
and ebx, 0x82d21333
or ebx, ecx
xor ebx, ebp
xor ebx, 0x82d21333
or eax, ebp
not eax
or eax, ebx
mov ecx, edx
not ecx
or ecx, ebp
and ecx, eax
rol dword [esp + 4], 8
mov ebx, dword [esp + 0x18]
rol ebx, 0xa
mov eax, dword [esp + 0x58]
mov edx, dword [esp + 0x2c]
add edx, eax
dec edx
mov eax, dword [esp]
rol eax, 0xa
mov dword [esp], eax
xor ecx, eax
sub edx, ecx
rol edx, 0xd
add edx, edi
lea eax, [edx + edx]
sub eax, edx
and eax, edx
mov ecx, edx
mov dword [esp + 0x38], edx
not ecx
or ecx, esi
mov dword [esp + 0x2c], ecx
not eax
and eax, esi
mov dword [esp + 0x1c], eax
rol esi, 0xa
xor edx, esi
mov dword [esp + 0x28], edx
add esi, dword [esp + 0x78]
mov dword [esp + 0x34], esi
mov dword [esp + 0x18], ebx
mov esi, dword [esp + 0x10]
or esi, ebx
mov edx, dword [esp + 0x64]
mov eax, edx
sub eax, ebx
add eax, esi
mov ecx, dword [esp + 0x68]
mov esi, dword [esp + 4]
add esi, ecx
add ecx, dword [esp + 0x14]
xor eax, esi
mov ebx, esi
mov dword [esp + 4], esi
lea esi, [eax + ecx]
add esi, 0xa953fd4e
rol edx, 0xa
lea ecx, [edx + edx]
not ecx
add ecx, edx
rol ebp, 0xa
mov eax, dword [esp + 0x6c]
add eax, ebp
add eax, edx
mov dword [esp + 0x6c], eax
mov eax, edx
not eax
xor ecx, eax
add ecx, eax
rol esi, 5
add esi, dword [esp + 8]
or ecx, ebx
mov eax, esi
and eax, ecx
lea ebx, [esi + ecx]
not ebx
lea eax, [ebx + eax*2]
and eax, ecx
add eax, eax
sub eax, ecx
mov ecx, eax
xor ecx, esi
not eax
and eax, esi
add eax, eax
sub eax, ecx
mov ecx, eax
and ecx, dword [esp + 0x20]
mov ebx, ecx
and ebx, 0xfffffffd
mov edx, ecx
and edx, 2
or ecx, 2
imul ecx, edx
xor edx, 2
imul edx, ebx
xor eax, dword [esp + 0x20]
add eax, dword [esp + 8]
add eax, ecx
add eax, edx
add eax, 0xa953fd4e
mov dword [esp + 0x20], eax
mov edx, dword [esp + 4]
mov eax, edx
shl eax, 0xa
mov ecx, edx
shl edx, 0xb
not edx
add edx, eax
and edx, 0xda3c72a2
and eax, 0x25c38c00
or eax, edx
shr ecx, 0x16
mov edx, ecx
not edx
mov ebx, edx
or edx, 0x25c38d5d
add ecx, edx
inc ecx
and ebx, 0xda3c72a2
or ecx, ebx
xor ecx, eax
mov edx, dword [esp + 0x2c]
lea eax, [edx + edx]
not eax
add eax, edx
or eax, dword [esp + 0x1c]
add edi, dword [esp + 0x50]
add edi, ebp
add edi, eax
and eax, ebp
mov edx, eax
and edx, 0xfffffffd
mov ebx, eax
or ebx, 0xfffffffd
inc ebx
imul ebx, edx
mov edx, eax
and edx, 2
or eax, 2
imul eax, edx
sub ebx, eax
add edi, ebx
rol edi, 0xb
mov eax, dword [esp]
add edi, eax
add eax, dword [esp + 0x4c]
mov edx, dword [esp + 0x28]
xor edx, edi
add eax, edx
mov ebx, eax
add esi, dword [esp + 0x74]
mov eax, dword [esp + 0x38]
rol eax, 0xa
add esi, eax
mov edx, dword [esp + 0x34]
add edx, ecx
mov eax, dword [esp + 0x8c]
mov dword [eax + 4], edx
mov ecx, dword [esp + 0x6c]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x18]
add ecx, edx
add ecx, ebp
rol ebx, 0xb
add ecx, ebx
mov dword [eax + 0xc], ecx
add edx, dword [esp + 0x80]
mov ecx, dword [esp + 0x20]
rol ecx, 6
add edx, edi
add edx, ecx
mov dword [eax + 0x10], edx
mov dword [eax], esi
add esp, 0x90
pop esi
pop edi
pop ebx
pop ebp
ret