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

Disassembly:
push ebp
mov ebp, esp
or dword [0x4495e0], 0x6ffff8fb
mov eax, dword [0x451c98]
sub esp, 0x130
push ebx
push esi
push edi
or edi, 0xffffffff
add dword [0x451c98], edi
cmp eax, 0x874117bc
jl 0x431fb3
fld dword [0x4aa144]
fadd dword [0x49c9e8]
fadd dword [0x4a0a94]
fstp dword [0x4a0a94]
fld dword [0x4a3a0c]
mov ecx, dword [ebp + 0xc]
fadd qword [0x46d230]
xor edx, edx
add ecx, 2
mov ebx, 0x842734ae
fstp qword [0x46d230]
fld dword [0x4b4514]
fadd dword [0x4a455c]
fld qword [0x47cea8]
fld dword [0x4b46b4]
faddp st(2)
fsubrp st(1)
fstp qword [0x47cea8]
fld dword [0x4a455c]
fld1
fsub st(1), st(0)
fxch st(1)
fstp dword [0x4a455c]
xor dword [0x445500], 0xe2c7878e
add dword [0x44e78c], edi
mov eax, dword [0x44e78c]
cmp eax, 0x4c1f81f2
je 0x432032
mov eax, dword [0x44b6dc]
imul eax, eax, 0xa5874255
mov dword [0x44b6dc], eax
movzx eax, byte [ecx - 2]
movzx esi, byte [ecx - 1]
shl eax, 8
or eax, esi
movzx esi, byte [ecx]
shl eax, 8
or eax, esi
movzx esi, byte [ecx + 1]
shl eax, 8
or eax, esi
mov dword [ebp + edx*4 - 0x130], eax
mov eax, dword [0x44586c]
imul eax, eax, 0xb7b7bfe1
mov dword [0x44586c], eax
add dword [0x454c98], ebx
mov ax, word [0x48ed0e]
movsx esi, ax
mov eax, dword [0x453b04]
not eax
sub eax, esi
add dword [0x4478cc], eax
add word [0x48ed0e], di
inc edx
add ecx, 4
cmp edx, 0x10
jne 0x432006
fld dword [0x4ac290]
fmul dword [0x4afda4]
fld qword [0x47a258]
fld dword [0x4aa0b8]
fmulp st(2)
fld dword [0x4afda4]
faddp st(3)
fxch st(2)
fstp dword [0x4afda4]
fxch st(1)
fcompi st(1)
fstp st(0)
jb 0x4320d7
mov ecx, 0xffff8964
mov word [0x4991e8], cx
mov eax, dword [ebp + 8]
add eax, 8
push 0x24
push eax
lea edx, [ebp - 0x30]
push edx
mov dword [ebp - 8], eax
call fcn.004325b0
or dword [0x44e9c0], 0xa749e80c
push 0x100
push 0x2e
call fcn.00404f10
fld1
mov dword [ebp - 4], eax
mov ax, word [0x48daea]
cwde
and eax, 0x64a2b35d
or dword [0x43f46c], eax
lea eax, [ebp - 0x30]
xor esi, esi
sub eax, 4
lea edi, [ebp - 0x130]
add esp, 0x14
mov dword [ebp + 8], esi
mov dword [ebp - 0xc], eax
sub edi, 8
add dword [0x4410b4], 0x2a2d8b94
cmp esi, 0xf
jle 0x432240
mov edx, 1
add dword [0x43cd4c], edx
mov eax, dword [0x43cd4c]
movzx ecx, word [0x490062]
imul eax, eax, 0x7e25b614
lea eax, [ecx + eax + 0x3ad64a7b]
mov ecx, dword [edi]
mov word [0x490062], ax
mov eax, ecx
mov ebx, ecx
rol eax, 0xf
rol ebx, 0xd
shr ecx, 0xa
xor eax, ebx
xor eax, ecx
movzx ecx, word [0x498966]
movsx ecx, cx
mov dword [edi + 8], eax
add word [0x498966], dx
cmp ecx, 0x41d2a896
jle 0x4321b3
mov edx, dword [0x4431bc]
imul edx, edx, 0xcb66f105
mov dword [0x4431bc], edx
jmp 0x4321cd
mov ecx, dword [0x451964]
not ecx
cmp ecx, 0x89080420
jle 0x4321cd
add dword [0x43c23c], 0x8fd0066a
add dword [0x44ee2c], 0xced899c5
fld qword [0x46d698]
mov ecx, dword [edi - 0x34]
fld dword [0x4a8db4]
mov edx, ecx
rol edx, 0xe
mov ebx, ecx
ror ebx, 7
xor edx, ebx
shr ecx, 3
xor edx, ecx
add edx, dword [edi - 0x14]
fucompi st(1)
fstp st(0)
lea ecx, [edx + eax]
lahf
mov dword [edi + 8], ecx
test ah, 0x44
jnp 0x432226
mov eax, dword [0x44795c]
imul eax, eax, 0x366e9ff9
or eax, 0x90c09801
and dword [0x4475c0], eax
dec dword [0x44795c]
fld dword [0x4a9d90]
mov eax, dword [edi - 0x38]
fadd dword [0x4a0440]
add eax, ecx
mov dword [edi + 8], eax
fstp dword [0x4a6cc4]
movzx ecx, word [0x49963a]
sub ecx, 0x6000340
mov word [0x49963a], cx
and dword [0x4511e8], 0xfdef7073
mov ecx, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x1c]
mov eax, ecx
mov edx, ecx
ror eax, 0xb
rol edx, 7
xor eax, edx
mov edx, ecx
ror edx, 6
xor eax, edx
mov edx, dword [ebp - 0x18]
xor ebx, edx
and ebx, ecx
mov ecx, dword [ebp - 4]
xor ebx, edx
add eax, ebx
add eax, dword [ecx + esi*4]
mov ecx, dword [0x45151c]
add eax, dword [edi + 8]
not ecx
add eax, dword [ebp - 0x14]
add ecx, 0xd1425f44
add dword [0x4403fc], ecx
mov edx, dword [ebp - 0x30]
add dword [ebp - 0x24], eax
mov ecx, edx
ror ecx, 0xd
mov esi, edx
rol esi, 0xa
xor ecx, esi
mov esi, edx
ror esi, 2
xor ecx, esi
mov esi, dword [ebp - 0x2c]
mov ebx, esi
or ebx, edx
and ebx, dword [ebp - 0x28]
mov dword [0x451fe4], 0x2246a68
or dword [0x4401e4], 0xea6c5602
and esi, edx
fld dword [0x4aabd0]
or ebx, esi
fadd dword [0x4b1d4c]
add ecx, ebx
add ecx, eax
mov dword [ebp - 0x14], ecx
fstp dword [0x4aabd0]
mov dx, word [0x48dc98]
movzx ecx, word [0x48f234]
movsx eax, dx
and ecx, eax
mov word [0x48dc98], cx
mov ecx, dword [ebp - 0xc]
fld qword [0x4653f8]
mov eax, 8
fsub dword [0x49d6b0]
or edx, 0xffffffff
fsub dword [0x4ab778]
fadd dword [0x4ae29c]
fstp dword [0x4ae29c]
fld dword [0x49d6b0]
fadd st(1)
fstp dword [0x49d6b0]
mov esi, dword [0x44ae80]
add dword [0x44ae80], edx
cmp esi, 0xa20559ae
jg 0x43236f
movzx esi, word [0x4967ca]
xor esi, 0xa90404
mov word [0x4967ca], si
sub eax, 1
fld dword [0x4b0138]
fmul qword [0x45a050]
mov esi, dword [ecx + eax*4 + 4]
mov dword [ebp + eax*4 - 0x2c], esi
fmul dword [0x4a043c]
fstp dword [0x4a043c]
jne 0x432347
movzx edx, word [0x49283e]
mov eax, dword [ebp - 0x10]
mov esi, dword [ebp + 8]
sub edx, 0x4aae34f7
mov dword [ebp - 0x30], eax
mov word [0x49283e], dx
mov eax, dword [0x450098]
movzx ecx, word [0x4968b4]
imul eax, eax, 0xd9f8945
and eax, 0x2ae0b1c5
inc esi
sub ecx, eax
add edi, 4
mov word [0x4968b4], cx
mov dword [ebp + 8], esi
cmp esi, 0x40
jne 0x432133
mov edx, dword [ebp - 4]
fstp st(0)
fld dword [0x4a5598]
push edx
fsub dword [0x4a64c0]
push 0x100
fstp dword [0x4a5598]
call fcn.0042a4b0
mov ax, word [0x48cd3e]
mov ecx, dword [ebp - 8]
add esp, 8
cwde
sub dword [0x44e650], eax
pop edi
pop esi
xor eax, eax
pop ebx
jmp 0x432420
mov edx, dword [0x45224c]
or edx, 0xd459007d
xor dword [0x440514], edx
mov edx, dword [ebp + eax*4 - 0x30]
add dword [ecx], edx
fld dword [0x4a9148]
fadd qword [0x4879d0]
inc eax
add ecx, 4
fadd dword [0x49bf40]
fstp dword [0x49bf40]
cmp eax, 8
jne 0x432420
fld dword [0x49da8c]
fadd dword [0x4b0b50]
fstp dword [0x49da8c]
mov esp, ebp
pop ebp
ret