Function at 0x4194b0
Capabilities:
Encrypt data using chaskey
Hash data using murmur3

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x14c
mov eax, dword [esp + 0x164]
mov ecx, dword [esp + 0x160]
mov edx, 0x9f7927a2
mov dword [esp + 0x148], eax
mov dword [esp + 0x144], ecx
mov eax, dword [0x498294]
dec eax
mov dword [0x498294], eax
xor eax, 0xc3e4471e
mov ecx, dword [0x498ab4]
or ecx, eax
mov dword [0x498ab4], ecx
mov eax, dword [0x497e64]
mov ecx, eax
inc ecx
mov dword [0x497e64], ecx
cmp edx, eax
jne 0x419530
mov eax, dword [0x498df0]
mov ecx, eax
inc ecx
mov dword [0x498df0], ecx
or eax, 0x52032973
mov ecx, dword [0x4998c0]
xor ecx, eax
mov dword [0x4998c0], ecx
mov ax, word [0x49a816]
movsx ecx, ax
add ecx, 0xde309705
mov edx, dword [0x499990]
sub ecx, edx
mov edx, dword [0x498084]
imul edx, ecx
mov dword [0x498084], edx
mov ecx, dword [0x49953c]
mov edx, dword [0x498240]
mov esi, edx
inc esi
mov dword [0x498240], esi
sub ecx, edx
cmp ecx, 0xed80190b
jl 0x419588
mov eax, dword [0x499314]
add eax, 0xcda1a12b
mov dword [0x499314], eax
mov dword [esp + 0x14], 0
cmp dword [esp + 0x14], 0x10
je 0x419663
mov ax, word [0x49a3ba]
mov cx, ax
add ecx, 0xf2f72d05
mov ax, cx
mov word [0x49a3ba], ax
mov ecx, dword [0x499af8]
add ecx, 0x851a1aca
mov dword [0x499af8], ecx
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x148]
movzx esi, byte [edx + ecx*4]
shl esi, 0x18
movzx edi, byte [edx + ecx*4 + 1]
shl edi, 0x10
or esi, edi
movzx edi, byte [edx + ecx*4 + 2]
shl edi, 8
or esi, edi
movzx edx, byte [edx + ecx*4 + 3]
or esi, edx
mov dword [esp + ecx*4 + 0x3c], esi
mov ecx, dword [0x497a70]
mov edx, dword [0x499284]
not edx
and ecx, edx
and ecx, 0xbb902eec
mov edx, dword [0x497e98]
imul edx, ecx
mov dword [0x497e98], edx
mov ecx, dword [0x498f94]
sar ecx, 7
mov edx, dword [0x498884]
imul ecx, edx
mov edx, dword [0x499360]
sub edx, ecx
mov dword [0x499360], edx
mov ax, word [0x49a0a8]
mov cx, ax
xor ecx, 0x5b5e
mov ax, cx
mov word [0x49a0a8], ax
mov eax, dword [esp + 0x14]
add eax, 1
mov dword [esp + 0x14], eax
jmp 0x419590
mov eax, 0xffbbb33f
mov ecx, dword [0x498ef4]
mov edx, ecx
dec edx
mov dword [0x498ef4], edx
add ecx, 0xe5aff5c0
mov edx, dword [0x498dec]
or ecx, edx
cmp eax, ecx
jle 0x4196db
mov eax, dword [0x498a18]
mov ecx, eax
dec ecx
mov dword [0x498a18], ecx
and eax, 0x1191aa77
cmp eax, 0x75825cf4
jle 0x4196d6
mov ax, word [0x499f10]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x499f10], dx
movsx ecx, ax
mov esi, dword [0x497f54]
and ecx, esi
and ecx, 0x351b7043
mov dword [0x497f54], ecx
jmp 0x4196db
mov eax, 0x37797abd
mov ecx, dword [esp + 0x144]
mov edx, dword [ecx + 0x28]
mov dword [esp + 0x38], edx
movsd xmm0, qword [ecx + 0x20]
movsd qword [esp + 0x30], xmm0
movsd xmm0, qword [ecx + 0x18]
movsd qword [esp + 0x28], xmm0
movsd xmm0, qword [ecx + 8]
movsd xmm1, qword [ecx + 0x10]
movsd qword [esp + 0x20], xmm1
movsd qword [esp + 0x18], xmm0
mov ecx, dword [0x499958]
mov edx, ecx
inc edx
mov dword [0x499958], edx
mov si, word [0x49a668]
movsx edx, si
and ecx, edx
cmp eax, ecx
jl 0x41978d
mov eax, dword [0x498ea0]
shl eax, 5
cmp eax, 0xcef0d999
jg 0x419788
mov eax, dword [0x4996c4]
mov ecx, eax
inc ecx
mov dword [0x4996c4], ecx
and eax, 0x197e
mov ecx, dword [0x498238]
dec ecx
mov dword [0x498238], ecx
xor eax, ecx
mov dx, word [0x49a11a]
mov cx, dx
add ecx, eax
mov dx, cx
mov word [0x49a11a], dx
jmp 0x41978d
mov eax, esp
mov dword [eax + 4], 0x100
mov dword [eax], 0x7cc7
call fcn.0043a250
mov dword [esp + 0xc], eax
mov eax, dword [0x499a68]
imul eax, eax, 0x8b8f0d29
mov dword [0x499a68], eax
mov dword [esp + 0x14], 0
cmp dword [esp + 0x14], 0x40
je 0x419b99
mov ax, word [0x49a5d2]
mov cx, ax
imul ecx, ecx, 0x2c7fcf90
mov ax, cx
mov word [0x49a5d2], ax
cmp dword [esp + 0x14], 0xf
jle 0x4198d5
mov eax, 0x3a7df7ef
mov ecx, dword [0x498728]
or ecx, 0x7369dce
mov dword [0x498728], ecx
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + ecx*4 + 0x34]
mov esi, edx
rol esi, 0xf
mov edi, edx
rol edi, 0xd
xor esi, edi
shr edx, 0xa
xor esi, edx
mov dword [esp + ecx*4 + 0x3c], esi
mov word [0x49a982], 0x7cdd
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + ecx*4 + 0x20]
mov esi, dword [esp + ecx*4 + 0x3c]
add esi, edx
mov dword [esp + ecx*4 + 0x3c], esi
mov ecx, dword [0x497708]
and ecx, 0x96fb
xor ecx, 0x69cd
mov bx, cx
mov word [0x49a788], bx
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + ecx*4]
mov esi, edx
rol esi, 0x19
mov edi, edx
rol edi, 0xe
xor esi, edi
shr edx, 3
xor esi, edx
mov edx, dword [esp + ecx*4 + 0x3c]
add edx, esi
mov dword [esp + ecx*4 + 0x3c], edx
mov ecx, dword [0x498964]
mov edx, dword [0x497a00]
imul edx, ecx
mov dword [0x497a00], edx
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + ecx*4 - 4]
mov esi, dword [esp + ecx*4 + 0x3c]
add esi, edx
mov dword [esp + ecx*4 + 0x3c], esi
mov ecx, dword [0x497d94]
and ecx, 0x79027fbc
cmp eax, ecx
je 0x4198c7
mov eax, dword [0x4987b8]
and eax, 0xc5cd84b7
mov dword [0x4987b8], eax
jmp 0x4198d0
mov word [0x49a5da], 0x29f8
jmp 0x4198d5
mov eax, 0x48493
mov ecx, dword [0x499114]
or ecx, 0xbc522156
mov dword [0x499114], ecx
mov ecx, dword [0x497fb8]
imul ecx, ecx, 0xac008908
mov dword [0x497fb8], ecx
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x28]
mov esi, dword [esp + 0x2c]
mov edi, edx
rol edi, 0x1a
mov ebx, edx
rol ebx, 0x15
xor edi, ebx
mov ebx, edx
rol ebx, 7
xor edi, ebx
add ecx, edi
mov edi, dword [esp + 0x30]
xor esi, edi
and edx, esi
xor edi, edx
add ecx, edi
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0xc]
mov esi, dword [esi + edx*4]
add ecx, esi
mov edx, dword [esp + edx*4 + 0x3c]
add ecx, edx
mov dword [esp + 0x140], ecx
mov ecx, dword [0x498e38]
add ecx, 0x8cdd7c66
mov dword [0x498e38], ecx
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov esi, ecx
rol esi, 0x1e
mov edi, ecx
rol edi, 0x13
xor esi, edi
mov edi, ecx
rol edi, 0xa
xor esi, edi
mov edi, ecx
and edi, edx
mov ebx, dword [esp + 0x20]
or ecx, edx
and ebx, ecx
or edi, ebx
add esi, edi
mov dword [esp + 0x13c], esi
mov ecx, dword [0x4996f0]
shl ecx, 6
mov edx, dword [0x497e08]
or ecx, edx
or ecx, 0x7fad27e5
mov dword [0x497e08], ecx
mov ecx, dword [esp + 0x140]
mov edx, dword [esp + 0x24]
add edx, ecx
mov dword [esp + 0x24], edx
mov ecx, dword [0x4978cc]
add ecx, 0x4a60958c
mov dword [0x4978cc], ecx
mov ecx, dword [esp + 0x140]
mov edx, dword [esp + 0x13c]
add ecx, edx
mov dword [esp + 0x34], ecx
mov ecx, dword [0x497d14]
add ecx, 0xcfa41b75
mov dword [0x497d14], ecx
mov ecx, dword [0x499948]
xor ecx, 0x218a8f03
mov dword [0x499948], ecx
mov bp, word [0x49a934]
movsx ecx, bp
xor ecx, 0xffffffff
and ecx, 0x6d26e845
cmp eax, ecx
jl 0x419a30
mov eax, dword [0x497ee8]
and eax, 0x58720078
mov dword [0x497ee8], eax
jmp 0x419a48
mov eax, dword [0x4977c8]
xor eax, 0xd0ea10e8
mov ecx, dword [0x497a64]
and ecx, eax
mov dword [0x497a64], ecx
mov dword [esp + 0x10], 8
cmp dword [esp + 0x10], 0
je 0x419ab7
mov eax, 0x6f31d935
mov ecx, dword [0x499490]
mov edx, ecx
dec edx
mov dword [0x499490], edx
xor ecx, 0x6c9c709c
cmp eax, ecx
jne 0x419a8c
mov eax, dword [0x49889c]
and eax, 0xe8f2dedf
mov dword [0x49889c], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + eax*4 + 0x14]
mov dword [esp + eax*4 + 0x18], ecx
mov eax, dword [0x4977a0]
add eax, 0x9ddd1ffa
mov dword [0x4977a0], eax
mov eax, dword [esp + 0x10]
add eax, 0xffffffff
mov dword [esp + 0x10], eax
jmp 0x419a50
mov eax, 0xbbd2e4c8
mov ecx, dword [0x497e5c]
sar ecx, 3
cmp eax, ecx
je 0x419aee
mov eax, dword [0x4988ac]
mov ecx, eax
inc ecx
mov dword [0x4988ac], ecx
mov ecx, dword [0x498d2c]
add ecx, eax
mov dword [0x498d2c], ecx
jmp 0x419afd
mov eax, dword [0x497c08]
and eax, 0xfa25f0a8
mov dword [0x497c08], eax
mov eax, 0xf5965359
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x499824]
cmp eax, ecx
jge 0x419b75
mov eax, 0x2bbb7b79
mov ecx, dword [0x499058]
mov edx, ecx
dec edx
mov dword [0x499058], edx
and ecx, 0xa2f2b61d
xor ecx, 0x8dd47300
mov edx, dword [0x498cd0]
inc edx
mov dword [0x498cd0], edx
mov esi, dword [0x499694]
imul edx, esi
sub eax, edx
cmp ecx, eax
jl 0x419b70
mov ax, word [0x49a612]
mov cx, ax
add ecx, 0x2b9b5ae8
mov ax, cx
mov word [0x49a612], ax
jmp 0x419b84
mov eax, dword [0x498908]
add eax, 0x8671dc01
mov dword [0x498908], eax
jmp 0x419b89
mov eax, dword [esp + 0x14]
add eax, 1
mov dword [esp + 0x14], eax
jmp 0x4197bd
mov eax, 0xc959874d
mov cx, word [0x49a036]
mov dx, cx
add edx, 0xd587c176
mov cx, dx
mov word [0x49a036], cx
mov edx, dword [esp + 0xc]
mov esi, esp
mov dword [esi + 4], edx
mov dword [esi], 0x100
mov dword [esp + 8], eax
call fcn.004050b0
mov cx, word [0x49a7e2]
mov ax, cx
dec eax
mov di, ax
mov word [0x49a7e2], di
movsx eax, cx
and eax, 0x4afba447
mov edx, dword [0x498118]
inc edx
mov dword [0x498118], edx
mov esi, dword [esp + 8]
sub esi, edx
xor esi, 0x660ecb21
cmp eax, esi
jl 0x419c38
mov ax, word [0x49aa22]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x49aa22], ax
movsx ecx, ax
and ecx, 0x73d1f7f6
mov edx, dword [0x4993f4]
sub edx, ecx
mov dword [0x4993f4], edx
mov dword [esp + 0x14], 0
cmp dword [esp + 0x14], 8
je 0x419c9e
mov ax, word [0x49a730]
mov cx, ax
imul ecx, ecx, 0x4693e393
mov ax, cx
mov word [0x49a730], ax
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + ecx*4 + 0x18]
mov esi, dword [esp + 0x144]
mov edi, dword [esi + ecx*4 + 8]
add edi, edx
mov dword [esi + ecx*4 + 8], edi
mov ecx, dword [0x499a78]
imul ecx, ecx, 0x56f656f1
mov dword [0x499a78], ecx
mov eax, dword [esp + 0x14]
add eax, 1
mov dword [esp + 0x14], eax
jmp 0x419c40
mov eax, 0xf637a498
mov cx, word [0x49a806]
movsx edx, cx
xor edx, 0xffffffff
sub edx, 0xac2a1e3a
cmp eax, edx
jg 0x419ce7
mov eax, dword [0x4986c8]
mov ecx, eax
dec ecx
mov dword [0x4986c8], ecx
mov ecx, dword [0x498814]
xor eax, ecx
xor eax, 0xbb8ed493
mov ecx, dword [0x498380]
or ecx, eax
mov dword [0x498380], ecx
add esp, 0x14c
pop esi
pop edi
pop ebx
pop ebp
ret