Function at 0x42c4b0
Capabilities:
Encode data using xor
Hash data using murmur3

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x14c
mov ecx, dword [esp + 0x160]
mov eax, dword [esp + 0x164]
movdqu xmm0, xmmword [ecx + 0x48]
movups xmm1, xmmword [ecx + 0x58]
movups xmmword [esp + 0x138], xmm1
movdqu xmmword [esp + 0x128], xmm0
movdqu xmm1, xmmword [eax]
pxor xmm0, xmm0
movdqa xmm2, xmm1
punpckhbw xmm2, xmm0
pshuflw xmm2, xmm2, 0x1b
pshufhw xmm2, xmm2, 0x1b
punpcklbw xmm1, xmm0
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
packuswb xmm1, xmm2
movdqu xmmword [esp + 0x28], xmm1
movdqu xmm1, xmmword [eax + 0x10]
movdqa xmm2, xmm1
punpckhbw xmm2, xmm0
pshuflw xmm2, xmm2, 0x1b
pshufhw xmm2, xmm2, 0x1b
punpcklbw xmm1, xmm0
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
packuswb xmm1, xmm2
movdqu xmmword [esp + 0x38], xmm1
movdqu xmm1, xmmword [eax + 0x20]
movdqa xmm2, xmm1
punpckhbw xmm2, xmm0
pshuflw xmm2, xmm2, 0x1b
pshufhw xmm2, xmm2, 0x1b
punpcklbw xmm1, xmm0
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
packuswb xmm1, xmm2
movdqu xmmword [esp + 0x48], xmm1
movdqu xmm1, xmmword [eax + 0x30]
movdqa xmm2, xmm1
punpckhbw xmm2, xmm0
pshuflw xmm2, xmm2, 0x1b
pshufhw xmm2, xmm2, 0x1b
punpcklbw xmm1, xmm0
pshuflw xmm0, xmm1, 0x1b
pshufhw xmm0, xmm0, 0x1b
packuswb xmm0, xmm2
movdqu xmmword [esp + 0x58], xmm0
mov eax, dword [esp + 0x144]
mov dword [esp + 0x10], eax
mov edx, dword [esp + 0x138]
mov eax, dword [esp + 0x13c]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x140]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x128]
mov dword [esp], eax
mov eax, dword [esp + 0x12c]
mov dword [esp + 4], eax
mov ebp, dword [esp + 0x130]
mov dword [esp + 0x18], 0
mov bl, 1
mov edi, dword [esp + 0x134]
nop word cs:[eax + eax]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x148], ebx
mov eax, edx
rol eax, 0x1a
mov ebx, edx
rol ebx, 0x15
xor ebx, eax
mov ecx, edx
rol ecx, 7
xor ecx, ebx
mov eax, dword [esp]
mov esi, eax
rol esi, 0x1e
mov ebx, eax
rol ebx, 0x13
xor ebx, esi
mov ebp, eax
rol ebp, 0xa
xor ebp, ebx
add ecx, dword [esp + 0x10]
mov ebx, dword [esp + 4]
and ebx, eax
mov dword [esp], eax
mov esi, dword [esp + 4]
or esi, eax
and esi, dword [esp + 0xc]
or esi, ebx
add esi, ebp
mov ebp, esi
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 8]
xor eax, esi
and eax, edx
mov ebx, dword [esp + 0x18]
add ecx, dword [ebx*4 + 0x43d360]
xor eax, esi
add ecx, dword [esp + ebx*4 + 0x28]
add ecx, eax
add edi, ecx
mov eax, edi
rol eax, 0x1a
add ebp, ecx
mov dword [esp + 0x10], ebp
mov ecx, edi
rol ecx, 0x15
xor ecx, eax
mov eax, edi
rol eax, 7
xor eax, ecx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x14]
mov ecx, eax
xor ecx, edx
and ecx, edi
xor ecx, eax
mov eax, ebp
rol eax, 0x1e
add ecx, esi
mov ebx, ebp
rol ebx, 0x13
xor ebx, eax
mov eax, ebp
rol eax, 0xa
xor eax, ebx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x18]
add ecx, dword [eax*4 + 0x43d364]
add ecx, dword [esp + 0x1c]
mov ebx, ebp
mov ebp, dword [esp]
and ebx, ebp
mov eax, dword [esp + 0x10]
or eax, ebp
and eax, dword [esp + 4]
or eax, ebx
mov esi, dword [esp + 0x18]
add ecx, dword [esp + esi*4 + 0x2c]
mov esi, dword [esp + 0xc]
add esi, ecx
mov ebx, esi
rol ebx, 0x1a
add eax, dword [esp + 8]
mov ebp, esi
rol ebp, 0x15
add eax, ecx
mov ecx, esi
mov dword [esp + 0xc], esi
rol ecx, 7
xor ebp, ebx
xor ecx, ebp
mov dword [esp + 0x1c], ecx
mov ecx, edi
xor ecx, edx
and ecx, esi
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
add esi, dword [ebx*4 + 0x43d368]
xor ecx, edx
add esi, dword [esp + ebx*4 + 0x30]
add esi, ecx
add esi, dword [esp + 0x1c]
mov ebp, esi
mov esi, eax
rol eax, 0x1e
mov ecx, esi
rol ecx, 0x13
xor ecx, eax
mov eax, esi
rol eax, 0xa
xor eax, ecx
mov ecx, esi
mov dword [esp + 8], esi
mov ebx, dword [esp + 0x10]
and ecx, ebx
or esi, ebx
and esi, dword [esp]
or esi, ecx
add esi, eax
mov ebx, dword [esp + 4]
add ebx, ebp
add ebp, esi
mov eax, dword [esp + 0xc]
xor eax, edi
mov ecx, dword [esp + 0x18]
add edx, dword [ecx*4 + 0x43d36c]
mov esi, ebx
mov dword [esp + 4], ebx
and eax, ebx
add edx, dword [esp + ecx*4 + 0x34]
xor eax, edi
add edx, eax
mov eax, ebx
rol eax, 0x1a
mov ecx, ebx
rol ecx, 0x15
xor ecx, eax
mov eax, ebx
rol eax, 7
xor eax, ecx
mov ecx, ebp
rol ecx, 0x1e
mov esi, ebp
rol esi, 0x13
xor esi, ecx
mov ecx, ebp
rol ecx, 0xa
xor ecx, esi
add edx, eax
mov eax, ebp
mov esi, ebp
mov dword [esp + 0x14], ebp
mov ebx, dword [esp + 8]
and eax, ebx
or esi, ebx
and esi, dword [esp + 0x10]
or esi, eax
add esi, ecx
mov ecx, dword [esp]
add ecx, edx
add edx, esi
mov eax, ecx
rol eax, 0x1a
mov esi, ecx
mov ebx, ecx
rol esi, 0x15
xor esi, eax
mov dword [esp], ecx
rol ecx, 7
xor ecx, esi
mov eax, dword [esp + 4]
mov ebp, dword [esp + 0xc]
xor eax, ebp
mov esi, dword [esp + 0x18]
add edi, dword [esi*4 + 0x43d370]
and eax, ebx
add edi, dword [esp + esi*4 + 0x38]
xor eax, ebp
add edi, eax
mov esi, edx
rol esi, 0x1e
mov ebx, edx
rol ebx, 0x13
mov ebp, edi
add ebp, ecx
mov ecx, edx
rol ecx, 0xa
xor ebx, esi
xor ecx, ebx
mov esi, edx
mov eax, dword [esp + 0x14]
and esi, eax
mov edi, edx
or edi, eax
and edi, dword [esp + 8]
or edi, esi
mov esi, dword [esp + 0x10]
add esi, ebp
mov eax, esi
mov dword [esp + 0x10], esi
rol eax, 0x1a
add edi, ecx
mov ebx, esi
rol ebx, 0x15
add edi, ebp
mov ecx, esi
rol ecx, 7
xor ebx, eax
xor ecx, ebx
mov eax, dword [esp]
mov ebx, dword [esp + 4]
xor eax, ebx
and eax, esi
mov esi, dword [esp + 0x18]
mov ebp, dword [esp + 0xc]
add ebp, dword [esi*4 + 0x43d374]
xor eax, ebx
add ebp, dword [esp + esi*4 + 0x3c]
add ebp, eax
mov eax, ebp
add eax, ecx
mov ecx, edi
rol ecx, 0x1e
mov esi, edi
rol esi, 0x13
xor esi, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, esi
mov esi, edi
and esi, edx
mov ebp, edi
or ebp, edx
and ebp, dword [esp + 0x14]
or ebp, esi
add ebp, ecx
mov ecx, dword [esp + 8]
add ecx, eax
mov dword [esp + 8], ecx
add ebp, eax
mov eax, ecx
rol eax, 0x1a
mov esi, ecx
rol esi, 0x15
xor esi, eax
rol ecx, 7
xor ecx, esi
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x18]
add ebx, dword [ecx*4 + 0x43d378]
mov eax, dword [esp + 0x10]
mov esi, dword [esp]
xor eax, esi
and eax, dword [esp + 8]
add ebx, dword [esp + ecx*4 + 0x40]
xor eax, esi
add ebx, eax
mov eax, ebx
mov esi, ebp
rol esi, 0x1e
mov ebx, ebp
rol ebx, 0x13
add eax, dword [esp + 0xc]
mov dword [esp + 4], eax
mov eax, ebp
rol eax, 0xa
xor ebx, esi
xor eax, ebx
mov ebx, ebp
and ebx, edi
mov esi, ebp
or esi, edi
and esi, edx
or esi, ebx
mov ecx, dword [esp + 0x14]
add ecx, dword [esp + 4]
mov ebx, ecx
rol ebx, 0x1a
mov dword [esp + 0xc], ebx
add esi, eax
mov ebx, ecx
mov dword [esp + 0x14], ecx
rol ebx, 0x15
add esi, dword [esp + 4]
mov eax, ecx
rol eax, 7
xor ebx, dword [esp + 0xc]
xor eax, ebx
mov ecx, dword [esp]
mov ebx, dword [esp + 0x18]
add ecx, dword [ebx*4 + 0x43d37c]
add ecx, dword [esp + ebx*4 + 0x44]
mov dword [esp], ecx
mov ecx, dword [esp + 8]
mov ebx, dword [esp + 0x10]
xor ecx, ebx
and ecx, dword [esp + 0x14]
xor ecx, ebx
mov ebx, dword [esp]
add ebx, ecx
mov ecx, ebx
add ecx, eax
mov ebx, esi
rol ebx, 0x1e
mov eax, esi
rol eax, 0x13
xor eax, ebx
mov ebx, esi
rol ebx, 0xa
xor ebx, eax
mov eax, esi
or eax, ebp
mov dword [esp + 4], esi
and esi, ebp
and eax, edi
or eax, esi
add eax, ebx
add edx, ecx
lea ebx, [ecx + eax]
mov dword [esp], ebx
mov dword [esp + 0x18], 8
test byte [esp + 0x148], 1
mov ebx, 0
jne 0x42c600
mov esi, dword [esp + 0x10]
mov dword [esp + 0x144], esi
mov dword [esp + 0x134], edi
mov esi, dword [esp + 8]
mov dword [esp + 0x140], esi
mov dword [esp + 0x130], ebp
mov esi, dword [esp + 0x14]
mov dword [esp + 0x13c], esi
mov esi, dword [esp + 4]
mov dword [esp + 0x12c], esi
mov dword [esp + 0x138], edx
mov esi, dword [esp]
mov dword [esp + 0x128], esi
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], eax
mov ecx, 0x10
nop dword [eax]
mov dword [esp], ecx
mov ebx, edx
mov eax, edx
mov edi, dword [esp + 0x140]
mov esi, dword [esp + 0x13c]
xor esi, edi
and esi, edx
rol edx, 0x1a
rol ebx, 0x15
rol eax, 7
xor ebx, edx
xor eax, ebx
add eax, dword [esp + 0x144]
mov edx, dword [esp + ecx*4 + 0x20]
mov ebx, edx
rol ebx, 0xf
mov ebp, edx
rol ebp, 0xd
xor ebp, ebx
shr edx, 0xa
xor edx, ebp
add edx, dword [esp + ecx*4 + 0xc]
mov ebx, dword [esp + ecx*4 - 0x14]
mov ebp, ebx
rol ebp, 0x19
xor esi, edi
mov edi, ebx
rol edi, 0xe
xor edi, ebp
shr ebx, 3
add edx, dword [esp + ecx*4 - 0x18]
xor ebx, edi
add edx, ebx
add eax, dword [ecx*4 + 0x43d360]
mov dword [esp + ecx*4 + 0x28], edx
add eax, esi
add eax, edx
mov dword [esp + 0x20], eax
mov ebx, dword [esp + 0x128]
mov esi, dword [esp + 0x12c]
mov edi, ebx
mov edx, ebx
mov ebp, esi
and ebp, ebx
or esi, ebx
rol ebx, 0x1e
rol edi, 0x13
xor edi, ebx
rol edx, 0xa
xor edx, edi
and esi, dword [esp + 0x130]
or esi, ebp
add esi, edx
mov dword [esp + 0x24], esi
add esi, eax
add eax, dword [esp + 0x134]
mov dword [esp + 0x134], eax
mov edi, eax
mov edx, eax
mov ebx, eax
rol ebx, 0x1a
rol edi, 0x15
mov dword [esp + 0x144], esi
mov ebp, dword [esp + 0x13c]
mov esi, dword [esp + 0x138]
xor esi, ebp
and esi, eax
xor edi, ebx
rol edx, 7
xor edx, edi
add edx, dword [esp + 0x140]
xor esi, ebp
mov eax, dword [esp + ecx*4 + 0x24]
mov edi, eax
rol edi, 0xf
mov ebx, eax
rol ebx, 0xd
xor ebx, edi
shr eax, 0xa
xor eax, ebx
add eax, dword [esp + ecx*4 + 0x10]
mov edi, dword [esp + ecx*4 - 0x10]
mov ebx, edi
rol ebx, 0x19
mov ebp, edi
rol ebp, 0xe
xor ebp, ebx
shr edi, 3
xor edi, ebp
add eax, dword [esp + ecx*4 - 0x14]
add eax, edi
mov dword [esp + ecx*4 + 0x2c], eax
add edx, dword [ecx*4 + 0x43d364]
add eax, esi
add eax, edx
mov dword [esp + 0x20], eax
mov edi, dword [esp + 0x144]
mov esi, edi
mov edx, dword [esp + 0x128]
mov ebx, edx
and ebx, edi
or edx, edi
mov ebp, edi
rol ebp, 0x1e
rol esi, 0x13
xor esi, ebp
rol edi, 0xa
xor edi, esi
mov ebp, dword [esp + 0x138]
and edx, dword [esp + 0x12c]
or edx, ebx
add edx, edi
mov dword [esp + 0x24], edx
add edx, eax
add eax, dword [esp + 0x130]
mov dword [esp + 0x130], eax
mov dword [esp + 0x140], edx
mov ebx, eax
mov edx, eax
mov edi, eax
rol edi, 0x1a
rol ebx, 0x15
mov esi, dword [esp + 0x134]
xor esi, ebp
and esi, eax
xor ebx, edi
rol edx, 7
xor edx, ebx
add edx, dword [esp + 0x13c]
xor esi, ebp
mov eax, dword [esp + ecx*4 + 0x28]
mov edi, eax
rol edi, 0xf
mov ebx, eax
rol ebx, 0xd
xor ebx, edi
shr eax, 0xa
xor eax, ebx
add eax, dword [esp + ecx*4 + 0x14]
mov edi, dword [esp + ecx*4 - 0xc]
mov ebx, edi
rol ebx, 0x19
mov ebp, edi
rol ebp, 0xe
xor ebp, ebx
shr edi, 3
xor edi, ebp
add eax, dword [esp + ecx*4 - 0x10]
add eax, edi
mov dword [esp + ecx*4 + 0x30], eax
add edx, dword [ecx*4 + 0x43d368]
add eax, esi
add eax, edx
mov dword [esp + 0x20], eax
mov edi, dword [esp + 0x140]
mov esi, edi
mov edx, dword [esp + 0x144]
mov ebx, edx
and ebx, edi
or edx, edi
mov ebp, edi
rol ebp, 0x1e
rol esi, 0x13
xor esi, ebp
rol edi, 0xa
xor edi, esi
mov ebp, dword [esp + 0x134]
and edx, dword [esp + 0x128]
or edx, ebx
add edx, edi
mov dword [esp + 0x24], edx
add edx, eax
add eax, dword [esp + 0x12c]
mov dword [esp + 0x12c], eax
mov dword [esp + 0x13c], edx
mov ebx, eax
mov edx, eax
mov edi, eax
rol edi, 0x1a
rol ebx, 0x15
mov esi, dword [esp + 0x130]
xor esi, ebp
and esi, eax
xor ebx, edi
rol edx, 7
xor edx, ebx
add edx, dword [esp + 0x138]
xor esi, ebp
mov eax, dword [esp + ecx*4 + 0x2c]
mov edi, eax
rol edi, 0xf
mov ebx, eax
rol ebx, 0xd
xor ebx, edi
shr eax, 0xa
xor eax, ebx
add eax, dword [esp + ecx*4 + 0x18]
mov edi, dword [esp + ecx*4 - 8]
mov ebx, edi
rol ebx, 0x19
mov ebp, edi
rol ebp, 0xe
xor ebp, ebx
shr edi, 3
xor edi, ebp
add eax, dword [esp + ecx*4 - 0xc]
add eax, edi
mov dword [esp + ecx*4 + 0x34], eax
add edx, dword [ecx*4 + 0x43d36c]
add eax, esi
add eax, edx
mov dword [esp + 0x20], eax
mov edi, dword [esp + 0x13c]
mov esi, edi
mov edx, dword [esp + 0x140]
mov ebx, edx
and ebx, edi
or edx, edi
mov ebp, edi
rol ebp, 0x1e
rol esi, 0x13
xor esi, ebp
rol edi, 0xa
xor edi, esi
mov ebp, dword [esp + 0x130]
and edx, dword [esp + 0x144]
or edx, ebx
add edx, edi
mov dword [esp + 0x24], edx
add edx, eax
add eax, dword [esp + 0x128]
mov dword [esp + 0x128], eax
mov dword [esp + 0x138], edx
mov ebx, eax
mov edx, eax
mov edi, eax
rol edi, 0x1a
rol ebx, 0x15
mov esi, dword [esp + 0x12c]
xor esi, ebp
and esi, eax
xor ebx, edi
rol edx, 7
xor edx, ebx
add edx, dword [esp + 0x134]
xor esi, ebp
mov eax, dword [esp + ecx*4 + 0x30]
mov edi, eax
rol edi, 0xf
mov ebx, eax
rol ebx, 0xd
xor ebx, edi
shr eax, 0xa
xor eax, ebx
add eax, dword [esp + ecx*4 + 0x1c]
mov edi, dword [esp + ecx*4 - 4]
mov ebx, edi
rol ebx, 0x19
mov ebp, edi
rol ebp, 0xe
xor ebp, ebx
shr edi, 3
xor edi, ebp
add eax, dword [esp + ecx*4 - 8]
add eax, edi
mov dword [esp + ecx*4 + 0x38], eax
add edx, dword [ecx*4 + 0x43d370]
add eax, esi
add eax, edx
mov dword [esp + 0x20], eax
mov edi, dword [esp + 0x138]
mov esi, edi
mov edx, dword [esp + 0x13c]
mov ebx, edx
and ebx, edi
or edx, edi
mov ebp, edi
rol ebp, 0x1e
rol esi, 0x13
xor esi, ebp
rol edi, 0xa
xor edi, esi
mov ebp, dword [esp + 0x12c]
and edx, dword [esp + 0x140]
or edx, ebx
add edx, edi
mov dword [esp + 0x24], edx
add edx, eax
add eax, dword [esp + 0x144]
mov dword [esp + 0x144], eax
mov dword [esp + 0x134], edx
mov ebx, eax
mov edx, eax
mov edi, eax
rol edi, 0x1a
rol ebx, 0x15
mov esi, dword [esp + 0x128]
xor esi, ebp
and esi, eax
xor ebx, edi
rol edx, 7
xor edx, ebx
add edx, dword [esp + 0x130]
xor esi, ebp
mov eax, dword [esp + ecx*4 + 0x34]
mov edi, eax
rol edi, 0xf
mov ebx, eax
rol ebx, 0xd
xor ebx, edi
shr eax, 0xa
xor eax, ebx
add eax, dword [esp + ecx*4 + 0x20]
mov edi, dword [esp + ecx*4]
mov ebx, edi
rol ebx, 0x19
mov ebp, edi
rol ebp, 0xe
xor ebp, ebx
shr edi, 3
xor edi, ebp
add eax, dword [esp + ecx*4 - 4]
add eax, edi
mov dword [esp + ecx*4 + 0x3c], eax
add edx, dword [ecx*4 + 0x43d374]
add eax, esi
add eax, edx
mov dword [esp + 0x20], eax
mov edi, dword [esp + 0x134]
mov esi, edi
mov edx, dword [esp + 0x138]
mov ebx, edx
and ebx, edi
or edx, edi
mov ebp, edi
rol ebp, 0x1e
rol esi, 0x13
xor esi, ebp
rol edi, 0xa
xor edi, esi
mov esi, dword [esp + 0x128]
and edx, dword [esp + 0x13c]
or edx, ebx
add edx, edi
mov dword [esp + 0x24], edx
add edx, eax
add eax, dword [esp + 0x140]
mov dword [esp + 0x140], eax
mov dword [esp + 0x130], edx
mov edx, eax
mov edi, eax
mov ebx, eax
rol ebx, 0x1a
rol edx, 0x15
rol edi, 7
xor edx, ebx
xor edi, edx
add edi, dword [esp + 0x12c]
mov edx, dword [esp + ecx*4 + 0x38]
mov ebx, edx
rol ebx, 0xf
mov ebp, edx
rol ebp, 0xd
xor ebp, ebx
mov ebx, dword [esp + 0x144]
xor ebx, esi
shr edx, 0xa
xor edx, ebp
add edx, dword [esp + ecx*4 + 0x24]
mov ebp, dword [esp + ecx*4 + 4]
mov ecx, ebp
rol ecx, 0x19
and ebx, eax
mov eax, ebp
rol eax, 0xe
xor ebx, esi
xor eax, ecx
shr ebp, 3
xor ebp, eax
mov esi, dword [esp]
add edx, dword [esp + esi*4]
add edx, ebp
mov dword [esp + esi*4 + 0x40], edx
add edi, dword [esi*4 + 0x43d378]
add edx, ebx
add edx, edi
mov dword [esp + 0x20], edx
mov esi, dword [esp + 0x130]
mov edi, esi
mov eax, dword [esp + 0x134]
mov ebx, eax
and ebx, esi
or eax, esi
mov ecx, esi
rol ecx, 0x1e
rol edi, 0x13
mov ebp, esi
xor edi, ecx
rol ebp, 0xa
xor ebp, edi
mov esi, dword [esp + 0x144]
and eax, dword [esp + 0x138]
or eax, ebx
add eax, ebp
mov dword [esp + 0x24], eax
add eax, edx
add edx, dword [esp + 0x13c]
mov dword [esp + 0x13c], edx
mov dword [esp + 0x12c], eax
mov ebx, edx
mov eax, edx
mov edi, dword [esp + 0x140]
xor edi, esi
and edi, edx
rol edx, 0x1a
rol ebx, 0x15
rol eax, 7
xor ebx, edx
xor eax, ebx
add eax, dword [esp + 0x128]
mov ebp, dword [esp]
mov edx, dword [esp + ebp*4 + 0x3c]
mov ecx, edx
rol ecx, 0xf
mov ebx, edx
rol ebx, 0xd
xor ebx, ecx
shr edx, 0xa
xor edx, ebx
add edx, dword [esp + ebp*4 + 0x28]
mov ebx, dword [esp + ebp*4 + 8]
mov ecx, ebx
rol ecx, 0x19
xor edi, esi
mov esi, ebx
rol esi, 0xe
xor esi, ecx
shr ebx, 3
add edx, dword [esp + ebp*4 + 4]
xor ebx, esi
add edx, ebx
add eax, dword [ebp*4 + 0x43d37c]
mov dword [esp + ebp*4 + 0x44], edx
add edx, edi
add edx, eax
mov dword [esp + 0x20], edx
mov eax, dword [esp + 0x12c]
mov ecx, eax
rol ecx, 0x1e
mov esi, eax
rol esi, 0x13
xor esi, ecx
mov edi, eax
rol edi, 0xa
xor edi, esi
movsd xmm0, qword [esp + 0x130]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
movd ecx, xmm1
movd esi, xmm0
mov ebx, esi
and ebx, eax
or esi, eax
and esi, ecx
or esi, ebx
add esi, edi
mov dword [esp + 0x24], esi
add esi, edx
add edx, dword [esp + 0x138]
mov dword [esp + 0x138], edx
mov dword [esp + 0x128], esi
lea ecx, [ebp + 8]
cmp ebp, 0x38
jb 0x42c9f0
movd xmm1, eax
movd xmm2, esi
punpckldq xmm2, xmm1
punpcklqdq xmm2, xmm0
mov eax, dword [esp + 0x160]
movdqu xmm0, xmmword [eax + 0x48]
paddd xmm0, xmm2
movdqu xmm1, xmmword [eax + 0x58]
movdqu xmmword [eax + 0x48], xmm0
movq xmm0, qword [esp + 0x140]
movd xmm2, edx
movd xmm3, dword [esp + 0x13c]
punpckldq xmm2, xmm3
punpcklqdq xmm2, xmm0
paddd xmm2, xmm1
movdqu xmmword [eax + 0x58], xmm2
lea eax, [esp + 0x20]
push 0x128
push eax
call fcn.00422b60
add esp, 8
xor eax, eax
add esp, 0x14c
pop esi
pop edi
pop ebx
pop ebp
ret