Function at 0x441100
Capabilities:
Resolve function by brute ratel badger hash

Disassembly:
push rbp
push r15
push r14
push r12
push rsi
push rdi
push rbx
mov rbp, rsp
movd r9d, xmm0
mov eax, r9d
not eax
test eax, 0x7f800000
jne 0x44112f
movdqa xmm1, xmm0
mulss xmm1, xmm0
addss xmm0, xmm1
jmp 0x441598
test r9d, r9d
jle 0x441587
mov ecx, r9d
shr ecx, 0x17
bsr r8d, r9d
xor r8d, 0x1f
mov eax, 9
sub eax, r8d
add r8b, 0xf8
xor edx, edx
cmp r9d, 0x800000
cmovae eax, ecx
movzx ecx, r8b
cmovae ecx, edx
shl r9d, cl
add eax, 0xffffff81
and r9d, 0x7fffff
or r9d, 0x800000
mov ecx, eax
and cl, 1
shl r9d, cl
lea ecx, [r9*4]
lea r10d, [r9*4 - 0x2800000]
xor r8d, r8d
cmp r9d, 0x1200000
cmovb r10d, ecx
setae r8b
mov r11d, r8d
shl r11d, 0x18
lea esi, [r11 + 0x2000000]
lea ecx, [r10*2 - 0x4000000]
lea r10d, [r11 + 0x2400000]
or r11d, 0x2800000
xor r9d, r9d
cmp r10d, ecx
setle r9b
cmovg r11d, esi
cmovg r10d, edx
sub ecx, r10d
add ecx, ecx
lea esi, [r11 + 0x200000]
lea edi, [r11 + 0x400000]
xor r10d, r10d
cmp esi, ecx
cmovg edi, r11d
setle r10b
cmovg esi, edx
sub ecx, esi
add ecx, ecx
lea esi, [rdi + 0x100000]
lea ebx, [rdi + 0x200000]
xor r11d, r11d
cmp esi, ecx
setle r11b
cmovg ebx, edi
cmovg esi, edx
sub ecx, esi
add ecx, ecx
lea edi, [rbx + 0x80000]
lea r14d, [rbx + 0x100000]
xor esi, esi
cmp edi, ecx
cmovg r14d, ebx
cmovg edi, edx
setle sil
sub ecx, edi
add ecx, ecx
lea edi, [r14 + 0x40000]
lea r12d, [r14 + 0x80000]
xor ebx, ebx
cmp edi, ecx
setle bl
cmovg r12d, r14d
cmovg edi, edx
sub ecx, edi
add ecx, ecx
lea r14d, [r12 + 0x20000]
cmp r14d, ecx
mov r15d, r14d
cmovg r15d, edx
xor edi, edi
cmp r14d, ecx
lea r14d, [r12 + 0x40000]
cmovg r14d, r12d
setle dil
shl r8d, 0x17
shl r9d, 0x16
or r9d, r8d
shl r10d, 0x15
or r10d, r9d
shl r11d, 0x14
or r11d, r10d
shl esi, 0x13
or esi, r11d
shl ebx, 0x12
or ebx, esi
shl edi, 0x11
or edi, ebx
or edi, 0x1000000
sub ecx, r15d
add ecx, ecx
lea r9d, [r14 + 0x10000]
lea r10d, [r14 + 0x20000]
xor r8d, r8d
cmp r9d, ecx
setle r8b
cmovg r10d, r14d
cmovg r9d, edx
shl r8d, 0x10
add r8d, edi
sub ecx, r9d
add ecx, ecx
lea r11d, [r10 + 0x8000]
lea esi, [r10 + 0x10000]
xor r9d, r9d
cmp r11d, ecx
cmovg esi, r10d
setle r9b
cmovg r11d, edx
shl r9d, 0xf
add r9d, r8d
sub ecx, r11d
add ecx, ecx
lea r10d, [rsi + 0x4000]
lea r11d, [rsi + 0x8000]
xor r8d, r8d
cmp r10d, ecx
setle r8b
cmovg r11d, esi
cmovg r10d, edx
shl r8d, 0xe
add r8d, r9d
sub ecx, r10d
add ecx, ecx
lea r10d, [r11 + 0x2000]
lea esi, [r11 + 0x4000]
xor r9d, r9d
cmp r10d, ecx
cmovg esi, r11d
cmovg r10d, edx
setle r9b
shl r9d, 0xd
add r9d, r8d
sub ecx, r10d
add ecx, ecx
lea r10d, [rsi + 0x1000]
lea r11d, [rsi + 0x2000]
xor r8d, r8d
cmp r10d, ecx
setle r8b
cmovg r11d, esi
cmovg r10d, edx
shl r8d, 0xc
add r8d, r9d
sub ecx, r10d
add ecx, ecx
lea r10d, [r11 + 0x800]
lea esi, [r11 + 0x1000]
xor r9d, r9d
cmp r10d, ecx
cmovg esi, r11d
setle r9b
cmovg r10d, edx
shl r9d, 0xb
add r9d, r8d
sub ecx, r10d
add ecx, ecx
lea r10d, [rsi + 0x400]
lea r11d, [rsi + 0x800]
xor r8d, r8d
cmp r10d, ecx
setle r8b
cmovg r11d, esi
cmovg r10d, edx
shl r8d, 0xa
add r8d, r9d
sub ecx, r10d
add ecx, ecx
lea r10d, [r11 + 0x200]
lea esi, [r11 + 0x400]
xor r9d, r9d
cmp r10d, ecx
cmovg esi, r11d
cmovg r10d, edx
setle r9b
shl r9d, 9
add r9d, r8d
sub ecx, r10d
add ecx, ecx
lea r10d, [rsi + 0x100]
lea r11d, [rsi + 0x200]
xor r8d, r8d
cmp r10d, ecx
setle r8b
cmovg r11d, esi
cmovg r10d, edx
shl r8d, 8
add r8d, r9d
sub ecx, r10d
add ecx, ecx
lea r10d, [r11 + 0x80]
lea esi, [r11 + 0x100]
xor r9d, r9d
cmp r10d, ecx
cmovg esi, r11d
setle r9b
cmovg r10d, edx
shl r9d, 7
add r9d, r8d
sub ecx, r10d
add ecx, ecx
lea r10d, [rsi + 0x40]
lea r11d, [rsi + 0x80]
xor r8d, r8d
cmp r10d, ecx
setle r8b
cmovg r11d, esi
cmovg r10d, edx
shl r8d, 6
add r8d, r9d
sub ecx, r10d
add ecx, ecx
lea r10d, [r11 + 0x20]
lea esi, [r11 + 0x40]
xor r9d, r9d
cmp r10d, ecx
cmovg esi, r11d
cmovg r10d, edx
setle r9b
shl r9d, 5
add r9d, r8d
sub ecx, r10d
add ecx, ecx
lea r10d, [rsi + 0x10]
lea r11d, [rsi + 0x20]
xor r8d, r8d
cmp r10d, ecx
setle r8b
cmovg r11d, esi
cmovg r10d, edx
shl r8d, 4
add r8d, r9d
sub ecx, r10d
add ecx, ecx
lea r9d, [r11 + 8]
lea r10d, [r11 + 0x10]
xor esi, esi
cmp r9d, ecx
cmovg r10d, r11d
setle sil
lea r8d, [r8 + rsi*8]
cmovg r9d, edx
sub ecx, r9d
add ecx, ecx
lea r9d, [r10 + 4]
lea r11d, [r10 + 8]
xor esi, esi
cmp r9d, ecx
cmovg r11d, r10d
setle sil
lea r10d, [r8 + rsi*4]
cmovg r9d, edx
sub ecx, r9d
add ecx, ecx
lea r9d, [r11 + 2]
lea r8d, [r11 + 4]
xor esi, esi
cmp r9d, ecx
cmovg r8d, r11d
setle sil
lea r10d, [r10 + rsi*2]
cmovg r9d, edx
sub ecx, r9d
add ecx, ecx
xor r9d, r9d
cmp r8d, ecx
not r8d
cmovge r8d, edx
setl r9b
add r9d, r10d
add r8d, ecx
setne cl
mov edx, r9d
and dl, cl
movzx ecx, dl
add ecx, r9d
shr ecx, 1
and eax, 0xfffffffe
shl eax, 0x16
add eax, ecx
add eax, 0x3f000000
movd xmm0, eax
jmp 0x441598
test r9d, 0x7fffffff
je 0x441598
movd xmm0, dword [0x00455fc0]
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
pop rbp
ret