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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xac
mov eax, dword [ebp + 8]
push ebx
mov dword [esp + 0x7c], ecx
push esi
movzx edx, byte [eax]
movzx ebx, byte [eax + 1]
movzx ecx, byte [eax + 2]
mov dword [esp + 0xc], edx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x1c], ecx
push edi
cmp edx, 0xf0
jl 0x10041f9a
inc edx
mov dword [esp + 0x10], edx
cmp ebx, 0xf0
jl 0x10041fa7
inc ebx
mov dword [esp + 0x24], ebx
cmp ecx, 0xf0
jl 0x10041fb4
inc ecx
mov dword [esp + 0x20], ecx
mov edi, dword [esp + 0x20]
and dl, 1
mov esi, dword [esp + 0x24]
mov al, bl
and al, 1
add dl, dl
add dl, al
and bl, 2
mov al, cl
add dl, dl
and al, 1
sar ecx, 1
add dl, al
and cl, 1
mov al, byte [esp + 0x10]
and al, 2
add al, al
add cl, al
mov eax, esi
sar eax, 1
add cl, bl
and al, 2
mov ebx, edi
sar ebx, 2
mov dh, cl
and bl, 1
and dh, dl
add bl, al
mov al, byte [esp + 0x10]
and al, 4
add bl, al
mov eax, edi
sar eax, 3
and eax, 0xffffff01
mov dword [esp + 0x1c], eax
mov eax, esi
sar eax, 2
and al, 2
add byte [esp + 0x1c], al
mov eax, dword [esp + 0x10]
sar eax, 1
and al, 4
add byte [esp + 0x1c], al
mov eax, edi
sar eax, 4
and eax, 0xffffff01
mov dword [esp + 0x18], eax
mov eax, esi
sar eax, 3
and al, 2
add byte [esp + 0x18], al
mov eax, dword [esp + 0x10]
sar eax, 2
and al, 4
mov ah, bl
add byte [esp + 0x18], al
and ah, cl
mov al, cl
or al, dl
mov byte [esp + 0xf], al
mov al, dh
mov dl, byte [esp + 0xf]
and al, bl
mov byte [esp + 0x15], al
or dh, bl
mov al, dl
mov byte [esp + 0x14], dh
and al, bl
or dl, bl
mov byte [esp + 0x17], al
mov al, bl
or al, cl
mov byte [esp + 0xf], dl
mov edx, dword [esp + 0x1c]
mov byte [esp + 0x16], al
mov al, dl
and al, bl
mov byte [esp + 0x30], al
mov al, ah
and al, dl
mov byte [esp + 0x2d], al
mov cl, byte [esp + 0x15]
or ah, dl
mov ch, byte [esp + 0x16]
mov al, cl
and al, dl
mov byte [esp + 0x32], ah
mov byte [esp + 0x2f], al
or cl, dl
mov al, byte [esp + 0x17]
and al, dl
sar esi, 5
mov byte [esp + 0x2c], al
mov al, ch
and al, dl
sar edi, 5
mov byte [esp + 0x33], al
or ch, dl
mov al, byte [esp + 0x14]
and al, dl
or byte [esp + 0x14], dl
mov byte [esp + 0x2e], al
mov al, byte [esp + 0xf]
and al, dl
or byte [esp + 0xf], dl
mov byte [esp + 0x31], al
mov al, dl
or al, bl
mov byte [esp + 0x15], cl
mov byte [esp + 0x2b], al
mov eax, dword [esp + 0x10]
sar eax, 5
mov bl, byte [esp + 0x17]
mov byte [esp + 0x16], ch
or bl, dl
movsx edx, dl
lea eax, [eax + eax*8]
mov dword [esp + 0x20], edx
add eax, esi
lea eax, [eax + eax*8]
add eax, edi
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0x18]
movsx esi, al
mov eax, esi
mov dword [esp + 0x10], esi
sar eax, 2
and edx, esi
and eax, 1
lea ecx, [eax + eax*8]
mov eax, esi
sar eax, 1
and eax, 1
add ecx, eax
mov eax, esi
and eax, 1
lea ecx, [ecx + ecx*8]
add ecx, eax
mov eax, edx
sar eax, 2
and eax, 1
mov dword [esp + 0x18], ecx
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
movsx edx, byte [esp + 0x30]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x24], edx
and edx, esi
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and eax, 1
add ecx, eax
and edx, 1
lea eax, [ecx + ecx*8]
add eax, edx
movsx edx, byte [esp + 0x2d]
mov dword [esp + 0x90], eax
mov dword [esp + 0x38], edx
and edx, esi
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
movsx edx, byte [esp + 0x2f]
mov dword [esp + 0x50], eax
mov dword [esp + 0x44], edx
and edx, esi
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
movsx edx, byte [esp + 0x2c]
mov dword [esp + 0x54], eax
mov dword [esp + 0x3c], edx
and edx, esi
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
movsx edx, byte [esp + 0x33]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x48], edx
and edx, esi
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
movsx edx, byte [esp + 0x2e]
mov dword [esp + 0x64], eax
mov dword [esp + 0x34], edx
and edx, esi
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
movsx edx, byte [esp + 0x31]
mov dword [esp + 0x6c], eax
mov dword [esp + 0xac], edx
and edx, esi
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
movsx edx, byte [esp + 0x2b]
mov dword [esp + 0x74], eax
mov dword [esp + 0xb4], edx
and edx, esi
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
movsx edx, byte [esp + 0x32]
mov dword [esp + 0x7c], eax
mov dword [esp + 0xb0], edx
and edx, esi
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
movsx edx, byte [esp + 0x15]
mov dword [esp + 0x4c], eax
mov dword [esp + 0xa4], edx
and edx, esi
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
movsx edx, bl
mov dword [esp + 0x8c], eax
movsx ebx, byte [esp + 0x16]
mov dword [esp + 0x40], edx
and edx, esi
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, ebx
mov dword [esp + 0x58], eax
and edx, esi
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
movsx edi, byte [esp + 0x14]
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, edi
mov dword [esp + 0x88], eax
and edx, esi
mov eax, edx
movsx esi, byte [esp + 0xf]
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, esi
and edx, dword [esp + 0x10]
mov dword [esp + 0x60], eax
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, dword [esp + 0x20]
or edx, dword [esp + 0x10]
mov dword [esp + 0x94], eax
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, dword [esp + 0x24]
or edx, dword [esp + 0x10]
mov dword [esp + 0x68], eax
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, dword [esp + 0x38]
or edx, dword [esp + 0x10]
mov dword [esp + 0x9c], eax
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, dword [esp + 0x44]
or edx, dword [esp + 0x10]
mov dword [esp + 0x70], eax
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, dword [esp + 0x3c]
or edx, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, dword [esp + 0x48]
or edx, dword [esp + 0x10]
mov dword [esp + 0x78], eax
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, dword [esp + 0x34]
or edx, dword [esp + 0x10]
mov dword [esp + 0x98], eax
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, dword [esp + 0xac]
or edx, dword [esp + 0x10]
mov dword [esp + 0x80], eax
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, dword [esp + 0xb4]
or edx, dword [esp + 0x10]
mov dword [esp + 0x34], eax
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov dword [esp + 0x48], eax
mov edx, dword [esp + 0xb0]
or edx, dword [esp + 0x10]
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, dword [esp + 0xa4]
or edx, dword [esp + 0x10]
mov dword [esp + 0x3c], eax
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, dword [esp + 0x40]
or edx, dword [esp + 0x10]
mov dword [esp + 0x44], eax
mov eax, edx
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edx
sar eax, 1
and edx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x38], eax
or ebx, edx
mov eax, ebx
or edi, edx
sar eax, 2
or esi, edx
and eax, 1
lea ecx, [eax + eax*8]
mov eax, ebx
sar eax, 1
and ebx, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, ebx
mov dword [esp + 0x10], eax
mov eax, edi
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, edi
sar eax, 1
and edi, 1
and eax, 1
add ecx, eax
lea eax, [ecx + ecx*8]
add eax, edi
mov dword [esp + 0x24], eax
mov eax, esi
sar eax, 2
and eax, 1
lea ecx, [eax + eax*8]
mov eax, esi
sar eax, 1
and eax, 1
add ecx, eax
and esi, 1
lea eax, [ecx + ecx*8]
mov ebx, dword [esp + 0x84]
add eax, esi
mov dword [esp + 0x20], eax
mov eax, dword [ebx + 0xc]
cmp eax, 3
jne 0x10042787
xor edx, edx
cmp dword [ebx + 0x10], edx
jle 0x1004277e
mov ecx, dword [esp + 0xa8]
lea esi, [ebx + 0x14]
mov edi, dword [esp + 0x1c]
shl ecx, 2
mov dword [esp + 0x40], ecx
mov eax, dword [esi]
lea esi, [esi + 4]
add eax, ecx
mov ebx, dword [esp + 0x90]
mov ecx, dword [esp + 0x18]
mov ecx, dword [eax + ecx*4]
add ecx, dword [eax + edi*4]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x50]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x54]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x5c]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x64]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x6c]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x74]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x7c]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x4c]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x8c]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x58]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x88]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x60]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x94]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x68]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x9c]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x70]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0xa0]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x78]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x98]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x80]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x34]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x48]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x3c]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x44]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x38]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x10]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x24]
add ecx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x20]
add ecx, dword [eax + ebx*4]
mov eax, dword [eax]
add ecx, 0x10
mov ebx, dword [esp + 0x84]
add eax, ecx
mov ecx, dword [ebp + 0xc]
shr eax, 5
mov byte [edx + ecx], al
inc edx
mov ecx, dword [esp + 0x40]
cmp edx, dword [ebx + 0x10]
jl 0x10042665
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp eax, 4
jne 0x10042a68
mov eax, dword [ebp + 8]
movsd xmm3, qword [0x100f1098]
mov cl, byte [eax + 3]
movzx eax, cl
shr eax, 5
imul edx, eax, 0x2d9
cmp eax, 7
jae 0x100427c3
and cl, 0x1f
movzx eax, cl
movd xmm2, eax
cvtdq2pd xmm2, xmm2
mulsd xmm2, xmm3
jmp 0x100427d9
and cl, 0x1f
movzx eax, cl
movd xmm2, eax
cvtdq2pd xmm2, xmm2
divsd xmm2, qword [0x100f11a8]
xor esi, esi
cmp dword [ebx + 0x10], esi
jle 0x1004277e
mov ecx, dword [esp + 0xa8]
lea edi, [ebx + 0x14]
movsd xmm4, qword [0x100f10f0]
lea eax, [edx + ecx]
add ecx, 0x2d9
shl eax, 2
add ecx, edx
shl ecx, 2
mov dword [esp + 0xa4], eax
mov dword [esp + 0x40], ecx
mov edi, edi
mov ecx, dword [edi]
add eax, ecx
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
add ecx, dword [esp + 0x40]
mov edx, dword [eax + edx*4]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x90]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x50]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x54]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x5c]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x64]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x6c]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x74]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x7c]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x4c]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x8c]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x58]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x88]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x60]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x94]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x68]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x9c]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x70]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0xa0]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x78]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x98]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x80]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x34]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x48]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x3c]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x44]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x38]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x10]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x24]
add edx, dword [eax + ebx*4]
mov ebx, dword [esp + 0x20]
add edx, dword [eax + ebx*4]
add edx, dword [eax]
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x90]
movd xmm1, edx
mov eax, dword [ecx + eax*4]
shr edx, 0x1f
cvtdq2pd xmm1, xmm1
addsd xmm1, qword [edx*8 + 0x100f1e60]
mov edx, dword [esp + 0x1c]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x50]
add eax, dword [ecx + ebx*4]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x54]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x5c]
add eax, dword [ecx + edx*4]
add edi, 4
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x84]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x6c]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x74]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x7c]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x4c]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x8c]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x58]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x88]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x60]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x94]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x68]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x9c]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x70]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0xa0]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x78]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x98]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x80]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x34]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x48]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x3c]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x44]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x38]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x10]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x24]
add eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x20]
add eax, dword [ecx + edx*4]
add eax, dword [ecx]
mov ecx, dword [ebp + 0xc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x100f1e60]
subsd xmm0, xmm1
mulsd xmm0, xmm2
addsd xmm0, xmm1
mulsd xmm0, xmm3
addsd xmm0, xmm4
cvttsd2si eax, xmm0
mov byte [esi + ecx], al
inc esi
mov eax, dword [esp + 0xa4]
cmp esi, dword [ebx + 0x10]
jl 0x10042810
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
sub esp, 0xc
mov ecx, ebx
push 0
push 0
push str.unsupported_input_dimension
call fcn.10047a60
int3