Function at 0x408200
Capabilities:
Hash data using murmur3

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x84
mov edi, edx
mov esi, dword [ecx + 4]
mov dword [esp + 0x6c], esi
mov ebp, dword [ecx + 8]
mov ebx, dword [ecx + 0xc]
mov dword [esp + 0x68], ebx
xor ebx, ebp
mov dword [esp + 0x14], ebx
mov dword [esp + 0x74], ebp
xor ebx, esi
mov eax, dword [ecx]
mov dword [esp + 0x78], eax
mov dword [esp + 0x80], ecx
mov esi, dword [edx]
mov dword [esp + 0x5c], esi
add eax, esi
add ebx, eax
rol ebx, 0xb
mov ecx, dword [ecx + 0x10]
mov dword [esp + 0x70], ecx
add ebx, ecx
rol ebp, 0xa
mov dword [esp + 4], ebp
mov edx, dword [esp + 0x6c]
xor ebp, edx
xor ebp, ebx
mov eax, dword [edi + 4]
mov dword [esp], edi
mov dword [esp + 0x34], eax
add eax, ecx
add ebp, eax
rol ebp, 0xe
mov esi, dword [esp + 0x68]
add ebp, esi
mov ecx, edx
rol ecx, 0xa
mov dword [esp + 0x18], ecx
mov eax, ebx
xor eax, ecx
xor eax, ebp
mov ecx, dword [edi + 8]
mov dword [esp + 0x40], ecx
add ecx, esi
add eax, ecx
rol eax, 0xf
mov ecx, eax
xor ecx, 0xc3109957
and eax, 0xc3109957
mov esi, dword [esp + 4]
add ecx, esi
lea edx, [ecx + eax*2]
lea ecx, [ecx + eax*2]
add ecx, 0x3cef66a9
mov edi, 0xc3109956
sub edi, edx
rol ebx, 0xa
mov eax, edi
xor eax, ecx
mov edx, ecx
mov dword [esp + 0x2c], ecx
mov ecx, eax
and ecx, ebp
xor edx, ebx
xor edx, ecx
mov ecx, dword [esp]
mov ecx, dword [ecx + 0xc]
mov dword [esp + 0x60], ecx
add ecx, esi
add edx, ecx
rol edx, 0xc
mov ecx, edx
mov esi, dword [esp + 0x18]
and ecx, esi
xor edx, esi
lea ecx, [edx + ecx*2]
mov dword [esp + 0x10], ecx
and eax, ecx
xor eax, edi
mov edx, eax
not edx
lea edi, [edx + edx]
not edi
add edi, edx
or edi, edx
rol ebp, 0xa
lea edx, [eax + edi]
inc edx
mov edi, ebp
add edi, ebp
not edi
add edi, ebp
and edi, eax
mov eax, ebp
not eax
or eax, edx
not edi
and edi, eax
mov esi, dword [esp]
mov ecx, dword [esi + 0x10]
mov dword [esp + 0x30], ecx
mov eax, ecx
neg eax
lea edx, [ecx - 1]
and edx, edi
not edi
and edi, eax
sub edx, edi
add edx, dword [esp + 0x18]
rol edx, 5
mov eax, edx
and eax, ebx
xor edx, ebx
lea eax, [edx + eax*2]
mov dword [esp + 0x20], eax
mov edx, dword [esp + 0x10]
and eax, edx
mov ecx, eax
or ecx, 0xfffffffd
inc ecx
mov edi, eax
and edi, 0xfffffffd
imul edi, ecx
mov ecx, eax
and ecx, 2
or eax, 2
imul eax, ecx
sub edi, eax
mov ecx, edx
mov edx, dword [esp + 0x20]
add edi, edx
add edi, ecx
mov eax, dword [esp + 0x2c]
rol eax, 0xa
mov dword [esp + 0x2c], eax
xor edi, eax
mov eax, dword [esi + 0x14]
mov dword [esp + 0x28], eax
add edi, eax
mov eax, edi
and eax, ebx
xor edi, ebx
lea ebx, [edi + eax*2]
rol ebx, 8
add ebx, ebp
rol ecx, 0xa
mov edi, ebx
xor edi, edx
mov eax, ecx
mov edx, ecx
mov dword [esp + 0x10], ecx
not eax
or eax, edi
lea ecx, [edi + edi]
not ecx
add ecx, edi
not edi
and edi, ecx
or edi, edx
and edi, eax
not edi
mov eax, dword [esi + 0x18]
mov dword [esp + 0x54], eax
add ebp, eax
add ebp, edi
rol ebp, 7
mov esi, dword [esp + 0x2c]
add ebp, esi
mov edx, dword [esp + 0x20]
rol edx, 0xa
mov eax, ebp
xor eax, ebx
mov ecx, eax
and ecx, edx
mov edi, edx
mov dword [esp + 0x20], edx
add ecx, ecx
sub edi, ecx
add edi, eax
mov edx, dword [esp]
mov ecx, dword [edx + 0x1c]
mov dword [esp + 0x3c], ecx
mov eax, edi
xor edi, ecx
add edi, esi
and eax, ecx
lea esi, [edi + eax*2]
rol esi, 9
mov ecx, dword [esp + 0x10]
add esi, ecx
rol ebx, 0xa
mov edi, esi
xor edi, ebp
mov eax, dword [edx + 0x20]
mov dword [esp + 0x38], eax
add ecx, eax
add ecx, ebx
add ecx, edi
mov dword [esp + 0x10], ecx
and edi, ebx
mov eax, edi
and eax, 2
mov ecx, edi
or edi, 2
imul edi, eax
xor eax, 2
and ecx, 0xfffffffd
imul ecx, eax
add edi, ecx
mov ecx, dword [esp + 0x10]
sub ecx, edi
rol ecx, 0xb
add ecx, dword [esp + 0x20]
mov dword [esp + 0x10], ecx
rol ebp, 0xa
mov eax, esi
xor eax, ebp
xor eax, ecx
add eax, 0xbc73d5bd
mov edi, dword [edx + 0x24]
mov dword [esp + 0x2c], edi
mov ecx, eax
and ecx, edi
xor eax, edi
lea eax, [eax + ecx*2]
add eax, 0x438c2a43
mov ecx, eax
mov edx, dword [esp + 0x20]
and ecx, edx
xor edx, eax
lea ecx, [edx + ecx*2]
rol ecx, 0xd
mov edx, ebx
not edx
and edx, ecx
mov eax, ecx
xor eax, ebx
add eax, ecx
sub eax, edx
and ecx, ebx
add eax, ecx
rol esi, 0xa
mov ecx, dword [esp + 0x10]
xor ecx, esi
xor ecx, eax
mov edi, dword [esp]
mov edx, dword [edi + 0x28]
mov dword [esp + 0x50], edx
add ebx, edx
add ebx, ecx
rol ebx, 0xe
mov ecx, ebx
and ecx, ebp
xor ebx, ebp
lea ebx, [ebx + ecx*2]
mov ecx, ebx
and ecx, eax
add ecx, ecx
lea edx, [ebx + eax]
mov dword [esp + 0xc], ebx
sub edx, ecx
mov ecx, dword [esp + 0x10]
rol ecx, 0xa
mov dword [esp + 0x10], ecx
xor edx, ecx
mov ecx, dword [edi + 0x2c]
mov dword [esp + 0x20], ecx
add edx, ecx
add ebp, 0x8d9dcd2f
mov ecx, edx
and ecx, ebp
xor ebp, edx
lea ebp, [ebp + ecx*2 + 0x726232d1]
rol ebp, 0xf
add ebp, esi
rol eax, 0xa
mov edi, ebx
xor edi, eax
xor edi, ebp
mov ebx, dword [esp]
mov ecx, dword [ebx + 0x30]
mov dword [esp + 0x4c], ecx
add edi, ecx
mov ecx, edi
and ecx, esi
mov edx, edi
not edx
and edx, esi
xor edi, esi
add edi, esi
sub edi, edx
add edi, ecx
rol edi, 6
add edi, 0xcfaea3db
mov ecx, edi
mov edx, dword [esp + 0x10]
and ecx, edx
xor edi, edx
lea esi, [edi + ecx*2]
add esi, 0x30515c25
mov dword [esp + 8], esi
mov edx, dword [esp + 0xc]
rol edx, 0xa
mov dword [esp + 0xc], edx
mov ecx, ebp
xor ecx, edx
xor ecx, esi
mov esi, dword [ebx + 0x34]
mov dword [esp + 0x58], esi
mov edx, ecx
xor ecx, esi
add ecx, dword [esp + 0x10]
and edx, esi
lea edi, [ecx + edx*2]
rol edi, 7
add edi, eax
mov edx, edi
mov ecx, dword [esp + 8]
and edx, ecx
add edx, edx
sub ecx, edx
rol ebp, 0xa
add ecx, edi
mov esi, ebx
mov edx, dword [ebx + 0x38]
mov dword [esp + 0x48], edx
add eax, edx
add eax, ebp
add eax, ecx
and ecx, ebp
add ecx, ecx
sub eax, ecx
rol eax, 9
mov ebx, dword [esp + 0xc]
mov edx, 0x1fb287bc
sub edx, ebx
sub edx, eax
add eax, ebx
add eax, 0x804d7843
and edx, 0xe04d7843
and eax, 0x1fb287bc
sub eax, edx
mov dword [esp + 0x1c], eax
mov ecx, edi
xor ecx, eax
not ecx
lea eax, [ecx + ecx]
not eax
add eax, ecx
mov ecx, dword [esp + 8]
rol ecx, 0xa
mov dword [esp + 8], ecx
xor eax, ecx
mov edx, dword [esi + 0x3c]
mov dword [esp + 0x10], edx
mov ecx, eax
not ecx
or ecx, edx
add ecx, eax
xor eax, edx
add eax, ebx
lea ecx, [eax + ecx*2]
add ecx, 2
mov eax, edi
shr edi, 0x16
lea esi, [edi + edi]
not esi
add esi, edi
not edi
or esi, edi
shl eax, 0xa
not eax
and esi, eax
mov dword [esp + 0xc], esi
rol ecx, 8
add ecx, ebp
mov dword [esp], ecx
mov eax, ecx
and eax, dword [esp + 0x1c]
or ecx, esi
not ecx
or ecx, eax
add ebp, dword [esp + 0x3c]
add ecx, ebp
add ecx, 0x5a827999
mov ebx, ecx
shl ebx, 7
mov edx, ebx
not edx
mov eax, edx
and eax, 0xfd04b917
mov esi, ebx
and esi, 0x2fb4680
or esi, eax
mov edi, ecx
shr edi, 0x19
mov ebp, edi
and ebp, 0xffffffe8
or ebp, esi
mov eax, edi
not eax
mov esi, eax
and esi, 0xfd04b917
add ebp, esi
and esi, edx
add esi, esi
sub ebp, esi
and ebx, 0x94828480
and edx, 0x6b7d7b48
or edx, ebx
and edi, 0x37
and eax, 0x6b7d7b48
or eax, edi
xor eax, edx
rol ecx, 7
not ecx
or ecx, eax
lea edx, [ecx + ecx]
not edx
add edx, ecx
or edx, ebp
mov ebx, dword [esp + 8]
add edx, ebx
mov ecx, edx
not ecx
lea esi, [edx + ecx*2]
mov eax, 0xfffffffe
sub eax, esi
mov edi, dword [esp]
mov esi, edi
or esi, ecx
lea ecx, [edx + ecx*2]
inc ecx
and ecx, 0x211c56b6
and eax, 0xdee3a949
or eax, ecx
mov ebp, dword [esp + 0x1c]
rol ebp, 0xa
lea ecx, [esi + edx]
inc ecx
xor eax, 0xdee3a949
and eax, ebp
or eax, ecx
not eax
lea ecx, [eax + eax]
not ecx
add ecx, eax
mov eax, ecx
mov esi, dword [esp + 0x30]
and eax, esi
xor ecx, esi
lea eax, [ecx + eax*2]
mov ecx, eax
xor ecx, 0x7fd2feb2
and eax, 0xffd2feb2
lea eax, [ecx + eax*2]
add eax, 0xdaaf7ae7
mov ecx, eax
mov esi, ebx
and ecx, ebx
xor esi, eax
lea esi, [esi + ecx*2]
rol esi, 6
mov eax, dword [esp + 0x58]
mov ebx, dword [esp + 0xc]
sub eax, ebx
not ebx
add ebx, esi
lea ecx, [ebx + ebx]
not ecx
add ecx, ebx
mov esi, ebx
and esi, 0xad99efa2
and ecx, 0x5266105d
or ecx, esi
rol edi, 0xa
mov dword [esp], edi
mov esi, edi
xor esi, ecx
xor ecx, 0xad99efa2
or ecx, edi
xor esi, 0x5266105d
and esi, ecx
mov ecx, ebx
and ecx, edx
or esi, ecx
add esi, eax
add esi, 0x5a827998
rol esi, 8
rol edx, 0xa
add esi, ebp
mov eax, esi
not eax
mov ecx, ebx
or ecx, eax
or eax, edx
mov edi, esi
sub edi, edx
add edi, eax
lea eax, [ecx + esi]
inc eax
not edi
or edi, eax
add ebp, dword [esp + 0x34]
lea eax, [edi + ebp]
add eax, 0x5a827999
mov edi, eax
shl edi, 0xd
mov ecx, eax
shr ecx, 0x13
lea ebp, [ecx + ecx]
not ebp
add ebp, ecx
and ebp, edi
shl eax, 0xe
mov edi, dword [esp]
add ecx, edi
add ecx, eax
sub ecx, ebp
rol ebx, 0xa
mov eax, ecx
mov ebp, ecx
not eax
and eax, ebx
mov ecx, edi
add ecx, dword [esp + 0x50]
add ecx, eax
mov eax, ebp
mov edi, esi
and eax, esi
lea esi, [eax + ecx]
add esi, 0x5a827999
rol esi, 0xb
rol edi, 0xa
mov dword [esp + 0xc], edi
add esi, edx
mov eax, ebp
xor eax, edi
and eax, esi
xor eax, edi
mov edi, eax
mov ecx, dword [esp + 0x54]
xor eax, ecx
add eax, edx
and edi, ecx
lea edx, [eax + edi*2]
add edx, 0x5a827999
rol edx, 9
add edx, ebx
rol ebp, 0xa
mov dword [esp], ebp
mov eax, edx
not eax
and eax, ebp
add ebx, dword [esp + 0x10]
add ebx, eax
mov eax, edx
and eax, esi
add ebx, eax
add ebx, 0x5a827999
mov ecx, esi
shl ecx, 0xa
mov edi, esi
shr edi, 0x16
mov eax, ecx
not eax
lea ebp, [edi + edi]
not ebp
add ebp, edi
xor ebp, eax
and eax, 0xc3d16aea
and ecx, 0x3c2e9400
or ecx, eax
mov eax, edi
or eax, 0xc3d16800
or edi, 0x3c2e9400
xor edi, eax
and edi, ecx
xor edi, eax
rol esi, 0xa
sub esi, ebp
or esi, edi
mov ebp, esi
mov dword [esp + 8], esi
rol ebx, 7
mov esi, dword [esp + 0xc]
add ebx, esi
mov ecx, ebx
and ecx, 2
mov eax, ebx
or eax, 2
imul eax, ecx
xor ecx, 2
mov edi, ebx
and edi, 0xfffffffd
imul edi, ecx
add eax, edi
mov ecx, ebx
and ecx, edx
not eax
add eax, ebx
and eax, ebp
or eax, ecx
add eax, dword [esp + 0x60]
mov ebp, eax
xor ebp, 0xa57d8666
or eax, 0x5a827999
and ebp, eax
add ebp, eax
mov eax, ebp
and eax, esi
mov ecx, eax
and ecx, 0xfffffffd
mov edi, eax
and edi, 2
or eax, 2
imul eax, edi
xor edi, 2
imul edi, ecx
xor ebp, esi
add ebp, eax
add ebp, edi
rol ebp, 0xf
add ebp, dword [esp]
rol edx, 0xa
mov esi, ebp
not esi
mov ecx, ebp
and ecx, edx
mov eax, esi
xor eax, edx
add eax, ebp
not eax
add eax, ecx
mov ecx, ebp
and ecx, ebx
or eax, ecx
mov ecx, eax
mov edi, dword [esp + 0x4c]
xor ecx, edi
or eax, edi
xor ecx, eax
add eax, dword [esp]
add ecx, eax
add ecx, 0x5a827999
rol ecx, 7
add ecx, dword [esp + 8]
mov eax, ecx
not eax
and esi, eax
mov edi, ecx
xor edi, ebp
or edi, esi
rol ebx, 0xa
not edi
and eax, ebx
or eax, edi
mov esi, dword [esp + 8]
add esi, dword [esp + 0x5c]
add eax, esi
add eax, 0x5a827999
rol eax, 0xc
add eax, edx
mov esi, dword [esp + 0x2c]
add edx, esi
rol ebp, 0xa
mov esi, eax
not esi
and esi, ebp
add esi, edx
mov edx, eax
and edx, ecx
add edx, esi
add edx, 0x5a827999
rol edx, 0xf
mov esi, edx
and esi, ebx
xor edx, ebx
lea edx, [edx + esi*2]
rol ecx, 0xa
mov esi, edx
not esi
and esi, ecx
add ebx, dword [esp + 0x28]
add ebx, esi
mov esi, edx
and esi, eax
add ebx, esi
add ebx, 0x5a827999
rol ebx, 9
add ebx, ebp
rol eax, 0xa
mov esi, ebx
not esi
mov edi, ebx
and edi, edx
and esi, eax
add esi, dword [esp + 0x40]
add esi, edi
add esi, 0x5a827999
mov edi, esi
and edi, ebp
xor ebp, esi
lea esi, [edi*2]
add esi, ebp
rol esi, 0xb
add esi, ecx
mov edi, esi
not edi
lea ebp, [esi + esi]
inc ebp
and ebp, edi
lea edi, [esi + esi]
xor edi, 0xfffffffe
and edi, esi
sub edi, ebp
rol edx, 0xa
mov ebp, edi
not ebp
or ebp, edx
add edi, ebp
inc edi
mov ebp, esi
and ebp, ebx
or edi, ebp
mov ebp, dword [esp + 0x48]
add edi, ebp
add edi, 0x5a827999
mov ebp, edi
and ebp, ecx
xor ecx, edi
lea ebp, [ecx + ebp*2]
rol ebp, 7
rol ebx, 0xa
add ebp, eax
mov ecx, ebp
not ecx
mov edi, esi
or edi, ecx
add edi, ebp
inc edi
mov dword [esp], ebp
and ecx, ebx
or ecx, edi
add eax, dword [esp + 0x20]
add ecx, eax
add ecx, 0x5a827999
rol ecx, 0xd
add ecx, edx
mov dword [esp + 8], ecx
rol esi, 0xa
mov eax, ecx
not eax
mov edi, esi
and edi, eax
add edx, dword [esp + 0x38]
add edx, edi
mov edi, ecx
and edi, ebp
add edi, edx
add edi, 0x5a827999
mov edx, edi
shl edx, 0xc
mov ebp, edi
shr ebp, 0x14
mov ecx, ebp
add ecx, ebp
not ecx
add ecx, ebp
and ecx, edx
shl edi, 0xd
add ebp, ebx
add ebp, edi
sub ebp, ecx
mov ecx, dword [esp]
rol ecx, 0xa
mov dword [esp], ecx
or eax, ebp
xor eax, ecx
mov ecx, eax
and ecx, 0x1e8a43cf
xor eax, 0x9e8a43cf
add eax, dword [esp + 0x60]
lea eax, [eax + ecx*2]
mov ecx, eax
xor ecx, 0x6175bc30
and eax, 0xe175bc30
lea eax, [ecx + eax*2]
add eax, 0x6ed9eba2
mov ecx, eax
and ecx, ebx
xor ebx, eax
lea eax, [ebx + ecx*2]
rol eax, 0xb
mov ecx, eax
and ecx, esi
xor eax, esi
lea ebx, [eax + ecx*2]
mov ecx, ebp
not ecx
and ecx, ebx
mov eax, ebx
sub eax, ebp
add eax, ecx
add ecx, ecx
not ecx
add eax, ecx
mov ecx, esi
xor ecx, 0xc39ad1b9
and esi, 0xc39ad1b9
add ecx, dword [esp + 0x50]
lea ecx, [ecx + esi*2]
mov edx, dword [esp + 8]
rol edx, 0xa
mov dword [esp + 8], edx
xor eax, edx
lea esi, [eax + ecx]
add esi, 0xab3f19e8
mov ecx, ebx
and ecx, 0xfffffffd
mov edx, ebx
and edx, 2
mov eax, ebx
or eax, 2
imul eax, edx
xor edx, 2
imul edx, ecx
add eax, edx
mov edi, eax
not edi
add edi, ebx
sub eax, ebx
mov ecx, eax
and ecx, 0x718310b7
and edi, 0x8e7cef48
or edi, ecx
rol esi, 0xd
mov edx, dword [esp]
add esi, edx
mov ecx, esi
not ecx
or eax, ecx
lea ecx, [eax + eax]
not ecx
add ecx, eax
xor edi, esi
xor edi, 0x718310b7
or ecx, edi
rol ebp, 0xa
mov dword [esp + 0xc], ebp
xor ecx, ebp
add edx, dword [esp + 0x48]
lea eax, [ecx + edx]
add eax, 0x6ed9eba1
rol eax, 6
add eax, 0x6bc58ee3
mov ecx, eax
mov edx, dword [esp + 8]
and ecx, edx
xor eax, edx
lea edx, [eax + ecx*2]
lea edi, [eax + ecx*2]
add edi, 0x943a711d
mov ebp, ebx
rol ebx, 0xa
shl ebp, 0xa
add ebx, ebp
mov eax, ebx
not eax
and eax, ebp
not ebp
and ebp, ebx
sub ebp, eax
lea eax, [esi + esi]
not eax
add eax, esi
lea ecx, [eax + eax]
not ecx
add ecx, eax
mov dword [esp], edi
and ecx, edi
xor eax, edi
add eax, edx
sub eax, ecx
lea ebx, [eax + eax]
add ebx, 0x2874e23a
sub ebx, eax
add eax, 0x943a711d
add ebx, 0x6bc58ee3
and eax, 0x49db7722
and ebx, 0xb62488dd
or ebx, eax
mov ecx, ebp
xor ecx, 0xb62488dd
mov eax, ebp
xor eax, ebx
not eax
and eax, ecx
mov edi, dword [esp + 8]
add edi, dword [esp + 0x30]
add edi, ecx
xor ebx, 0xb62488dd
add edi, ebx
mov ecx, edi
add eax, eax
sub ecx, eax
mov eax, 0x6bc58ee2
sub eax, edx
add ecx, 0x6ed9eba1
rol ecx, 7
rol esi, 0xa
mov edx, dword [esp + 0xc]
add ecx, edx
or eax, ecx
mov edi, ecx
mov dword [esp + 8], ecx
xor eax, esi
add eax, dword [esp + 0x2c]
mov ecx, eax
or ecx, 0x6ed9eba0
and eax, 0x6ed9eba0
lea ebx, [ecx + eax]
inc ebx
mov eax, ebx
not eax
mov ecx, ebx
and ecx, edx
and eax, edx
xor ebx, edx
add ebx, edx
sub ebx, eax
add ebx, ecx
rol ebx, 0xe
add ebx, ebp
mov ecx, dword [esp]
rol ecx, 0xa
mov dword [esp], ecx
mov eax, edi
not eax
or eax, ebx
xor eax, ecx
mov edi, dword [esp + 0x10]
mov edx, 0xc3b9f4f5
sub edx, edi
sub edx, eax
and edx, 0x460b0a
sub ebp, edx
add eax, edi
add eax, 0x460b0a
and eax, 0xffb9f4f5
add ebp, eax
add ebp, 0x6ed9eba1
rol ebp, 9
add ebp, esi
mov ecx, dword [esp + 8]
rol ecx, 0xa
mov dword [esp + 8], ecx
mov eax, ebx
not eax
or eax, ebp
xor eax, ecx
add esi, dword [esp + 0x38]
add eax, esi
add eax, 0x6ed9eba1
rol eax, 0xd
mov edi, dword [esp]
add eax, edi
mov dword [esp + 0xc], eax
mov esi, eax
not esi
mov ecx, ebp
or ecx, esi
sub eax, ebp
add eax, ecx
rol ebx, 0xa
add edi, dword [esp + 0x34]
add edi, ebx
add edi, eax
and eax, ebx
add eax, eax
sub edi, eax
mov edx, edi
mov edi, dword [esp + 0xc]
lea eax, [edi + edi]
inc eax
and eax, esi
lea ecx, [edi + edi]
xor ecx, 0xfffffffe
and ecx, edi
sub ecx, eax
mov eax, edx
add eax, 0x6ed9eba1
rol eax, 0xf
rol ebp, 0xa
mov edx, dword [esp + 8]
add eax, edx
or ecx, eax
xor ecx, ebp
add edx, dword [esp + 0x40]
add ecx, edx
add ecx, 0x6ed9eba1
mov dword [esp + 8], ecx
mov edx, eax
and eax, 2
mov esi, edx
or esi, 2
imul esi, eax
xor eax, 2
mov edi, edx
mov dword [esp], edx
and edi, 0xfffffffd
imul edi, eax
add esi, edi
xor esi, 0xfffffffe
mov ecx, 0xfffffffe
sub ecx, esi
sub ecx, edx
mov edx, dword [esp + 8]
rol edx, 0xe
add edx, ebx
mov edi, edx
not edi
mov dword [esp + 0x1c], edi
and edi, 0xd343a2b2
mov eax, edx
xor eax, 0xd343a2b2
or eax, edi
mov edi, dword [esp + 0xc]
rol edi, 0xa
mov dword [esp + 0xc], edi
xor eax, ecx
xor eax, 0x2cbc5d4d
mov ecx, dword [esp]
add ecx, esi
inc ecx
and ecx, edx
mov dword [esp + 8], edx
or ecx, eax
xor ecx, edi
mov eax, dword [esp + 0x3c]
add eax, ecx
add eax, 0x6ed9eba1
mov ecx, eax
and ecx, ebx
xor ebx, eax
lea esi, [ebx + ecx*2]
mov eax, dword [esp + 0x1c]
lea ecx, [edx + eax*2]
inc ecx
rol esi, 8
add esi, ebp
mov eax, esi
xor eax, ecx
not ecx
and ecx, esi
add eax, esi
sub eax, ecx
mov edx, dword [esp]
rol edx, 0xa
mov ecx, edx
mov dword [esp], edx
not ecx
add ebp, dword [esp + 0x5c]
add ebp, edx
add ebp, eax
or eax, ecx
sub ecx, eax
lea ebx, [ecx*2 + 0x6ed9eba1]
add ebx, ebp
mov eax, esi
and eax, 0xfffffffd
mov ecx, esi
and ecx, 2
mov edi, esi
or edi, 2
imul edi, ecx
xor ecx, 2
imul ecx, eax
rol ebx, 0xd
add edi, ecx
mov eax, edi
not eax
add eax, esi
sub edi, esi
mov ecx, edi
and ecx, 0x5d61bf3b
and eax, 0xa29e40c4
or eax, ecx
mov ecx, dword [esp + 0xc]
add ebx, ecx
mov ebp, dword [esp + 8]
rol ebp, 0xa
xor eax, ebx
xor eax, 0x5d61bf3b
not edi
and edi, ebx
or edi, eax
xor edi, ebp
mov eax, ecx
add eax, dword [esp + 0x54]
add eax, edi
add eax, 0x6ed9eba1
mov edx, eax
shl edx, 6
shr eax, 0x1a
lea ecx, [eax + eax]
not ecx
add ecx, eax
mov edi, dword [esp]
add eax, edi
add eax, edx
not edx
or edx, ecx
not edx
add edx, eax
mov eax, edx
and eax, ebx
mov ecx, ebx
xor ecx, edx
not ecx
add ecx, edx
sub ecx, eax
rol esi, 0xa
xor ecx, esi
mov eax, edi
add eax, dword [esp + 0x58]
add eax, ecx
add eax, 0x6ed9eba1
rol eax, 5
mov edi, ebp
mov ecx, ebp
neg ecx
dec ebp
and ebp, eax
not eax
and eax, ecx
rol ebx, 0xa
sub ebp, eax
lea eax, [edx + edx]
not eax
add eax, edx
or eax, ebp
mov ecx, edi
add ecx, dword [esp + 0x20]
add ecx, ebx
add ecx, eax
mov dword [esp + 8], ecx
and eax, ebx
mov ecx, eax
or ecx, 0xfffffffd
inc ecx
mov edi, eax
and edi, 0xfffffffd
imul edi, ecx
mov ecx, eax
and ecx, 2
or eax, 2
imul eax, ecx
sub edi, eax
mov eax, dword [esp + 8]
add eax, edi
add eax, 0x6ed9eba1
rol eax, 0xc
add eax, esi
rol edx, 0xa
mov ecx, ebp
not ecx
or ecx, eax
xor ecx, edx
add esi, dword [esp + 0x28]
add ecx, esi
add ecx, 0x6ed9eba1
rol ecx, 7
add ecx, ebx
rol ebp, 0xa
mov edi, eax
not edi
or edi, ecx
mov esi, ecx
mov ecx, dword [esp + 0x4c]
add ecx, ebp
add ecx, edi
and edi, ebp
add edi, edi
sub ecx, edi
mov edi, 0x9126145f
sub edi, ecx
xor edi, ebx
add ecx, 0x6ed9eba0
and ecx, ebx
add ecx, ecx
sub ecx, edi
rol ecx, 5
add ecx, edx
rol eax, 0xa
mov edi, eax
not edi
mov ebx, ecx
not ebx
or ebx, eax
add ebx, ecx
inc ebx
and edi, esi
or edi, ebx
add edx, dword [esp + 0x34]
lea ebx, [edi + edx]
add ebx, 0x8f1bbcdc
rol esi, 0xa
mov edx, ecx
xor edx, esi
mov dword [esp + 0xc], esi
mov edi, esi
not edi
or edi, ecx
add edx, edi
inc edx
rol ebx, 0xb
add ebx, ebp
mov edi, ebx
not edi
or edi, esi
add edi, ebx
inc edi
or edx, edi
add ebp, dword [esp + 0x2c]
add edx, ebp
add edx, 0x8f1bbcdc
rol edx, 0xc
add edx, eax
mov dword [esp + 8], edx
rol ecx, 0xa
mov ebp, ecx
not ebp
mov edi, edx
xor edi, ecx
and edx, ebp
mov esi, dword [esp + 8]
add esi, edi
mov dword [esp], esi
sub dword [esp], edx
and ebp, ebx
or edi, ebp
not edi
and edi, dword [esp]
add eax, dword [esp + 0x20]
add eax, ebp
sub eax, edi
lea ebp, [eax + edi*2]
add ebp, 0x8f1bbcdc
rol ebx, 0xa
mov eax, ebx
not eax
mov esi, dword [esp + 8]
mov edx, esi
or edx, ebx
sub eax, esi
add eax, edx
mov edx, esi
xor edx, 1
add eax, edx
mov edx, esi
and edx, 1
lea eax, [eax + edx*2]
rol ebp, 0xe
mov edi, dword [esp + 0xc]
add ebp, edi
mov edx, ebp
and edx, ebx
or eax, edx
add edi, dword [esp + 0x50]
add edi, eax
add edi, 0x8f1bbcdc
rol edi, 0xf
add edi, ecx
rol esi, 0xa
mov eax, edi
and eax, esi
lea edx, [esi + esi]
not edx
add edx, esi
and edx, ebp
or edx, eax
add ecx, dword [esp + 0x5c]
add ecx, edx
add ecx, 0x8f1bbcdc
rol ecx, 0xe
add ecx, ebx
rol ebp, 0xa
mov eax, ebp
not eax
and eax, edi
add ebx, dword [esp + 0x38]
add ebx, eax
mov eax, ecx
and eax, ebp
lea edx, [eax + ebx]
add edx, 0x8f1bbcdc
rol edx, 0xf
add edx, esi
mov dword [esp], edx
rol edi, 0xa
mov eax, edi
not eax
and edx, edi
and eax, ecx
xor edx, 0xbe63f114
xor eax, 0xbe63f114
mov ebx, edx
and ebx, eax
add eax, edx
add ebx, ebx
sub eax, ebx
mov edx, eax
mov ebx, dword [esp + 0x4c]
xor eax, ebx
add eax, esi
and edx, ebx
lea edx, [eax + edx*2]
add edx, 0x8f1bbcdc
rol ecx, 0xa
mov eax, ecx
xor eax, 0x7dca6c36
lea esi, [ecx + ecx]
and esi, 0x46b2792
sub eax, esi
rol edx, 9
add edx, ebp
mov esi, edx
and esi, ecx
add eax, 0x823593c9
and eax, dword [esp]
or eax, esi
mov esi, eax
and esi, 0xfa33db2e
xor eax, 0xfa33db2e
add eax, dword [esp + 0x30]
lea eax, [eax + esi*2]
mov esi, eax
xor esi, 0x5cc24d1
add esi, ebp
and eax, 0x5cc24d1
lea ebx, [esi + eax*2]
add ebx, 0x8f1bbcdd
rol ebx, 8
mov esi, dword [esp]
rol esi, 0xa
mov dword [esp], esi
mov ebp, edx
not ebp
or ebp, esi
lea eax, [edx + edx]
not eax
add eax, edx
or eax, esi
xor ebp, eax
not eax
and eax, edx
or eax, ebp
add ebx, edi
mov esi, ebx
and esi, dword [esp]
not eax
or eax, esi
add edi, dword [esp + 0x58]
add edi, esi
sub edi, eax
add edi, 0x8f1bbcdb
rol edi, 9
add edi, ecx
rol edx, 0xa
mov eax, edi
and eax, edx
mov esi, ebx
not esi
or esi, edx
lea ebp, [eax + eax]
not ebp
add ebp, eax
xor eax, esi
and ebp, esi
or ebp, eax
not ebp
add ecx, dword [esp + 0x60]
lea esi, [ecx + ebp]
add esi, 0x8f1bbcdc
rol esi, 0xe
mov ebp, dword [esp]
add esi, ebp
rol ebx, 0xa
mov ecx, esi
not ecx
mov eax, esi
xor eax, ecx
and eax, ebx
xor eax, ecx
not eax
or eax, ecx
mov ecx, edi
not ecx
or ecx, ebx
and ecx, eax
neg ecx
mov eax, dword [esp + 0x3c]
add eax, ecx
add eax, 0x8f1bbcdb
mov ecx, eax
and ecx, ebp
xor ebp, eax
lea eax, [ecx*2]
add eax, ebp
rol eax, 5
add eax, edx
rol edi, 0xa
mov ecx, eax
xor ecx, esi
and ecx, edi
xor ecx, esi
mov ebp, ecx
xor ecx, 0x30543ab0
add edx, dword [esp + 0x10]
add edx, ecx
and ebp, 0x30543ab0
lea ecx, [edx + ebp*2]
add ecx, 0x5ec7822c
rol ecx, 6
add ecx, ebx
rol esi, 0xa
mov edx, esi
not edx
and edx, eax
add ebx, dword [esp + 0x48]
add ebx, edx
mov edx, ecx
and edx, esi
lea ebp, [edx + ebx]
add ebp, 0x8f1bbcdc
rol ebp, 8
add ebp, edi
rol eax, 0xa
mov edx, ebp
not edx
or edx, eax
add edx, ebp
inc edx
lea ebx, [eax + eax]
not ebx
add ebx, eax
lea ebx, [eax + ebx*2]
inc ebx
and ebx, ecx
or ebx, edx
add edi, dword [esp + 0x28]
lea edx, [ebx + edi]
add edx, 0x8f1bbcdc
rol edx, 6
rol ecx, 0xa
add edx, esi
mov edi, edx
and edi, ecx
mov ebx, ecx
mov dword [esp + 8], ecx
not ebx
and ebx, ebp
add ebx, dword [esp + 0x54]
add edi, ebx
add edi, 0x8f1bbcdc
add esi, 0xadacdd5d
mov ebx, edi
and ebx, esi
xor esi, edi
lea ebx, [esi + ebx*2]
add ebx, 0x525322a3
rol ebx, 5
add ebx, eax
rol ebp, 0xa
mov esi, ebp
not esi
and esi, edx
add eax, dword [esp + 0x40]
add eax, esi
mov esi, ebx
and esi, ebp
add eax, esi
add eax, 0x8f1bbcdc
rol eax, 0xc
add eax, ecx
mov ecx, eax
rol edx, 0xa
mov eax, edx
not eax
or eax, ebx
mov edi, ecx
xor edi, eax
mov dword [esp], ecx
mov esi, ecx
sub esi, edi
mov edi, ecx
not edi
and edi, eax
add esi, edi
or eax, ecx
not esi
and esi, eax
mov eax, dword [esp + 8]
add eax, dword [esp + 0x30]
lea ecx, [esi + eax]
add ecx, 0xa953fd4e
rol ecx, 9
mov eax, ecx
and eax, ebp
mov esi, eax
and esi, 0xfffffffd
mov edi, eax
and edi, 2
or eax, 2
imul eax, edi
xor edi, 2
imul edi, esi
xor ecx, ebp
add ecx, eax
add ecx, edi
rol ebx, 0xa
mov eax, ebx
xor eax, 0xef52611a
lea esi, [ebx + ebx]
and esi, 0x215b3dca
sub eax, esi
add eax, 0x10ad9ee5
mov edi, dword [esp]
or eax, edi
xor eax, ecx
not eax
lea esi, [eax + eax]
not esi
add eax, dword [esp + 0x5c]
add eax, esi
mov esi, eax
and esi, 0x2c79c845
xor eax, 0x2c79c845
lea eax, [eax + esi*2]
add eax, 0x7cda3509
mov esi, eax
xor esi, ebp
or ebp, eax
xor ebp, esi
lea eax, [esi + ebp*2]
rol eax, 0xf
mov esi, edx
neg esi
lea ebp, [edx - 1]
and ebp, eax
not eax
and eax, esi
sub ebp, eax
rol edi, 0xa
mov dword [esp], edi
not edi
mov eax, ecx
or eax, edi
mov esi, ebp
and esi, eax
add edx, dword [esp + 0x28]
add edx, eax
add edx, ebp
add esi, esi
sub edx, esi
add edx, 0xa953fd4e
rol edx, 5
rol ecx, 0xa
add edx, ebx
mov eax, ecx
not eax
or eax, ebp
mov esi, edx
and esi, eax
add ebx, dword [esp + 0x2c]
add ebx, eax
add ebx, edx
add esi, esi
sub ebx, esi
add ebx, 0xa953fd4e
rol ebx, 0xb
and edi, ebx
mov eax, ebx
mov esi, dword [esp]
xor eax, esi
add eax, ebx
sub eax, edi
and ebx, esi
add eax, ebx
mov dword [esp + 0xc], eax
rol ebp, 0xa
mov esi, ebp
not esi
or esi, edx
mov edi, eax
and edi, esi
mov ebx, dword [esp]
add ebx, dword [esp + 0x3c]
add ebx, esi
add ebx, eax
add edi, edi
sub ebx, edi
mov dword [esp], ebx
rol edx, 0xa
lea esi, [edx + edx]
not esi
add esi, edx
mov edi, eax
and edi, edx
mov ebx, eax
and ebx, esi
lea ebx, [edi + ebx*2]
lea edi, [esi + eax*2]
not edi
add edi, ebx
mov eax, dword [esp]
add eax, 0xa953fd4e
rol eax, 6
add eax, ecx
mov esi, edi
xor esi, 0x969ac1d0
mov ebx, eax
xor ebx, 0x969ac1d0
and ebx, esi
mov esi, eax
xor esi, 0x69653e2f
xor edi, 0x69653e2f
and edi, esi
or edi, ebx
mov esi, edi
mov ebx, dword [esp + 0x4c]
xor edi, ebx
add edi, ecx
and esi, ebx
lea ecx, [edi + esi*2]
add ecx, 0xa953fd4e
rol ecx, 8
add ecx, ebp
mov esi, dword [esp + 0xc]
rol esi, 0xa
mov dword [esp + 0xc], esi
not esi
or esi, eax
mov edi, ecx
and edi, esi
add ebp, dword [esp + 0x40]
add ebp, esi
add ebp, ecx
add edi, edi
sub ebp, edi
add ebp, 0xa953fd4e
rol ebp, 0xd
add ebp, edx
mov ebx, ebp
mov dword [esp + 0x1c], ebp
rol eax, 0xa
mov dword [esp], eax
not eax
or eax, ecx
and ebx, eax
mov esi, ebx
or esi, 0xfffffffd
inc esi
mov ebp, ebx
and ebp, 0xfffffffd
imul ebp, esi
mov esi, ebx
and esi, 2
or ebx, 2
imul ebx, esi
sub ebp, ebx
add eax, dword [esp + 0x50]
add eax, dword [esp + 0x1c]
lea edi, [ebp + eax - 0x56ac02b2]
mov ebx, 0x56ac02b1
sub ebx, eax
sub ebx, ebp
mov esi, edi
xor esi, edx
or edi, edx
xor edi, esi
and ebx, edx
add esi, edx
sub esi, ebx
add esi, edi
mov ebp, esi
mov edx, ecx
shl edx, 0xa
shr ecx, 0x16
lea ebx, [ecx + ecx]
not ebx
add ebx, ecx
mov esi, ebx
and esi, 0x72c71726
add ebx, ecx
and ecx, 0xd9
xor edx, 0x72c71726
mov edi, esi
and edi, edx
or edx, ecx
add edx, esi
add edi, edi
sub edx, edi
not ebx
or ebx, edx
mov dword [esp + 8], ebx
rol ebp, 0xc
mov eax, dword [esp + 0xc]
add ebp, eax
lea ecx, [ebx + ebx]
not ecx
add ecx, ebx
mov ebx, dword [esp + 0x1c]
or ecx, ebx
xor ecx, ebp
mov edx, dword [esp + 0x48]
add ecx, edx
add ecx, 0x33fc9f6
mov edx, ecx
xor edx, 0xfcc03609
and ecx, 0xfcc03609
lea ecx, [edx + ecx*2]
add ecx, 0xa953fd4f
mov edx, ecx
and edx, eax
xor eax, ecx
lea esi, [eax + edx*2]
mov eax, esi
shl eax, 5
mov ecx, eax
not ecx
mov edx, ecx
or ecx, 0x4f5da991
add eax, ecx
inc eax
and edx, 0xb0a2566e
mov ecx, eax
not ecx
and ecx, edx
xor eax, edx
add eax, edx
sub eax, ecx
shr esi, 0x1b
xor esi, 0xb0a2566e
mov ecx, eax
and ecx, esi
mov edi, dword [esp]
add esi, edi
add esi, eax
add ecx, ecx
mov edx, ebx
rol edx, 0xa
mov dword [esp + 0x1c], edx
sub esi, ecx
mov dword [esp + 0x44], esi
mov eax, edx
not eax
and eax, 0x16d365ab
mov ecx, edx
xor ecx, 0x16d365ab
or ecx, eax
xor ecx, 0xe92c9a54
or ecx, ebp
xor ecx, esi
mov eax, edi
add eax, dword [esp + 0x34]
add eax, ecx
add eax, 0xa953fd4e
mov dword [esp + 0xc], eax
mov ecx, ebp
mov dword [esp + 0x64], ebp
shl ecx, 0xa
mov eax, ecx
not eax
mov edx, eax
and edx, 0xfd777598
mov esi, ecx
and esi, 0x2888800
or esi, edx
mov edx, ebp
shr edx, 0x16
mov ebx, edx
not ebx
mov edi, ebx
and edi, 0xfd777598
mov ebp, edx
and ebp, 0x267
or ebp, edi
xor ebp, esi
mov dword [esp + 0x24], ebp
and ecx, 0xfa6b3400
and eax, 0x594ca7f
or eax, ecx
and edx, 0x180
and ebx, 0x594ca7f
or ebx, edx
xor ebx, eax
mov dword [esp + 0x7c], ebx
mov ebp, dword [esp + 0x68]
mov eax, ebp
not eax
and eax, dword [esp + 0x74]
mov edi, dword [esp + 0x14]
mov ecx, edi
not ecx
add ecx, eax
mov esi, dword [esp + 0x6c]
mov edx, esi
not edx
and edx, ecx
mov ecx, edi
sub ecx, eax
and ecx, esi
add ecx, dword [esp + 0x78]
add ecx, edx
mov eax, dword [esp + 0x28]
lea ebx, [eax + ecx]
add ebx, 0x50a28be6
rol ebx, 8
mov ecx, dword [esp + 0x70]
add ebx, ecx
mov edi, dword [esp + 4]
mov eax, edi
not eax
or eax, esi
xor eax, ebx
add eax, ecx
mov ecx, dword [esp + 0x48]
lea esi, [ecx + eax]
add esi, 0x50a28be6
rol esi, 9
mov eax, ebx
not eax
mov edx, dword [esp + 0x18]
or eax, edx
mov ecx, ebx
sub ecx, edx
add ecx, eax
mov edx, ebp
add esi, ebp
xor ecx, esi
mov ebp, esi
mov dword [esp], esi
mov eax, dword [esp + 0x3c]
add eax, edx
lea esi, [ecx + eax]
add esi, 0x50a28be6
rol esi, 9
add esi, edi
rol ebx, 0xa
mov dword [esp + 0x14], ebx
mov eax, ebx
not eax
or eax, ebp
mov ecx, esi
not ecx
or ecx, eax
mov ebx, esi
sub ebx, eax
add ebx, ecx
lea eax, [ecx + ecx]
not eax
add eax, ecx
not ebx
or eax, ebx
mov ecx, edi
add ecx, dword [esp + 0x5c]
add eax, ecx
add eax, 0x50a28be6
mov ecx, eax
shl ecx, 0xb
mov ebx, ecx
not ebx
mov ebp, ebx
or ebx, 0xa39d6f4c
add ecx, ebx
inc ecx
and ebp, 0x5c6290b3
or ecx, ebp
shr eax, 0x15
xor ecx, eax
xor ecx, 0x5c6290b3
mov eax, ecx
or eax, 0x691a68ed
and ecx, 0x691a68ed
mov edx, dword [esp + 0x18]
add eax, edx
lea ebp, [eax + ecx]
add ecx, eax
add ecx, 0x96e59713
mov eax, dword [esp]
rol eax, 0xa
mov ebx, esi
and ebx, eax
mov dword [esp], eax
not eax
mov edi, esi
or edi, eax
xor eax, esi
add eax, esi
sub eax, ebx
and eax, edi
mov ebx, 0x691a68ec
sub ebx, ebp
mov edi, ecx
or edi, eax
mov ebp, ebx
sub ebp, eax
add ebp, edi
not ebp
not eax
and eax, ebx
or eax, ebp
lea edi, [eax + eax]
not edi
add eax, dword [esp + 0x2c]
add eax, edi
mov edi, edx
and edi, 0x1872317f
xor edx, 0x1872317f
lea edi, [edx + edi*2]
mov ebp, eax
xor eax, 0x50a28be6
add edi, eax
and ebp, 0xd0a28be6
lea edx, [edi + ebp*2]
add edx, 0xe78dce81
mov ebp, esi
rol ebp, 0xa
mov dword [esp + 4], ebp
mov edi, ebp
and edi, 0xe4372372
xor ebp, 0x64372372
lea eax, [edi*2 - 0x64372372]
add eax, ebp
and eax, ebx
rol edx, 0xd
mov esi, dword [esp + 0x14]
add edx, esi
mov edi, edx
not edi
mov ebx, edi
and ebx, 0xe70a083f
or edi, 0x18f5f7c0
add edi, edx
inc edi
or edi, ebx
mov ebp, eax
not ebp
mov ebx, ebp
or ebx, 0xe70a083f
add eax, ebx
inc eax
and ebp, 0x18f5f7c0
or ebp, eax
xor ebp, edi
mov eax, esi
add eax, dword [esp + 0x40]
lea edi, [eax + ebp]
add edi, 0x50a28be6
rol ecx, 0xa
mov ebx, ecx
xor ebx, 0x62053001
mov eax, ecx
mov ebp, ecx
mov dword [esp + 0x14], ecx
xor eax, 0x6365b51b
and ebx, 0x6365b51b
mov esi, ebx
xor esi, 0xfe9f7ae5
and esi, eax
xor ebx, 0x160851a
or ebx, esi
xor ebx, edx
xor ebx, 0x9c9a4ae4
not ebp
and ebp, edx
or ebp, ebx
rol edi, 0xf
mov eax, dword [esp]
add edi, eax
lea ebx, [edi + edi]
not ebx
add ebx, edi
and ebx, ebp
not ebp
and ebp, edi
mov dword [esp + 0x18], edi
add eax, dword [esp + 0x20]
add eax, ebp
lea ecx, [ebx + eax]
add ecx, 0x50a28be6
rol ecx, 0xf
mov esi, dword [esp + 4]
add ecx, esi
rol edx, 0xa
lea ebx, [edx + edx]
not ebx
add ebx, edx
or ebx, edi
mov eax, ebx
not eax
mov edi, ecx
and edi, ebx
and eax, ecx
xor ebx, ecx
add ebx, ecx
mov ebp, ecx
not ebx
add ebx, eax
or ebx, edi
not ebx
add esi, dword [esp + 0x30]
lea ecx, [ebx + esi]
add ecx, 0x50a28be6
rol ecx, 5
mov eax, dword [esp + 0x18]
rol eax, 0xa
mov dword [esp + 0x18], eax
mov esi, dword [esp + 0x14]
add ecx, esi
not eax
or eax, ebp
mov edi, ecx
and edi, eax
add esi, dword [esp + 0x58]
add esi, eax
add esi, ecx
add edi, edi
rol ebp, 0xa
sub esi, edi
mov edi, ebp
add edi, ebp
not edi
add edi, ebp
mov dword [esp], ebp
mov eax, edi
xor eax, 0x1a5a8f2d
or edi, 0xe5a570d2
and edi, eax
mov eax, ebp
and eax, 0x1a5a8f2d
or edi, eax
mov ebp, ecx
xor ebp, 0x1a5a8f2d
mov eax, ebp
and eax, edi
add ebp, edi
add esi, 0x50a28be6
rol esi, 7
add eax, eax
sub ebp, eax
mov ebx, dword [esp]
not ebx
and ebx, ecx
or ebx, ebp
add esi, edx
mov edi, esi
and edi, ebx
mov eax, edi
and eax, 0xfffffffd
mov ebp, edi
and ebp, 2
or edi, 2
imul edi, ebp
xor ebp, 2
imul ebp, eax
add edi, ebp
add ebx, esi
mov eax, edi
xor eax, ebx
not edi
and edi, ebx
add edx, dword [esp + 0x54]
sub edx, eax
lea eax, [edx + edi*2]
add eax, 0x50a28be6
rol eax, 7
mov ebx, dword [esp + 0x18]
add eax, ebx
rol ecx, 0xa
lea edx, [ecx + ecx]
not edx
add edx, ecx
or edx, esi
xor edx, eax
mov edi, dword [esp + 0x10]
add edx, edi
add edx, 0x50a28be6
mov edi, edx
and edi, ebx
xor ebx, edx
lea edx, [ebx + edi*2]
rol edx, 8
mov ebx, dword [esp]
add edx, ebx
add edx, 0xcdb45ff5
mov edi, edx
xor edi, 0x324ba00a
and edx, 0x324ba00a
lea ebp, [edi + edx*2]
inc ebp
rol esi, 0xa
lea edx, [esi + esi]
not edx
add edx, esi
mov edi, esi
and edi, 0x524649b5
and edx, 0xadb9b64a
or edx, edi
xor edx, 0x524649b5
or edx, eax
xor edx, ebp
mov edi, ebx
add edi, dword [esp + 0x38]
lea ebx, [edx + edi]
add ebx, 0x50a28be6
rol eax, 0xa
mov edx, eax
and edx, 1
xor eax, 1
lea edi, [eax + edx*2]
mov dword [esp], edi
lea edx, [eax + edx*2]
dec edx
rol ebx, 0xb
lea eax, [edi + edi]
add eax, 0xfffffffe
not eax
add eax, edi
dec eax
and edx, 0xb930d23d
and eax, 0x46cf2dc2
or eax, edx
add ebx, ecx
xor eax, 0xb930d23d
or eax, ebp
xor eax, ebx
add eax, dword [esp + 0x34]
mov edx, eax
xor edx, 0xf44c004c
add edx, ecx
and eax, 0xf44c004c
rol ebp, 0xa
mov dword [esp + 4], ebp
lea edx, [edx + eax*2]
add edx, 0x5c568b9a
mov eax, ebp
add eax, ebp
not eax
add eax, ebp
mov edi, ebx
and edi, eax
add eax, ebx
sub eax, edi
sub eax, edi
or eax, edi
rol edx, 0xe
add edx, esi
mov edi, edx
not edi
lea edi, [edx + edi*2]
inc edi
xor edi, edx
and edi, eax
xor edi, edx
mov ebp, dword [esp + 0x50]
lea eax, [ebp - 1]
and eax, edi
not edi
neg ebp
and ebp, edi
sub esi, ebp
lea ecx, [eax + esi]
add ecx, 0x50a28be6
mov eax, ecx
shl eax, 0xe
mov edi, ecx
shr edi, 0x12
shl ecx, 0xf
not ecx
add ecx, eax
mov ebp, ecx
and ebp, eax
xor eax, ecx
mov esi, dword [esp]
add esi, edi
dec esi
sub esi, ecx
add esi, eax
add esi, ebp
rol ebx, 0xa
mov dword [esp + 0x18], ebx
mov eax, ebx
xor eax, 0x15271df4
lea ecx, [ebx + ebx]
and ecx, 0xd5b1c416
sub eax, ecx
add eax, 0xead8e20b
or eax, edx
xor eax, esi
mov ecx, dword [esp + 0x60]
mov edi, dword [esp]
add ecx, edi
dec ecx
lea edi, [eax + ecx]
add edi, 0x50a28be6
rol edx, 0xa
mov ecx, edx
xor ecx, 0x66e977da
lea eax, [edx + edx]
and eax, 0x322d104a
sub ecx, eax
rol edi, 0xc
mov ebx, dword [esp + 4]
add edi, ebx
add ecx, 0x99168825
or ecx, esi
mov ebp, edi
xor ebp, ecx
not ecx
lea eax, [ecx + ecx]
not eax
add eax, ecx
and ecx, edi
add ebp, edi
sub ebp, ecx
and eax, edi
not eax
and eax, ebp
mov ecx, ebx
add ecx, dword [esp + 0x4c]
lea ebx, [eax + ecx]
add ebx, 0x50a28be6
rol ebx, 6
rol esi, 0xa
add ebx, dword [esp + 0x18]
mov eax, ebx
and eax, esi
lea ecx, [edi + edi]
not ecx
add ecx, edi
or ecx, esi
not ecx
or ecx, eax
mov ebp, dword [esp + 0x64]
rol ebp, 0xa
mov eax, dword [esp + 0x18]
add eax, dword [esp + 0x54]
add eax, ecx
add eax, 0x5c4dd124
not ebp
rol eax, 9
or ebp, dword [esp + 0x7c]
add eax, edx
mov ecx, eax
mov dword [esp + 4], eax
rol edi, 0xa
mov eax, edi
not eax
and eax, ebx
add edx, dword [esp + 0x20]
add edx, eax
mov eax, ecx
and eax, edi
lea ecx, [eax + edx]
add ecx, 0x5c4dd124
mov eax, ebp
add eax, ebp
not eax
rol ecx, 0xd
add eax, ebp
mov dword [esp + 0x18], eax
mov edx, ecx
or edx, 0xb425c508
and ecx, 0xb425c508
add edx, esi
rol ebx, 0xa
lea eax, [edx + ecx]
mov dword [esp + 0x14], eax
add ecx, edx
add ecx, 0x4bda3af8
mov dword [esp], ecx
and ecx, ebx
lea eax, [ebx + ebx]
not eax
add eax, ebx
and eax, dword [esp + 4]
or eax, ecx
add esi, dword [esp + 0x60]
lea ecx, [eax + esi]
add ecx, 0x5c4dd124
mov ebp, ecx
shr ecx, 0x11
mov edx, ecx
not edx
mov esi, ecx
and esi, 0x962
mov eax, edx
and eax, 0x6126400
add eax, esi
add eax, 0x88811299
and edx, 0x88811299
and ecx, 4
add ecx, edx
add ecx, 0x60688962
shl ebp, 0xf
xor ecx, ebp
xor ecx, eax
mov esi, dword [esp + 4]
rol esi, 0xa
mov eax, 0xb425c507
mov ebp, dword [esp + 0x14]
sub eax, ebp
lea edx, [esi + esi]
not edx
add edx, esi
or edx, eax
lea eax, [edx + ebp]
add eax, 0x4bda3af9
xor ecx, 0x667aed62
add ecx, edi
mov edx, ecx
and edx, esi
mov ebp, esi
or eax, edx
add edi, dword [esp + 0x3c]
add eax, edi
add eax, 0x5c4dd124
mov esi, eax
shl esi, 7
shr eax, 0x19
mov edi, esi
and edi, 0xfec11680
xor edi, 0xfec116d9
and esi, 0x13ee900
xor eax, 0xfec116d9
add esi, ebx
add esi, eax
add esi, edi
and edi, eax
add edi, edi
sub esi, edi
mov edx, dword [esp]
rol edx, 0xa
mov dword [esp], edx
mov eax, edx
not eax
and eax, ecx
add ebx, dword [esp + 0x5c]
add ebx, eax
mov eax, esi
and eax, edx
add eax, ebx
add eax, 0x5c4dd124
mov edx, eax
shl edx, 0xc
mov edi, eax
shr edi, 0x14
lea ebx, [edi + edi]
not ebx
add ebx, edi
and ebx, edx
shl eax, 0xd
add edi, ebp
add edi, eax
sub edi, ebx
mov dword [esp + 0x14], edi
rol ecx, 0xa
mov eax, edi
and eax, ecx
lea ebx, [esi + esi]
not ebx
add ebx, esi
or ebx, ecx
not ebx
or ebx, eax
not eax
lea edx, [eax + eax]
not edx
add edx, eax
or ebx, edx
add ebp, dword [esp + 0x58]
lea eax, [ebx + ebp]
add eax, 0x5c4dd124
rol eax, 8
mov ebp, dword [esp]
add eax, ebp
add eax, 0xfe68bac4
mov edx, eax
and edx, 0x197453c
xor eax, 0x197453c
rol esi, 0xa
lea edi, [eax + edx*2]
mov dword [esp + 4], edi
mov edx, esi
and edx, 0xfffffffd
mov ebx, esi
and ebx, 2
mov eax, esi
or eax, 2
imul eax, ebx
xor ebx, 2
imul ebx, edx
add eax, ebx
mov edx, edi
and edx, esi
not eax
add eax, esi
mov edi, dword [esp + 0x14]
and eax, edi
or eax, edx
mov edx, ebp
add edx, dword [esp + 0x28]
add edx, eax
add edx, 0x5c4dd124
rol edx, 9
mov eax, edx
and eax, ecx
mov ebx, eax
and ebx, 2
mov ebp, eax
or eax, 2
imul eax, ebx
xor ebx, 2
and ebp, 0xfffffffd
imul ebp, ebx
xor edx, ecx
add edx, eax
add edx, ebp
mov dword [esp], edx
rol edi, 0xa
mov dword [esp + 0x14], edi
mov eax, edx
and eax, edi
mov edx, edi
not edx
mov dword [esp + 0x64], edx
mov edi, dword [esp + 4]
mov ebx, edi
and ebx, edx
or ebx, eax
mov eax, ebx
mov edx, dword [esp + 0x50]
xor ebx, edx
add ebx, ecx
and eax, edx
lea ebp, [ebx + eax*2]
add ebp, 0x5c4dd124
rol ebp, 0xb
mov eax, dword [esp + 0x18]
or eax, dword [esp + 0x24]
mov dword [esp + 0x18], eax
add ebp, esi
mov ecx, edi
rol ecx, 0xa
mov dword [esp + 4], ecx
mov eax, ecx
not eax
mov edi, dword [esp]
and eax, edi
add esi, dword [esp + 0x48]
add esi, eax
mov eax, ebp
and eax, ecx
add eax, esi
add eax, 0x5c4dd124
mov ecx, eax
shl ecx, 7
mov edx, eax
shr edx, 0x19
lea ebx, [edx + edx]
not ebx
add ebx, edx
and ebx, ecx
shl eax, 8
mov esi, dword [esp + 0x14]
add edx, esi
add edx, eax
sub edx, ebx
mov ebx, edx
mov dword [esp + 0x24], edx
mov edx, edi
rol edx, 0xa
mov dword [esp], edx
mov eax, ebp
xor eax, edx
mov ecx, edx
not ecx
or ecx, ebp
add eax, ecx
inc eax
and ebx, edx
mov ecx, ebx
xor ecx, eax
not eax
and eax, ebx
add ebx, dword [esp + 0x10]
add ebx, ecx
sub ebx, eax
mov edx, 0xa3b22edb
sub edx, ebx
add ebx, 0x5c4dd124
mov eax, ebx
and eax, esi
mov edi, eax
and edi, 0xfffffffd
mov ecx, eax
and ecx, 2
or eax, 2
imul eax, ecx
xor ecx, 2
imul ecx, edi
or edx, esi
or ebx, dword [esp + 0x64]
and ebx, edx
not ebx
add ebx, eax
add ebx, ecx
rol ebx, 7
mov ecx, dword [esp + 4]
add ebx, ecx
rol ebp, 0xa
mov eax, ebp
not eax
mov esi, dword [esp + 0x24]
and eax, esi
add ecx, dword [esp + 0x38]
add ecx, eax
mov eax, ebx
and eax, ebp
lea edi, [eax + ecx]
add edi, 0x5c4dd124
rol edi, 0xc
mov edx, dword [esp]
add edi, edx
rol esi, 0xa
mov dword [esp + 0x24], esi
mov eax, edi
xor eax, ebx
and eax, esi
xor eax, ebx
add eax, dword [esp + 0x4c]
mov ecx, eax
xor eax, 0x5c4dd124
add eax, edx
and ecx, 0xdc4dd124
lea eax, [eax + ecx*2]
rol eax, 7
add eax, ebp
mov dword [esp + 4], eax
rol ebx, 0xa
mov ecx, ebx
not ecx
mov edx, eax
not edx
or edx, ebx
add edx, eax
inc edx
and ecx, edi
or ecx, edx
add ebp, dword [esp + 0x30]
lea eax, [ecx + ebp]
add eax, 0x5c4dd124
mov esi, dword [esp + 0xc]
rol esi, 0xc
mov edx, dword [esp + 8]
add esi, edx
mov dword [esp + 0xc], esi
mov ecx, dword [esp + 0x18]
lea ebp, [ecx + ecx]
not ebp
add ebp, ecx
or ebp, dword [esp + 0x44]
and esi, ebp
add edx, dword [esp + 0x60]
rol eax, 6
add edx, ebp
mov ecx, dword [esp + 0x24]
add eax, ecx
mov dword [esp + 0x14], eax
rol edi, 0xa
mov ebp, edi
not ebp
and ebp, dword [esp + 4]
add ecx, dword [esp + 0x2c]
add ecx, ebp
and eax, edi
lea ebp, [eax + ecx]
add ebp, 0x5c4dd124
add edx, dword [esp + 0xc]
add esi, esi
rol ebp, 0xf
sub edx, esi
mov dword [esp + 8], edx
add ebp, ebx
mov ecx, ebp
mov dword [esp], ebp
mov edx, dword [esp + 4]
rol edx, 0xa
mov ebp, edx
not ebp
and ecx, edx
mov esi, edx
mov edx, dword [esp + 0x14]
and edx, ebp
or edx, ecx
mov ecx, edx
mov eax, dword [esp + 0x34]
xor edx, eax
add edx, ebx
and ecx, eax
lea eax, [edx + ecx*2]
add eax, 0x5c4dd124
rol eax, 0xd
mov ebx, dword [esp + 0x14]
rol ebx, 0xa
add eax, edi
mov dword [esp + 4], eax
mov edx, ebx
not edx
mov ecx, dword [esp]
and edx, ecx
add edi, dword [esp + 0x40]
add edi, edx
mov edx, eax
and edx, ebx
mov eax, ebx
add edx, edi
add edx, 0x5c4dd124
rol edx, 0xb
and ebp, edx
mov edi, edx
xor edi, esi
add edi, edx
sub edi, ebp
and edx, esi
mov ebx, ecx
rol ebx, 0xa
mov dword [esp], ebx
add edi, edx
mov ecx, dword [esp + 4]
mov edx, ecx
not edx
or edx, edi
xor edx, ebx
add esi, dword [esp + 0x10]
add esi, edx
add esi, 0x6d703ef3
mov edx, edi
not edx
mov ebp, edx
and ebp, 0x278dac45
or edx, 0xd87253ba
lea ebx, [edx + edi]
inc ebx
or ebx, ebp
rol esi, 9
add esi, eax
rol ecx, 0xa
xor ebx, 0xd87253ba
or ebx, esi
add eax, dword [esp + 0x28]
add eax, ecx
add eax, ebx
and ebx, ecx
mov dword [esp + 4], ecx
mov edx, ebx
or edx, 0xfffffffd
inc edx
mov ebp, ebx
and ebp, 0xfffffffd
imul ebp, edx
mov edx, ebx
and edx, 2
or ebx, 2
imul ebx, edx
sub ebp, ebx
lea ebx, [eax + ebp]
add ebx, 0x6d703ef3
rol ebx, 7
mov eax, dword [esp]
add ebx, eax
rol edi, 0xa
mov edx, esi
not edx
or edx, ebx
xor edx, edi
add eax, dword [esp + 0x34]
add edx, eax
add edx, 0x6d703ef3
rol edx, 0xf
add edx, ecx
rol esi, 0xa
mov ecx, esi
mov esi, ebx
not esi
or esi, edx
lea ebp, [esi + esi]
not ebp
add ebp, esi
mov dword [esp], ecx
mov eax, ecx
not eax
and eax, esi
and ebp, ecx
add eax, dword [esp + 0x60]
add eax, ebp
add eax, 0x6d703ef3
mov esi, eax
mov ecx, dword [esp + 4]
and esi, ecx
xor ecx, eax
lea esi, [ecx + esi*2]
mov eax, edx
not eax
rol esi, 0xb
rol ebx, 0xa
add esi, edi
or eax, esi
xor eax, ebx
mov ecx, dword [esp + 0x3c]
add eax, ecx
add eax, 0x6d703ef3
mov ecx, eax
and ecx, edi
xor edi, eax
lea eax, [edi + ecx*2]
rol eax, 8
mov ecx, eax
mov edi, dword [esp]
and ecx, edi
xor eax, edi
lea eax, [eax + ecx*2]
rol edx, 0xa
mov ecx, esi
not ecx
or ecx, eax
mov ebp, eax
mov dword [esp + 4], eax
mov eax, edi
add eax, dword [esp + 0x48]
add eax, edx
add eax, ecx
and ecx, edx
add ecx, ecx
sub eax, ecx
add eax, 0x6d703ef3
rol eax, 6
add eax, ebx
mov dword [esp], eax
mov ecx, ebp
not ecx
or ecx, eax
lea eax, [ecx + ecx]
not eax
add eax, ecx
and eax, 0x77a18314
and ecx, 0x885e7ceb
or ecx, eax
rol esi, 0xa
xor ecx, esi
xor ecx, 0x77a18314
add ebx, dword [esp + 0x54]
lea ebp, [ecx + ebx]
add ebp, 0x6d703ef3
rol ebp, 6
add ebp, edx
mov edi, ebp
not edi
mov ecx, dword [esp]
mov eax, ecx
or eax, edi
mov ebx, ebp
sub ebx, ecx
add ebx, eax
mov eax, dword [esp + 4]
rol eax, 0xa
mov dword [esp + 4], eax
xor ebx, eax
add ebx, dword [esp + 0x2c]
mov eax, ebx
not eax
or eax, 0x6d703ef3
add edx, ebx
add edx, eax
or ebx, 0x6d703ef3
add ebx, edx
inc ebx
rol ebx, 0xe
add ebx, esi
rol ecx, 0xa
mov dword [esp], ecx
or edi, ebx
lea eax, [ecx + ecx]
not eax
add eax, ecx
and eax, edi
not edi
and edi, ecx
add eax, dword [esp + 0x20]
add eax, edi
add eax, 0x6d703ef3
mov edx, eax
and edx, esi
xor esi, eax
lea ecx, [esi + edx*2]
rol ecx, 0xc
rol ebp, 0xa
mov edx, dword [esp + 4]
add ecx, edx
mov eax, ebx
not eax
or eax, ecx
xor eax, ebp
mov edi, dword [esp + 0x38]
lea esi, [eax + edi]
mov dword [esp + 0x14], esi
mov esi, 0x928fc10d
sub esi, dword [esp + 0x14]
add edi, eax
add edi, 0x6d703ef2
and edi, edx
not edx
and esi, edx
sub edi, esi
mov dword [esp + 0x24], ecx
mov eax, ecx
not eax
lea esi, [ecx + ecx]
inc esi
and esi, eax
lea edx, [ecx + ecx]
xor edx, 0xfffffffe
and edx, ecx
sub edx, esi
rol edi, 0xd
mov ecx, dword [esp]
add edi, ecx
or edx, edi
mov eax, edx
not eax
lea esi, [eax + eax]
not esi
add esi, eax
and esi, edx
rol ebx, 0xa
xor esi, ebx
add ecx, dword [esp + 0x4c]
lea eax, [esi + ecx]
add eax, 0x6d703ef3
rol eax, 5
mov edx, eax
and edx, ebp
xor eax, ebp
mov esi, dword [esp + 0x24]
rol esi, 0xa
mov dword [esp + 0x24], esi
lea ecx, [eax + edx*2]
mov dword [esp + 4], ecx
lea edx, [ecx + ecx]
not edx
add edx, ecx
not ecx
or edx, ecx
and edx, edi
xor edx, esi
not edx
mov eax, dword [esp + 0x40]
lea esi, [eax + edx]
add esi, 0x6d703ef3
mov dword [esp], esi
and esi, ebp
mov edx, esi
and edx, 0xfffffffd
mov eax, esi
and eax, 2
or esi, 2
imul esi, eax
xor eax, 2
imul eax, edx
add esi, eax
xor ebp, dword [esp]
mov eax, esi
and eax, ebp
xor ebp, esi
lea esi, [eax*2]
add esi, ebp
rol esi, 0xe
mov eax, esi
and eax, ebx
xor esi, ebx
rol edi, 0xa
lea ebp, [esi + eax*2]
mov dword [esp], ebp
or ecx, ebp
xor ecx, edi
add ebx, dword [esp + 0x50]
lea edx, [ecx + ebx]
add edx, 0x6d703ef3
lea eax, [esi + eax*2]
dec eax
mov ecx, ebp
neg ecx
mov esi, ebp
add esi, ebp
and ecx, esi
not esi
and esi, eax
sub esi, ecx
rol edx, 0xd
mov eax, dword [esp + 4]
rol eax, 0xa
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x24]
add edx, ebx
or esi, edx
xor esi, eax
mov eax, dword [esp + 0x5c]
add eax, esi
add eax, 0x2c69ecd0
mov ecx, eax
xor ecx, 0x41065222
add ecx, ebx
and eax, 0xc1065222
lea ebp, [ecx + eax*2]
inc ebp
mov ecx, dword [esp + 8]
add ecx, 0xa953fd4e
rol ecx, 0xd
mov esi, dword [esp + 0x1c]
add ecx, esi
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x44]
rol eax, 0xa
mov dword [esp + 0x44], eax
not eax
or eax, dword [esp + 0xc]
xor eax, ecx
mov ecx, dword [esp + 0x38]
add eax, ecx
add eax, 0xa953fd4e
mov ecx, eax
and ecx, esi
mov dword [esp + 0x24], ecx
rol ebp, 0xd
xor esi, eax
mov dword [esp + 0x1c], esi
add ebp, edi
mov dword [esp + 0x14], edx
lea eax, [edx + edx]
not eax
add eax, edx
and eax, ebp
lea ecx, [eax + eax]
not ecx
add ecx, eax
mov eax, ebp
sub eax, edx
mov esi, ecx
and esi, eax
xor eax, ecx
lea eax, [eax + esi*2]
mov ecx, eax
not ecx
and ecx, 0x756fc068
xor eax, 0x756fc068
or eax, ecx
mov ecx, dword [esp]
rol ecx, 0xa
mov dword [esp], ecx
xor eax, ecx
xor eax, 0x756fc068
mov ecx, eax
mov edx, dword [esp + 0x30]
and ecx, edx
xor eax, edx
lea ecx, [eax + ecx*2]
add ecx, 0x6d703ef3
mov eax, ecx
and eax, edi
mov esi, eax
and esi, 0xfffffffd
mov ebx, eax
and ebx, 2
or eax, 2
imul eax, ebx
xor ebx, 2
imul ebx, esi
xor edi, ecx
add edi, eax
add edi, ebx
rol edi, 7
mov ebx, dword [esp + 4]
add edi, ebx
mov esi, edi
and esi, ebp
mov eax, ebp
xor eax, edi
not eax
add eax, edi
mov ecx, esi
not ecx
add ecx, eax
sub eax, esi
sub ecx, eax
sub ecx, eax
mov esi, eax
xor esi, 0x224b90a
or eax, 0xfddb46f5
and eax, esi
mov edx, dword [esp + 0x14]
rol edx, 0xa
mov dword [esp + 0x14], edx
and ecx, 0x224b90a
or eax, ecx
xor eax, edx
xor eax, 0x224b90a
mov ecx, ebx
add ecx, dword [esp + 0x58]
add ecx, eax
add ecx, 0x6d703ef3
rol ecx, 5
add ecx, dword [esp]
mov dword [esp + 4], ecx
rol ebp, 0xa
mov ebx, ecx
not ebx
and ecx, edi
mov esi, ebp
and esi, ebx
or esi, ecx
add esi, dword [esp + 0x38]
mov ecx, esi
and ecx, 0xfa6d76e9
xor esi, 0x7a6d76e9
lea edx, [esi + ecx*2]
mov ecx, edx
mov esi, dword [esp]
xor ecx, esi
or esi, edx
xor esi, ecx
mov eax, esi
and eax, 0xfffffffd
mov edx, esi
and edx, 2
or esi, 2
imul esi, edx
xor edx, 2
imul edx, eax
add esi, ecx
add esi, edx
rol esi, 0xf
add esi, dword [esp + 0x14]
rol edi, 0xa
mov edx, edi
not edx
or edx, esi
mov dword [esp], esi
lea ecx, [edx + edx]
not ecx
add ecx, edx
and edx, 0xfe51b753
and ecx, 0x1ae48ac
or ecx, edx
not esi
or ebx, esi
xor ecx, ebx
xor ecx, 0x1ae48ac
mov eax, dword [esp + 0x14]
add eax, dword [esp + 0x54]
add ecx, eax
add ecx, 0x7a6d76e9
rol ecx, 5
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
lea eax, [eax + edx*2]
mov dword [esp + 0x1c], eax
add ecx, ebp
mov eax, ecx
mov ebx, dword [esp]
or eax, ebx
sub esi, ecx
add esi, eax
mov edx, dword [esp + 4]
rol edx, 0xa
mov dword [esp + 4], edx
mov eax, ecx
not eax
and eax, edx
lea edx, [eax + eax]
not edx
add edx, eax
not eax
or edx, eax
and edx, esi
not edx
add ebp, dword [esp + 0x30]
lea esi, [edx + ebp]
add esi, 0x7a6d76e9
mov eax, ebx
rol eax, 0xa
mov dword [esp], eax
not eax
lea edx, [eax + eax]
not edx
add edx, eax
mov ebx, esi
rol ebx, 8
add ebx, edi
lea eax, [ebx + ebx]
not eax
add eax, ebx
and edx, eax
mov eax, ebx
mov dword [esp + 0x14], ebx
and eax, ecx
or edx, eax
add edi, dword [esp + 0x34]
lea esi, [edx + edi]
add esi, 0x7a6d76e9
rol esi, 0xb
rol ecx, 0xa
mov dword [esp + 0x24], ecx
add esi, dword [esp + 4]
lea ebp, [esi + esi]
not ebp
add ebp, esi
mov eax, esi
and eax, 0x1f3cb4e5
mov edi, ecx
xor edi, ebp
and ebp, 0xe0c34b1a
or ebp, eax
mov eax, esi
not eax
or ebx, eax
xor ebp, ecx
xor ebp, 0x1f3cb4e5
and eax, ecx
or eax, ebp
not edi
and edi, eax
lea eax, [ebx + esi]
inc eax
or edi, eax
mov eax, dword [esp + 4]
add eax, dword [esp + 0x60]
add edi, eax
add edi, 0x7a6d76e9
mov ebx, edi
shl ebx, 0xe
mov ebp, edi
shl edi, 0xf
not edi
add edi, ebx
mov eax, ebx
and eax, 0xdbf90000
and edi, 0x2406c000
or edi, eax
xor edi, ebx
xor edi, 0xdbf90000
and edi, ebx
shr ebp, 0x12
or edi, ebp
add edi, dword [esp]
mov ebx, edi
not ebx
mov edx, ebx
and edx, 0xd92327ae
mov eax, ebx
or eax, 0x26dcd851
lea ecx, [eax + edi]
inc ecx
or ecx, edx
mov eax, dword [esp + 0x14]
rol eax, 0xa
mov dword [esp + 0x14], eax
mov edx, edi
and edx, esi
mov ebp, ecx
xor ebp, 0x26dcd851
and ebp, eax
or ebp, edx
xor ecx, 0xd92327ae
lea edx, [eax + eax]
not edx
add edx, eax
or edx, ecx
not edx
or edx, ebp
mov eax, dword [esp]
add eax, dword [esp + 0x20]
add eax, edx
add eax, 0xc696b827
mov edx, eax
xor edx, 0xb3d6bec1
and eax, 0x33d6bec1
lea eax, [edx + eax*2]
inc eax
rol eax, 0xe
mov edx, eax
mov ecx, dword [esp + 0x24]
and edx, ecx
xor eax, ecx
lea eax, [eax + edx*2]
mov dword [esp], eax
not eax
or ebx, eax
lea edx, [ebx + ebx]
not edx
add edx, ebx
rol esi, 0xa
and eax, esi
or eax, edx
mov edx, dword [esp + 0xc]
rol edx, 0xa
mov dword [esp + 0xc], edx
add ecx, dword [esp + 0x10]
add eax, ecx
add eax, 0x7a6d76e9
mov ebp, dword [esp + 8]
mov ecx, ebp
not ecx
or ecx, edx
sub ebp, edx
rol eax, 6
add ebp, ecx
mov ecx, eax
not ecx
mov edx, dword [esp + 0x14]
or ecx, edx
add ecx, eax
or eax, edx
rol edi, 0xa
lea ebx, [eax + ecx]
inc ebx
mov dword [esp + 4], ebx
mov ecx, ebx
and ecx, dword [esp]
not ebx
mov edx, edi
and edx, ebx
or edx, ecx
mov ecx, edx
mov eax, dword [esp + 0x5c]
xor edx, eax
add edx, dword [esp + 0x14]
and ecx, eax
lea ecx, [edx + ecx*2]
add ecx, 0x7a6d76e9
rol ecx, 0xe
add ecx, esi
mov edx, ecx
not edx
or ebx, edx
lea eax, [ebx + ebx]
not eax
add eax, ebx
mov ebx, dword [esp]
rol ebx, 0xa
and edx, ebx
or edx, eax
add esi, dword [esp + 0x28]
add edx, esi
add edx, 0x7a6d76e9
rol edx, 6
mov esi, dword [esp + 4]
rol esi, 0xa
mov dword [esp + 4], esi
add edx, edi
mov eax, edx
not eax
and eax, esi
add edi, dword [esp + 0x4c]
add edi, eax
mov eax, edx
and eax, ecx
add edi, eax
add edi, 0x7a6d76e9
mov esi, dword [esp + 0x1c]
rol esi, 0xe
mov eax, dword [esp + 0x18]
add esi, eax
mov dword [esp + 0x1c], esi
xor ebp, esi
add eax, dword [esp + 0x20]
rol edi, 9
add eax, ebp
add eax, 0xa953fd4e
mov dword [esp], eax
mov eax, edi
mov ebp, ebx
add eax, ebx
rol ecx, 0xa
mov esi, ecx
not esi
mov edi, eax
or edi, esi
mov ebx, eax
and ebx, ecx
xor esi, eax
add esi, eax
sub esi, ebx
and esi, edi
mov edi, eax
not edi
or edi, edx
add edi, eax
inc edi
mov ebx, eax
mov dword [esp + 0x18], eax
not esi
or esi, edi
mov eax, ebp
add eax, dword [esp + 0x40]
add esi, eax
add esi, 0x7a6d76e9
rol esi, 0xc
mov eax, dword [esp + 4]
add esi, eax
rol edx, 0xa
mov edi, ebx
xor edi, edx
and edi, esi
xor edi, edx
add edi, dword [esp + 0x58]
mov ebx, edi
xor edi, 0x7a6d76e9
add edi, eax
and ebx, 0xfa6d76e9
lea edi, [edi + ebx*2]
rol edi, 9
lea ebp, [edi + ecx]
add edi, ecx
dec edi
mov ebx, ebp
neg ebx
mov eax, ebp
add eax, ebp
and ebx, eax
not eax
and eax, edi
sub eax, ebx
mov ebx, dword [esp + 0x18]
rol ebx, 0xa
mov edi, ebp
and edi, esi
and eax, ebx
or eax, edi
add ecx, dword [esp + 0x2c]
add ecx, eax
add ecx, 0x7a6d76e9
rol ecx, 0xc
rol esi, 0xa
add ecx, edx
mov eax, ecx
not eax
and eax, esi
add edx, dword [esp + 0x3c]
add edx, eax
mov eax, ecx
and eax, ebp
add eax, edx
add eax, 0x7a6d76e9
rol eax, 5
mov edx, eax
xor edx, ebx
or eax, ebx
xor eax, edx
lea edx, [edx + eax*2]
mov dword [esp + 4], edx
rol ebp, 0xa
mov eax, ecx
xor eax, ebp
and eax, edx
xor eax, ebp
add eax, 0x2fd07f58
mov edi, eax
mov edx, dword [esp + 0x50]
xor eax, edx
add eax, ebx
and edi, edx
lea ebx, [eax + edi*2]
add ebx, 0x4a9cf791
mov eax, dword [esp]
rol eax, 0xb
mov edi, dword [esp + 8]
rol edi, 0xa
mov dword [esp + 8], edi
mov edx, dword [esp + 0x44]
add eax, edx
mov dword [esp], eax
not edi
or edi, dword [esp + 0x1c]
xor edi, eax
add edx, dword [esp + 0x54]
rol ebx, 0xf
lea eax, [edi + edx]
add eax, 0xa953fd4e
mov dword [esp + 0x44], eax
add ebx, esi
mov dword [esp + 0x18], ebx
rol ecx, 0xa
mov edi, dword [esp + 4]
xor edi, ecx
and edi, ebx
xor edi, ecx
mov eax, dword [esp + 0x48]
mov edx, 0x85928917
sub edx, edi
sub edx, eax
lea ebx, [edi + eax]
add ebx, 0x7a6d76e8
and ebx, esi
not esi
and esi, edx
sub ebx, esi
mov eax, dword [esp + 4]
mov edx, eax
shl edx, 0xa
mov esi, eax
shr esi, 0x16
lea edi, [esi + esi]
not edi
add edi, esi
and edi, edx
shl eax, 0xb
or eax, esi
sub eax, edi
rol ebx, 8
add ebx, ebp
add ebp, dword [esp + 0x4c]
mov esi, dword [esp + 0x18]
mov edx, esi
xor edx, eax
mov edi, eax
mov dword [esp + 4], eax
xor edx, ebx
add ebp, edx
rol ebp, 8
rol esi, 0xa
add ebp, ecx
mov edx, ebx
xor edx, esi
mov eax, esi
mov dword [esp + 0x18], esi
xor edx, ebp
add ecx, dword [esp + 0x10]
add ecx, edx
mov edx, ecx
shr ecx, 0x1b
mov esi, ecx
not esi
lea ecx, [ecx + esi*2]
inc ecx
shl edx, 5
not ecx
or ecx, edx
rol ebx, 0xa
add ecx, edi
mov esi, ebp
xor esi, ecx
not esi
mov edx, ebx
and edx, esi
lea edi, [edx + edx]
not edi
add edi, edx
or esi, ebx
and esi, edi
mov edx, dword [esp + 0x50]
mov edi, dword [esp + 4]
add edi, edx
dec edi
sub edi, esi
mov esi, dword [esp + 0x44]
rol esi, 8
add esi, dword [esp + 0xc]
mov dword [esp + 0x44], esi
mov edx, dword [esp + 0x1c]
rol edx, 0xa
mov dword [esp + 0x1c], edx
not edx
or edx, dword [esp]
xor edx, esi
rol edi, 0xc
add edx, dword [esp + 0x10]
mov esi, edi
not esi
or esi, eax
add esi, edi
or edi, eax
lea eax, [edi + esi]
inc eax
mov edi, dword [esp + 0x18]
add edi, dword [esp + 0x30]
rol ebp, 0xa
mov esi, ecx
xor esi, ebp
xor esi, eax
add edi, esi
rol edi, 9
add edi, ebx
mov dword [esp + 0x18], edi
add ebx, dword [esp + 0x34]
rol ecx, 0xa
mov esi, eax
xor esi, ecx
xor esi, edi
add ebx, esi
mov edi, edx
xor edx, 0xafd67732
rol ebx, 0xc
add edx, dword [esp + 0xc]
add ebx, ebp
mov esi, ebx
rol eax, 0xa
mov dword [esp + 0x30], eax
add ebp, dword [esp + 0x28]
mov ebx, esi
xor ebx, dword [esp + 0x18]
add ebp, eax
add ebp, ebx
and ebx, eax
add ebx, ebx
sub ebp, ebx
and edi, 0x2fd67732
rol ebp, 5
lea eax, [edx + edi*2]
add eax, 0xf97d861c
mov dword [esp + 0x28], eax
mov edx, ebp
not edx
or edx, ecx
add edx, ebp
or ebp, ecx
lea edi, [edx + ebp]
inc edi
add ecx, dword [esp + 0x38]
mov ebx, dword [esp + 0x18]
rol ebx, 0xa
mov edx, esi
xor edx, ebx
xor edx, edi
add ecx, edx
mov edx, dword [esp + 0x28]
rol edx, 5
mov ebp, dword [esp + 8]
add edx, ebp
mov dword [esp + 0x28], edx
mov eax, dword [esp]
rol eax, 0xa
mov dword [esp], eax
not eax
or eax, dword [esp + 0x44]
xor eax, edx
add eax, dword [esp + 0x58]
mov dword [esp + 0x34], eax
mov edx, eax
or edx, 0xa953fd4d
rol ecx, 0xe
add edx, ebp
mov dword [esp + 0x38], edx
mov eax, dword [esp + 0x30]
add ecx, eax
add ecx, 0x12bf7b75
mov edx, ecx
or edx, 0xed40848a
and ecx, 0xed40848a
add edx, ecx
inc edx
mov dword [esp + 0x10], edx
rol esi, 0xa
mov ecx, edi
xor ecx, esi
xor ecx, edx
add ecx, dword [esp + 0x3c]
mov edx, ecx
and edx, eax
xor ecx, eax
lea ecx, [ecx + edx*2]
rol ecx, 6
mov edx, ecx
and edx, ebx
xor ecx, ebx
lea ebp, [ecx + edx*2]
mov ecx, ebx
xor ecx, 0x5d0def37
add ecx, dword [esp + 0x54]
rol edi, 0xa
and ebx, 0xdd0def37
lea ecx, [ecx + ebx*2]
mov edx, dword [esp + 0x10]
mov ebx, edx
xor ebx, edi
xor ebx, ebp
add ecx, ebx
add ecx, 0xa2f210c9
rol ecx, 8
add ecx, esi
mov ebx, ecx
and ebx, ebp
add ebx, ebx
lea eax, [ecx + ebp]
sub eax, ebx
add esi, dword [esp + 0x40]
rol edx, 0xa
mov dword [esp + 0x10], edx
xor eax, edx
add esi, eax
mov eax, esi
shl eax, 0xd
mov ebx, eax
not ebx
lea eax, [eax + ebx*2]
lea ebx, [eax + eax]
add ebx, 2
not ebx
add eax, ebx
inc eax
shr esi, 0x13
or eax, esi
add eax, edi
add eax, 0xb96264d
mov ebx, eax
and ebx, 0xf469d9b3
xor eax, 0xf469d9b3
lea edx, [eax + ebx*2]
add edi, dword [esp + 0x58]
rol ebp, 0xa
mov dword [esp + 0x3c], ebp
mov eax, ecx
xor eax, ebp
xor eax, edx
add edi, eax
rol edi, 6
rol ecx, 0xa
mov ebx, dword [esp + 0x10]
add edi, ebx
mov ebp, edi
xor ebp, edx
mov esi, ebp
or ebp, ecx
mov eax, ebp
add eax, ebp
not eax
add eax, ebp
and esi, ecx
or eax, esi
add ebx, dword [esp + 0x48]
not eax
add ebx, eax
mov eax, dword [esp + 0x34]
and eax, 0xa953fd4d
rol ebx, 5
mov esi, dword [esp + 0x38]
add eax, esi
inc eax
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x3c]
add ebx, eax
rol edx, 0xa
mov esi, ebx
mov dword [esp + 0x10], ebx
and esi, edi
add esi, esi
lea ebp, [ebx + edi]
sub ebp, esi
lea esi, [edx + edx]
not esi
add esi, edx
or esi, ebp
mov ebx, edx
not ebx
and ebx, ebp
xor ebx, esi
add eax, dword [esp + 0x5c]
add eax, ebx
lea esi, [ebx + ebx]
not esi
add eax, esi
rol eax, 0xf
add eax, ecx
add ecx, dword [esp + 0x60]
rol edi, 0xa
mov ebx, dword [esp + 0x10]
mov esi, ebx
xor esi, edi
xor esi, eax
add ecx, esi
rol ecx, 0xd
add ecx, edx
add edx, dword [esp + 0x2c]
rol ebx, 0xa
mov dword [esp + 0x10], ebx
mov esi, eax
xor esi, ebx
xor esi, ecx
add edx, esi
rol edx, 0xb
add edx, edi
add edi, dword [esp + 0x20]
rol eax, 0xa
mov esi, ecx
xor esi, eax
xor esi, edx
add edi, esi
mov esi, edi
shr edi, 0x15
lea ebx, [edi + edi]
not ebx
add ebx, edi
and ebx, 0x5e878c2d
and edi, 0x3d2
or edi, ebx
shl esi, 0xb
mov ebx, esi
not ebx
and ebx, 0x5e878800
xor esi, 0x5e878c2d
or esi, ebx
xor esi, edi
mov edi, ecx
shl edi, 0xa
mov ebp, ecx
shr ebp, 0x16
mov ebx, ebp
add ebx, ebp
not ebx
add ebx, ebp
and ebx, edi
add ebp, dword [esp + 0x6c]
shl ecx, 0xb
add ebp, ecx
sub ebp, ebx
add ebp, dword [esp + 0x28]
add eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x44]
rol ecx, 0xa
add eax, ecx
mov edi, dword [esp + 0x80]
mov dword [edi + 4], eax
mov ecx, dword [esp]
mov eax, ecx
mov ebx, dword [esp + 0x68]
and eax, ebx
xor ecx, ebx
mov ebx, dword [esp + 0x10]
add ecx, ebx
lea ecx, [ecx + eax*2]
mov dword [edi + 8], ecx
add ebx, dword [esp + 0x70]
mov ecx, dword [esp + 0x1c]
add ebx, ecx
add ebx, esi
mov dword [edi + 0xc], ebx
add edx, dword [esp + 0x78]
add edx, ecx
mov eax, dword [esp + 0x40]
mov ecx, eax
shl ecx, 6
add edx, ecx
shr eax, 0x1a
add edx, eax
mov dword [edi + 0x10], edx
mov dword [edi], ebp
add esp, 0x84
pop esi
pop edi
pop ebx
pop ebp
ret