Function at 0x56a387
Capabilities:
Hash data using murmur3

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x10
wait
fnstcw word [ebp - 8]
mov ax, word [ebp - 8]
movzx ecx, ax
and ecx, 1
shl ecx, 4
test al, 4
je 0x56a0a6
or ecx, 8
test al, 8
je 0x56a0ad
or ecx, 4
test al, 0x10
je 0x56a0b4
or ecx, 2
test al, 0x20
je 0x56a0bb
or ecx, 1
test al, 2
je 0x56a0c5
or ecx, 0x80000
push ebx
push esi
movzx esi, ax
mov ebx, 0xc00
mov edx, esi
push edi
mov edi, 0x200
and edx, ebx
je 0x56a101
cmp edx, 0x400
je 0x56a0fb
cmp edx, 0x800
je 0x56a0f7
cmp edx, ebx
jne 0x56a101
or ecx, 0x300
jmp 0x56a101
or ecx, edi
jmp 0x56a101
or ecx, 0x100
and esi, 0x300
je 0x56a115
cmp esi, edi
jne 0x56a11b
or ecx, 0x10000
jmp 0x56a11b
or ecx, 0x20000
movzx eax, ax
mov edx, 0x1000
test edx, eax
je 0x56a12d
or ecx, 0x40000
mov edi, dword [ebp + 0xc]
mov esi, edi
mov eax, dword [ebp + 8]
not esi
and esi, ecx
and eax, edi
or esi, eax
cmp esi, ecx
je 0x56a1ed
push esi
call 0x56a387
pop ecx
mov word [ebp - 4], ax
fldcw word [ebp - 4]
wait
fnstcw word [ebp - 4]
mov ax, word [ebp - 4]
movzx esi, ax
and esi, 1
shl esi, 4
test al, 4
je 0x56a16b
or esi, 8
test al, 8
je 0x56a172
or esi, 4
test al, 0x10
je 0x56a179
or esi, 2
test al, 0x20
je 0x56a180
or esi, 1
test al, 2
je 0x56a18a
or esi, 0x80000
movzx edx, ax
mov ecx, edx
and ecx, ebx
je 0x56a1bd
cmp ecx, 0x400
je 0x56a1b7
cmp ecx, 0x800
je 0x56a1af
cmp ecx, ebx
jne 0x56a1bd
or esi, 0x300
jmp 0x56a1bd
or esi, 0x200
jmp 0x56a1bd
or esi, 0x100
and edx, 0x300
je 0x56a1d5
cmp edx, 0x200
jne 0x56a1db
or esi, 0x10000
jmp 0x56a1db
or esi, 0x20000
movzx eax, ax
mov edx, 0x1000
test edx, eax
je 0x56a1ed
or esi, 0x40000
cmp dword [0x746e20], 1
jl 0x56a380
and edi, 0x308031f
stmxcsr dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
mov eax, ecx
shr eax, 3
and eax, 0x10
test ecx, 0x200
je 0x56a21a
or eax, 8
test ecx, 0x400
je 0x56a225
or eax, 4
test ecx, 0x800
je 0x56a230
or eax, 2
test edx, ecx
je 0x56a237
or eax, 1
test ecx, 0x100
je 0x56a244
or eax, 0x80000
mov edx, ecx
mov ebx, 0x6000
and edx, ebx
je 0x56a276
cmp edx, 0x2000
je 0x56a271
cmp edx, 0x4000
je 0x56a26a
cmp edx, ebx
jne 0x56a276
or eax, 0x300
jmp 0x56a276
or eax, 0x200
jmp 0x56a276
or eax, 0x100
push 0x40
and ecx, 0x8040
pop ebx
sub ecx, ebx
je 0x56a29d
sub ecx, 0x7fc0
je 0x56a296
sub ecx, ebx
jne 0x56a2a2
or eax, 0x1000000
jmp 0x56a2a2
or eax, 0x3000000
jmp 0x56a2a2
or eax, 0x2000000
mov ecx, edi
and edi, dword [ebp + 8]
not ecx
and ecx, eax
or ecx, edi
cmp ecx, eax
je 0x56a369
push ecx
call 0x56a425
push eax
mov dword [ebp - 0xc], eax
call fcn.0056e898
pop ecx
pop ecx
stmxcsr dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov eax, ecx
shr eax, 3
and eax, 0x10
test ecx, 0x200
je 0x56a2e0
or eax, 8
test ecx, 0x400
je 0x56a2eb
or eax, 4
test ecx, 0x800
je 0x56a2f6
or eax, 2
test ecx, 0x1000
je 0x56a301
or eax, 1
test ecx, 0x100
je 0x56a30e
or eax, 0x80000
mov edx, ecx
mov edi, 0x6000
and edx, edi
je 0x56a340
cmp edx, 0x2000
je 0x56a33b
cmp edx, 0x4000
je 0x56a334
cmp edx, edi
jne 0x56a340
or eax, 0x300
jmp 0x56a340
or eax, 0x200
jmp 0x56a340
or eax, 0x100
and ecx, 0x8040
sub ecx, ebx
je 0x56a364
sub ecx, 0x7fc0
je 0x56a35d
sub ecx, ebx
jne 0x56a369
or eax, 0x1000000
jmp 0x56a369
or eax, 0x3000000
jmp 0x56a369
or eax, 0x2000000
mov ecx, eax
xor eax, esi
or ecx, esi
test eax, 0x8031f
je 0x56a37c
or ecx, 0x80000000
mov eax, ecx
jmp 0x56a382
mov eax, esi
pop edi
pop esi
pop ebx
not esi
cmp ecx, 0xe73d21f3
jns 0x56a391
xor ebx, ebx
neg ebx
sub esi, edx
cmp ebx, 0x426af680
jno 0x56a3a3
test dword [0x74498a], edi
jge 0x56a3a7
xchg edi, edx
sub eax, edx
or edi, 0x418ebb37
shr edx, 2
ror esi, 0xa
sub ecx, edi
rol edx, 0x13
dec ebx
mov edx, 0x5f2b64ba
add edi, 0x8031e54d
shr eax, 0x12
ror ebx, 0xb
shr ecx, 0x1f
or edi, edi
call fcn.00540bd0
shr eax, 0x17
add ebx, ebp
xor edx, esp
ror edi, 0x1d
xor dword [0x75ac09], 0xe151eb53
mov ecx, 0x53ebb749
mov edi, esp
or edi, ebx
add edi, 0x1149e32f
shl edi, 0xa
or esi, 0xeb9e34bf
sub esi, dword [0x743f88]
not esi
cmp dword [0x746a29], 0x1b095c4f
je 0x56a41c
test dword [0x744b09], ebx
jle 0x56a423
mov ebx, 0xe8bd976b
xor eax, dword [0x7441ee]
mov dword [0x75ac3e], edi
shr edx, 0x1a
xor dword [0x75aa18], eax
neg edx
dec ecx
jne 0x56a3ef
mov ecx, 0x786f2335
or dword [0x75aa64], ebx
add esi, esp
inc edx
and eax, esp
neg esi
or edi, ecx
mov ebx, dword [0x7458e8]
rol esi, 0x13
sub edi, 0xe4f34eb1
dec edi
or edi, eax
xchg esi, eax
ror edx, 3
mov eax, edi
call fcn.0061a9d2
rol edi, 0x19
not ebx
inc ebx
or eax, esi
call fcn.006446ec
dec ecx
jne 0x56a443
mov ecx, 0x42d7a50e
cmp edi, 0x87db8542
jne 0x56a494
mov eax, dword [0x7442ad]
ror esi, 4
dec edx
call fcn.005405e8
or dword [0x75abab], edi
xor dword [0x75ac4d], ebx
shr eax, 0x16
shl edx, 0x19
add dword [0x75ac23], 0x935bbf51
xchg ebx, eax
and edi, 0x745ead97
rol esi, 0x1f
or dword [0x75aab0], 0xe3190cfe
sbb ebx, esp
rol ebx, 5
mov edx, 0x8f86eab0
dec ecx
jne 0x56a486
mov eax, 0xd1993682
mov edx, 0x98e18b4
or dword [0x75ab15], eax
not eax
mov dword [0x75aa28], esi
add eax, 0xe9da8f4e
sub esi, dword [0x75afad]
inc edi
call fcn.00502f0f
xor dword [0x75aa7f], ebx
xor edi, 0x1f9fdada
ror edx, 0x1c
sub ebx, esp
xchg edx, eax
call fcn.00504d86
add edi, dword [0x75aef6]
xor ecx, esp
neg esi
xor ebx, 0xe9454342
or ebx, dword [0x75aee0]
xor esi, 0x4a3a2df
call fcn.0058e853
call fcn.005d77dd
xor esi, 0x4a3a2df
xor ebx, 0xe9454342
neg esi
xor ecx, esp
call fcn.004ab7c7
xchg edx, eax
add ebx, esp
rol edx, 0x1c
xor edi, 0x1f9fdada
sub dword [0x75aa60], esi
dec edi
sub eax, 0xe9da8f4e
sub dword [0x75aa0b], eax
add bh, dh
sal byte [ecx], 1
sbb eax, 0x75ac70
or edx, 0x9f02f10
or dword [0x75ab11], esi
add ebx, ebp
call fcn.00426794
inc eax
xor edx, 0x35f9b83f
ror edx, 0x14
not esi
sub ebx, dword [0x75af31]
ror ebx, 7
neg ebx
xchg ecx, edx
xchg ecx, edx
neg ebx
rol ebx, 7
not esi
rol edx, 0x14
xor edx, 0x35f9b83f
dec eax
sub ebx, ebp
mov dword [0x75ac23], ecx
xor edx, 0x9fe3ff4
xor esi, 0x8a1d554
xchg eax, esi
call fcn.005f8ecc
sub ecx, dword [0x75ad44]
add ecx, ebp
xor edi, esp
not esi
xor ecx, edx
call fcn.0054402a
rol ebx, 0x18
call fcn.00504904
call fcn.005b2eed
ror ebx, 0x18
call fcn.00662ed1
xor ecx, edx
not esi
xor edi, esp
sub ecx, ebp
call fcn.00514110
xchg eax, esi
xor esi, 0x8a1d554
push edx
and dword [0x75ab9b], eax
sub edx, ebp
add ebx, dword [0x75afbf]
not edx
or edx, dword [0x75ad32]
neg esi
sub edx, dword [0x75ada5]
xor esi, ecx
call fcn.004f94bc
add edi, dword [0x75ae4e]
call fcn.0052b9f4
call fcn.0052cd11
xor esi, ecx
neg esi
not edx
add edx, ebp
mov esi, 0x81dc0d00
ror ebx, 2
sub edx, 0x973c35ce
ror edi, 0x1a
add dword [0x75ac43], ebx
inc ebx
call fcn.0058d9c4
sub edx, dword [0x75acb8]
adc eax, 0x75acb8