Function at 0x10007a24
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x120
cmp dword [0x103f5c10], 0
push ebx
push ebp
push esi
push edi
je 0x100088cb
lea eax, [esp + 0x14]
or edi, 0xffffffff
push eax
lea eax, [esp + 0x68]
mov dword [esp + 0x64], edi
push eax
call fcn.100031d2
mov ebp, dword [sym.imp.USER32.dll_GetSystemMetrics]
xorps xmm1, xmm1
mov esi, dword [0x101639c4]
xor ebx, ebx
pop ecx
pop ecx
movss dword [esp + 0xa4], xmm1
mov dword [esp + 0x64], ebx
mov eax, dword [0x103f5c14]
cmp dword [eax + ebx*4 + 0xfd6], 1
jne 0x1000837d
mov eax, dword [eax + ebx*4 + 0x26]
test eax, eax
je 0x1000837d
mov eax, dword [eax + 8]
test eax, eax
je 0x1000837d
cmp dword [eax + 4], 0
je 0x1000837d
lea eax, [esp + 0x30]
push eax
push ebx
call fcn.10041d24
movss xmm0, dword [esp + 0x40]
lea eax, [esp + 0x2c]
cvtps2pd xmm0, xmm0
push eax
lea eax, [esp + 0x24]
push eax
addsd xmm0, qword [0x10089f48]
cvtpd2ps xmm1, xmm0
movss xmm0, dword [esp + 0x40]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [esp + 0x44]
movss dword [esp + 0x48], xmm1
movss dword [esp + 0x2c], xmm0
movss dword [esp + 0x30], xmm1
call fcn.10003079
add esp, 0x10
push 1
call ebp
push 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x10089f24]
subss xmm0, dword [esp + 0x2c]
movss dword [esp + 0x14], xmm0
call ebp
push 0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x10089f24]
subss xmm0, dword [esp + 0x2c]
mulss xmm0, dword [esp + 0x14]
movss dword [esp + 0x18], xmm0
call ebp
push 0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x10089f2c]
subss xmm0, dword [esp + 0x28]
movss dword [esp + 0x14], xmm0
call ebp
movss xmm1, dword [esp + 0xa4]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x10089f2c]
subss xmm0, dword [esp + 0x24]
mulss xmm0, dword [esp + 0x10]
addss xmm0, dword [esp + 0x14]
sqrtss xmm0, xmm0
cvtps2pd xmm2, xmm0
cvtps2pd xmm0, xmm1
movsd qword [esp + 0xa8], xmm2
comisd xmm2, xmm0
jbe 0x10007bbd
ucomiss xmm1, dword [0x10089f1c]
lahf
test ah, 0x44
jnp 0x10007bbd
mov esi, dword [0x101639c4]
jmp 0x1000837d
mov eax, dword [0x103f5c14]
mov esi, dword [0x101639c4]
mov ecx, dword [eax + ebx*4 + 0x26]
mov eax, dword [ecx + 8]
cmp byte [eax + 0x1a], 0x13
jne 0x10007be2
cmp byte [esi + 0x90db], 0
jne 0x1000837d
cmp dword [ecx], 0xa
jge 0x10007bf4
cmp byte [esi + 0x90de], 0
jne 0x1000837d
push 0
push ebx
call fcn.10041ceb
mov esi, dword [0x101639c4]
pop ecx
push eax
lea ecx, [esi + 0x4c]
call fcn.10006b39
cmp eax, 0xffffffff
je 0x10007c1e
cmp byte [esi + 0x9117], 0
jne 0x1000837d
push 0
push ebx
call fcn.10041ceb
mov esi, dword [0x101639c4]
pop ecx
push eax
lea ecx, [esi + 0x34]
call fcn.10006b39
cmp eax, 0xffffffff
je 0x10007c48
cmp byte [esi + 0x9116], 0
jne 0x1000837d
mov eax, dword [0x103f5c14]
mov edx, 0x6a5
mov eax, dword [eax + ebx*4 + 0x26]
mov ecx, dword [eax + 8]
movzx eax, word [ecx + 0x7c]
cmp ax, dx
je 0x1000837d
cmp byte [esi + 0xc61], 1
jne 0x10007c7c
cmp byte [esi + 0x90dc], 0
jne 0x1000837d
mov edx, 0x3fb
cmp ax, dx
jne 0x10007c93
cmp byte [esi + 0x90dc], 0
jne 0x1000837d
mov edx, 0x3fa
cmp ax, dx
jne 0x10007caa
cmp byte [esi + 0x90dc], 0
jne 0x1000837d
cmp dword [ecx + 0x1d1], 2
je 0x1000837d
cmp byte [esi + 0x90dd], 0
je 0x10007cf1
mov eax, dword [0x103f5c14]
push 0xff000000
movzx eax, word [eax]
push eax
call fcn.100426c5
push 0xff000000
push ebx
mov esi, eax
call fcn.100426c5
add esp, 0x10
cmp eax, esi
mov esi, dword [0x101639c4]
je 0x1000837d
cmp byte [esi + 0x90df], 0
jne 0x10007d07
cmp byte [esi + 0x871], 0
je 0x100081dd
xor edx, edx
xor ecx, ecx
cmp byte [esi + ecx + 0xb4ff], 1
lea eax, [edx + 1]
cmovne eax, edx
inc ecx
mov edx, eax
cmp ecx, 0x3ec
jl 0x10007d0b
test edx, edx
jle 0x100081dd
cmp byte [esi + 0x871], 0
je 0x100081c6
xor ebp, ebp
mov dword [esp + 0x10], ebp
cmp byte [esi + ebp + 0x7ce7], 1
je 0x10007f8e
cmp dword [esi + ebp*4 + 0x531f], 1
je 0x10007f8e
mov eax, dword [0x103f5c14]
movzx eax, word [eax]
cmp ebp, eax
jne 0x100081a7
push 0
push 0xffffffffffffffff
call fcn.1002b78d
pop ecx
pop ecx
mov ecx, dword [0x10403494]
mov esi, eax
mov eax, dword [ecx]
call dword [eax]
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x64]
movaps xmm0, xmmword [0x10089fa0]
mov ebp, eax
and dword [esp + 0x8c], 0
and dword [esp + 0x90], 0
and dword [esp + 0x94], 0
and dword [esp + 0x48], 0
and dword [esp + 0x4c], 0
and dword [esp + 0x50], 0
and dword [esp + 0x80], 0
and dword [esp + 0x84], 0
and dword [esp + 0x88], 0
and dword [esp + 0x68], 0
and dword [esp + 0x6c], 0
and dword [esp + 0x70], 0
xor ebx, ebx
movups xmmword [esp + 0xb0], xmm0
mov dword [esp + 0x14], ebp
movaps xmm0, xmmword [0x10089f90]
movups xmmword [esp + 0xc0], xmm0
mov dword [esp + 0xe0], 0x17
movaps xmm0, xmmword [0x10089f80]
movups xmmword [esp + 0xd0], xmm0
mov dword [esp + 0xe4], 2
mov eax, dword [ebp]
lea ecx, [esp + 0x8c]
mov esi, dword [esp + ebx*4 + 0xb0]
push ecx
push esi
mov ecx, ebp
call dword [eax + 0x74]
mov edx, dword [ebp]
lea eax, [esp + 0x48]
push eax
lea eax, [esi + 1]
mov ecx, ebp
push eax
call dword [edx + 0x74]
lea eax, [esp + 0x80]
push eax
sub esp, 0xc
lea esi, [esp + 0x9c]
mov edi, esp
lea eax, [esp + 0x110]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.1002b0aa
add esp, 0x10
push eax
call fcn.10003079
pop ecx
pop ecx
lea eax, [esp + 0x68]
push eax
sub esp, 0xc
lea esi, [esp + 0x58]
mov edi, esp
lea eax, [esp + 0x11c]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.1002b0aa
add esp, 0x10
push eax
call fcn.10003079
movss xmm0, dword [0x10089f34]
comiss xmm0, dword [esp + 0x90]
pop ecx
pop ecx
ja 0x10007eec
comiss xmm0, dword [esp + 0x70]
ja 0x10007eec
cvttss2si eax, dword [esp + 0x6c]
push 0xffffffffffffffff
mov ecx, dword [0x103fd9d8]
push eax
cvttss2si eax, dword [esp + 0x70]
push eax
cvttss2si eax, dword [esp + 0x90]
push eax
cvttss2si eax, dword [esp + 0x90]
push eax
call fcn.100431e9
inc ebx
cmp ebx, 0xe
jl 0x10007e23
mov ebp, dword [esp + 0x10]
push 0x29
pop ebx
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x48]
push edx
push ebx
mov eax, dword [ecx]
call dword [eax + 0x74]
lea eax, [esp + 0x68]
push eax
sub esp, 0xc
lea esi, [esp + 0x58]
mov edi, esp
lea eax, [esp + 0x128]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.1002b0aa
add esp, 0x10
push eax
call fcn.10003079
movss xmm0, dword [0x10089f34]
comiss xmm0, dword [esp + 0x90]
pop ecx
pop ecx
ja 0x10007f7d
comiss xmm0, dword [esp + 0x70]
ja 0x10007f7d
cvttss2si eax, dword [esp + 0x6c]
push 0xffffffffffffffff
mov ecx, dword [0x103fd9d8]
push eax
cvttss2si eax, dword [esp + 0x70]
push eax
cvttss2si eax, dword [esp + 0x90]
push eax
cvttss2si eax, dword [esp + 0x90]
push eax
call fcn.100431e9
add ebx, 0xa
cmp ebx, 0x3d
jl 0x10007efd
jmp 0x100081a1
push ebp
call fcn.10003ce6
pop ecx
test al, al
je 0x100081a7
mov eax, dword [0x103f5c14]
mov ecx, dword [0x10403494]
mov eax, dword [eax + ebp*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov esi, dword [eax + 0x2a4]
mov eax, dword [ecx]
call dword [eax]
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x64]
movaps xmm0, xmmword [0x10089fa0]
mov ebp, eax
and dword [esp + 0x98], 0
and dword [esp + 0x9c], 0
and dword [esp + 0xa0], 0
and dword [esp + 0x54], 0
and dword [esp + 0x58], 0
and dword [esp + 0x5c], 0
and dword [esp + 0x3c], 0
and dword [esp + 0x40], 0
and dword [esp + 0x44], 0
and dword [esp + 0x74], 0
and dword [esp + 0x78], 0
and dword [esp + 0x7c], 0
xor ebx, ebx
movups xmmword [esp + 0xb0], xmm0
mov dword [esp + 0x14], ebp
movaps xmm0, xmmword [0x10089f90]
movups xmmword [esp + 0xc0], xmm0
mov dword [esp + 0xe0], 0x17
movaps xmm0, xmmword [0x10089f80]
movups xmmword [esp + 0xd0], xmm0
mov dword [esp + 0xe4], 2
mov eax, dword [ebp]
lea ecx, [esp + 0x98]
mov esi, dword [esp + ebx*4 + 0xb0]
push ecx
push esi
mov ecx, ebp
call dword [eax + 0x74]
mov edx, dword [ebp]
lea eax, [esp + 0x54]
push eax
lea eax, [esi + 1]
mov ecx, ebp
push eax
call dword [edx + 0x74]
lea eax, [esp + 0x3c]
push eax
sub esp, 0xc
lea esi, [esp + 0xa8]
mov edi, esp
lea eax, [esp + 0x134]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.1002b0aa
add esp, 0x10
push eax
call fcn.10003079
pop ecx
pop ecx
lea eax, [esp + 0x74]
push eax
sub esp, 0xc
lea esi, [esp + 0x64]
mov edi, esp
lea eax, [esp + 0xf8]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.1002b0aa
add esp, 0x10
push eax
call fcn.10003079
movss xmm0, dword [0x10089f34]
comiss xmm0, dword [esp + 0x4c]
pop ecx
pop ecx
ja 0x10008111
comiss xmm0, dword [esp + 0x7c]
ja 0x10008111
cvttss2si eax, dword [esp + 0x78]
push 0xffffffffffffffff
mov ecx, dword [0x103fd9d8]
push eax
cvttss2si eax, dword [esp + 0x7c]
push eax
cvttss2si eax, dword [esp + 0x4c]
push eax
cvttss2si eax, dword [esp + 0x4c]
push eax
call fcn.100431e9
inc ebx
cmp ebx, 0xe
jl 0x10008054
mov ebp, dword [esp + 0x10]
push 0x29
pop ebx
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x54]
push edx
push ebx
mov eax, dword [ecx]
call dword [eax + 0x74]
lea eax, [esp + 0x74]
push eax
sub esp, 0xc
lea esi, [esp + 0x64]
mov edi, esp
lea eax, [esp + 0x104]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.1002b0aa
add esp, 0x10
push eax
call fcn.10003079
movss xmm0, dword [0x10089f34]
comiss xmm0, dword [esp + 0x4c]
pop ecx
pop ecx
ja 0x10008199
comiss xmm0, dword [esp + 0x7c]
ja 0x10008199
cvttss2si eax, dword [esp + 0x78]
push 0xffffffffffffffff
mov ecx, dword [0x103fd9d8]
push eax
cvttss2si eax, dword [esp + 0x7c]
push eax
cvttss2si eax, dword [esp + 0x4c]
push eax
cvttss2si eax, dword [esp + 0x4c]
push eax
call fcn.100431e9
add ebx, 0xa
cmp ebx, 0x3d
jl 0x10008122
mov esi, dword [0x101639c4]
inc ebp
mov dword [esp + 0x10], ebp
cmp ebp, 0x3ec
jl 0x10007d3f
mov ebx, dword [esp + 0x64]
mov ebp, dword [sym.imp.USER32.dll_GetSystemMetrics]
mov edi, dword [esp + 0x60]
cmp byte [esi + ebx + 0x7ce7], 1
je 0x100081dd
cmp byte [esi + 0x90df], 0
jne 0x1000837d
cmp byte [esi + 0x950b], 1
jne 0x10008357
push ebx
call fcn.10041e23
pop ecx
cmp eax, 0x11
jne 0x10008291
mov eax, dword [0x103f5c14]
mov eax, dword [eax + ebx*4 + 0x26]
mov eax, dword [eax + 8]
mov al, byte [eax + 0x60]
test al, al
je 0x10007bb2
cmp al, 1
je 0x10007bb2
cmp al, 2
je 0x10007bb2
cmp al, 3
je 0x10007bb2
cmp al, 4
je 0x10007bb2
cmp al, 5
je 0x10007bb2
cmp al, 6
je 0x10007bb2
cmp al, 7
je 0x10007bb2
cmp al, 8
je 0x10007bb2
cmp al, 0xa
je 0x10007bb2
cmp al, 0xb
je 0x10007bb2
cmp al, 0xc
je 0x10007bb2
cmp al, 0xd
je 0x10007bb2
cmp al, 0xe
je 0x10007bb2
cmp al, 0xf
je 0x10007bb2
cmp al, 0x2b
je 0x10007bb2
cmp al, 0x2e
je 0x10007bb2
push ebx
call fcn.10041e23
pop ecx
cmp eax, 0x12
jne 0x10008338
mov eax, dword [0x103f5c14]
mov eax, dword [eax + ebx*4 + 0x26]
mov eax, dword [eax + 8]
mov al, byte [eax + 0x27]
test al, al
je 0x10007bb2
cmp al, 1
je 0x10007bb2
cmp al, 2
je 0x10007bb2
cmp al, 3
je 0x10007bb2
cmp al, 4
je 0x10007bb2
cmp al, 5
je 0x10007bb2
cmp al, 6
je 0x10007bb2
cmp al, 7
je 0x10007bb2
cmp al, 8
je 0x10007bb2
cmp al, 0xa
je 0x10007bb2
cmp al, 0xb
je 0x10007bb2
cmp al, 0xc
je 0x10007bb2
cmp al, 0xd
je 0x10007bb2
cmp al, 0xe
je 0x10007bb2
cmp al, 0xf
je 0x10007bb2
cmp al, 0x2b
je 0x10007bb2
cmp al, 0x2e
je 0x10007bb2
mov eax, dword [0x103f5c14]
mov eax, dword [eax + ebx*4 + 0x26]
mov eax, dword [eax + 8]
cmp dword [eax + 0x1d1], 2
je 0x10007bb2
mov esi, dword [0x101639c4]
cmp dword [esi + ebx*4 + 0x531f], 0
jne 0x1000837d
movsd xmm0, qword [esp + 0xa8]
mov edi, ebx
cvtpd2ps xmm0, xmm0
mov dword [esp + 0x60], edi
movss dword [esp + 0xa4], xmm0
inc ebx
mov dword [esp + 0x64], ebx
cmp ebx, 0x3ec
jl 0x10007a71
cmp byte [esi + 0x52f7], 0
je 0x100088c7
mov eax, dword [esi + 0x5317]
cmp eax, 0xffffffff
je 0x100088c7
push eax
call fcn.10041bdc
mov esi, eax
pop ecx
test esi, esi
je 0x100088cb
mov ecx, dword [0x10403494]
mov eax, dword [ecx]
call dword [eax]
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x64]
mov edi, eax
test edi, edi
je 0x100088cb
xor ebx, ebx
mov ebp, 0xff0082ff
inc ebx
mov esi, ebx
cmp esi, 8
jbe 0x10008410
cmp esi, 0x15
jb 0x100083f0
cmp esi, 0x1a
jbe 0x10008410
cmp esi, 0x1f
jb 0x100083fa
cmp esi, 0x24
jbe 0x10008410
cmp esi, 0x29
jb 0x10008404
cmp esi, 0x2c
jbe 0x10008410
lea eax, [esi - 0x33]
cmp eax, 3
ja 0x10008563
mov eax, dword [edi]
lea ecx, [esp + 0x54]
and dword [esp + 0x54], 0
and dword [esp + 0x58], 0
and dword [esp + 0x5c], 0
and dword [esp + 0x48], 0
and dword [esp + 0x4c], 0
and dword [esp + 0x50], 0
push ecx
push 8
mov ecx, edi
call dword [eax + 0x74]
mov eax, dword [edi]
lea ecx, [esp + 0x48]
push ecx
push 0x2c
mov ecx, edi
call dword [eax + 0x74]
movss xmm0, dword [esp + 0x54]
lea eax, [esp + 0x30]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [esp + 0x58]
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [esp + 0x5c]
movss dword [esp + 0x20], xmm0
movss xmm0, dword [esp + 0x48]
movss dword [esp + 0x24], xmm0
movss xmm0, dword [esp + 0x4c]
push eax
movss dword [esp + 0x2c], xmm0
lea eax, [esp + 0x1c]
movss xmm0, dword [esp + 0x54]
push eax
movss dword [esp + 0x34], xmm0
call fcn.10003079
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x30]
push eax
call fcn.10003079
movss xmm0, dword [0x10089f34]
add esp, 0x10
comiss xmm0, dword [esp + 0x38]
ja 0x10008563
comiss xmm0, dword [esp + 0x44]
ja 0x10008563
movss xmm3, dword [esp + 0x34]
movss xmm4, dword [esp + 0x30]
movaps xmm0, xmm3
subss xmm0, dword [esp + 0x40]
mov ecx, dword [0x103fd9d8]
push 0
push ebp
sub esp, 0x10
cvtps2pd xmm2, xmm0
movaps xmm0, xmm4
subss xmm0, dword [esp + 0x54]
mulsd xmm2, xmm2
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm0
cvtpd2ps xmm1, xmm0
cvtpd2ps xmm0, xmm2
addss xmm1, xmm0
xorps xmm0, xmm0
sqrtss xmm0, xmm1
mulss xmm0, dword [0x10089f38]
movaps xmm1, xmm0
movss dword [esp + 0xc], xmm0
mulss xmm1, dword [0x10089f28]
mulss xmm0, dword [0x10089f20]
movss dword [esp + 8], xmm1
mulss xmm1, dword [0x10089f28]
subss xmm3, xmm0
subss xmm4, xmm1
movss dword [esp + 4], xmm3
movss dword [esp], xmm4
call fcn.10042fcc
inc esi
cmp esi, 0x36
jle 0x100083e1
mov ecx, dword [0x101639c4]
and dword [esp + 0x8c], 0
and dword [esp + 0x90], 0
and dword [esp + 0x94], 0
and dword [esp + 0x98], 0
and dword [esp + 0x9c], 0
and dword [esp + 0xa0], 0
cmp byte [ecx + 0x52fb], 0
je 0x10008899
cmp byte [ecx + 0xb4c7], 0
mov ebp, 0xffff0000
je 0x1000874c
mov eax, dword [0x103f5c14]
mov eax, dword [eax + 0x1e]
cmp byte [eax + 0x18d], 0x22
mov eax, dword [0x103fd878]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
je 0x10008627
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x10089fb0]
cvtpd2ps xmm0, xmm0
mulss xmm0, dword [0x10089f2c]
movss dword [ecx + 0x909f], xmm0
mov eax, dword [0x103fd87c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x10089fb0]
cvtpd2ps xmm0, xmm0
mulss xmm0, dword [0x10089f24]
jmp 0x1000866c
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x10089fb0]
cvtpd2ps xmm0, xmm0
mulss xmm0, dword [0x10089f28]
movss dword [ecx + 0x909f], xmm0
mov eax, dword [0x103fd87c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x10089fb0]
cvtpd2ps xmm0, xmm0
mulss xmm0, dword [0x10089f28]
mov eax, dword [0x101639c4]
movss dword [eax + 0x90a3], xmm0
mov edx, dword [0x101639c4]
mov eax, dword [edx + 0xa4bd]
mov dword [edx + 0x90af], eax
mov ecx, dword [0x101639c4]
cmp byte [ecx + 0xb4c5], bl
jne 0x1000874c
movss xmm0, dword [edx + 0xa4bd]
lea eax, [esp + 0x30]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [ecx + 0xa4c1]
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [ecx + 0xa4c5]
movss dword [esp + 0x20], xmm0
movss xmm0, dword [ecx + 0xa4c9]
movss dword [esp + 0x24], xmm0
movss xmm0, dword [ecx + 0xa4cd]
push eax
movss dword [esp + 0x2c], xmm0
lea eax, [esp + 0x1c]
movss xmm0, dword [ecx + 0xa4d1]
push eax
movss dword [esp + 0x34], xmm0
call fcn.10003079
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x30]
push eax
call fcn.10003079
cvttss2si eax, dword [esp + 0x44]
add esp, 0x10
mov ecx, dword [0x103fd9d8]
push ebp
push eax
cvttss2si eax, dword [esp + 0x38]
push eax
cvttss2si eax, dword [esp + 0x28]
push eax
cvttss2si eax, dword [esp + 0x28]
push eax
call fcn.100431e9
mov eax, dword [0x101639c4]
mov byte [eax + 0xb4c6], 0
mov ecx, dword [0x101639c4]
cmp byte [ecx + 0xb4fa], 0
je 0x10008824
mov eax, dword [0x103fd87c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
xor esi, esi
addsd xmm0, qword [eax*8 + 0x10089fb0]
cvtpd2ps xmm0, xmm0
movss dword [ecx + 0xb4fb], xmm0
mov eax, dword [0x101639c4]
cmp byte [esi + eax + 0x7ce7], bl
jne 0x10008817
push esi
call fcn.10003ce6
pop ecx
test al, al
je 0x10008817
lea eax, [esp + 0x18]
push eax
push esi
call fcn.10041d24
movss xmm0, dword [esp + 0x20]
lea eax, [esp + 0x38]
movss dword [esp + 0x2c], xmm0
movss xmm0, dword [esp + 0x24]
push eax
movss dword [esp + 0x34], xmm0
lea eax, [esp + 0x30]
movss xmm0, dword [esp + 0x2c]
push eax
movss dword [esp + 0x3c], xmm0
call fcn.10003079
movss xmm0, dword [0x10089f34]
add esp, 0x10
comiss xmm0, dword [esp + 0x38]
ja 0x10008817
cvttss2si eax, dword [esp + 0x34]
push ebp
mov ecx, dword [0x103fd9d8]
push eax
cvttss2si eax, dword [esp + 0x38]
push eax
mov eax, dword [0x101639c4]
push 0
cvttss2si eax, dword [eax + 0x909f]
push eax
call fcn.100431e9
inc esi
cmp esi, 0x3ec
jl 0x10008780
mov ecx, dword [0x1040349c]
lea edx, [esp + 0x8c]
push edx
push ebx
mov eax, dword [ecx]
call dword [eax + 0x74]
mov eax, dword [edi]
lea ecx, [esp + 0x98]
push ecx
push ebx
mov ecx, edi
call dword [eax + 0x74]
mov ebp, 0xff0082ff
lea esi, [esp + 0x98]
push ebp
sub esp, 0xc
lea eax, [esp + 0x104]
mov edi, esp
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.1002b0aa
add esp, 0x10
lea esi, [esp + 0x90]
push eax
sub esp, 0xc
lea eax, [esp + 0xfc]
mov edi, esp
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.1002b0aa
mov ecx, dword [0x103fd9d8]
add esp, 0x10
push eax
call fcn.10043554
mov ecx, dword [0x103fd9d8]
push 0xff
push ebp
sub esp, 0x10
and dword [esp + 0xc], 0
mov dword [esp + 8], 0x41400000
and dword [esp + 4], 0
and dword [esp], 0
call fcn.10042fcc
mov edi, dword [esp + 0x60]
mov eax, edi
jmp 0x100088ce
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x120
ret