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

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
movd edx, xmm0
mov eax, edx
not eax
test eax, 0x7f800000
jne 0x418c9a
movdqa xmm1, xmm0
mulss xmm1, xmm0
addss xmm0, xmm1
jmp 0x4190f2
test edx, edx
jle 0x418cad
cmp edx, 0x800000
jb 0x418cc4
mov eax, edx
shr eax, 0x17
jmp 0x418cd6
movd eax, xmm0
test eax, 0x7fffffff
je 0x4190f2
test edx, edx
js 0x4190fd
bsr ecx, edx
mov eax, ecx
xor eax, 0xffffffe0
not cl
add cl, 0x18
shl edx, cl
add eax, 0xa
add eax, 0xffffff81
and edx, 0x7fffff
or edx, 0x800000
mov ecx, eax
and cl, 1
shl edx, cl
lea ecx, [rdx*4]
lea r9d, [rdx*4 - 0x2800000]
xor r8d, r8d
cmp edx, 0x1200000
cmovb r9d, ecx
setae r8b
mov r11d, r8d
shl r11d, 0x18
lea r10d, [r11 + 0x2000000]
lea ecx, [r9*2 - 0x4000000]
lea esi, [r11 + 0x2400000]
or r11d, 0x2800000
xor edx, edx
xor r9d, r9d
cmp esi, ecx
cmovg r11d, r10d
setle r9b
cmovg esi, edx
sub ecx, esi
add ecx, ecx
lea esi, [r11 + 0x200000]
lea edi, [r11 + 0x400000]
xor r10d, r10d
cmp esi, ecx
setle r10b
cmovg edi, r11d
cmovg esi, edx
sub ecx, esi
add ecx, ecx
lea esi, [rdi + 0x100000]
lea ebx, [rdi + 0x200000]
xor r11d, r11d
cmp esi, ecx
cmovg ebx, edi
cmovg esi, edx
setle r11b
sub ecx, esi
add ecx, ecx
lea edi, [rbx + 0x80000]
lea r14d, [rbx + 0x100000]
xor esi, esi
cmp edi, ecx
setle sil
cmovg r14d, ebx
cmovg edi, edx
sub ecx, edi
add ecx, ecx
lea edi, [r14 + 0x40000]
lea r15d, [r14 + 0x80000]
xor ebx, ebx
cmp edi, ecx
cmovg r15d, r14d
setle bl
cmovg edi, edx
sub ecx, edi
add ecx, ecx
lea r12d, [r15 + 0x20000]
cmp r12d, ecx
mov ebp, r12d
cmovg ebp, edx
lea r14d, [r15 + 0x40000]
xor edi, edi
cmp r12d, ecx
setle dil
cmovg r14d, r15d
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, ebp
add ecx, ecx
lea r9d, [r14 + 0x10000]
lea r10d, [r14 + 0x20000]
xor r8d, r8d
cmp r9d, ecx
cmovg r10d, r14d
cmovg r9d, edx
setle r8b
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
setle r9b
cmovg esi, r10d
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
cmovg r11d, esi
setle r8b
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
setle r9b
cmovg esi, r11d
cmovg r10d, edx
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
cmovg r11d, esi
cmovg r10d, edx
setle r8b
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
setle r9b
cmovg esi, r11d
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
cmovg r11d, esi
setle r8b
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
setle r9b
cmovg esi, r11d
cmovg r10d, edx
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
cmovg r11d, esi
cmovg r10d, edx
setle r8b
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
setle r9b
cmovg esi, r11d
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
cmovg r11d, esi
movss xmm0, dword [0x004b1240]
jmp 0x4190f2