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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10074a40
mov eax, dword fs:[0]
push eax
sub esp, 0xb0
mov eax, dword [0x10093940]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x68], edi
mov dl, byte [ebp + 0xc]
mov ecx, 0x7f
mov al, byte [ebp + 8]
cmp dl, cl
mov esi, dword [edi + 0x8c]
mov dword [ebp - 0x80], eax
movzx eax, dl
cmovb ecx, eax
mov dword [ebp - 0xa8], esi
cmp dword [esi + 0x6c], 4
mov byte [ebp - 0x7c], cl
jne 0x1001e1bc
cmp byte [ebp + 0x10], 0
je 0x1001e1bc
mov eax, dword [ebp - 0x80]
movzx esi, al
mov eax, dword [edi + 8]
lea ecx, [esi + esi*8]
shl ecx, 5
lea edx, [eax + 0x110]
add edx, ecx
mov eax, dword [ecx + eax + 0x108]
cmp eax, edx
je 0x1001e15c
mov ecx, dword [ebp - 0x7c]
cmp byte [eax + 8], cl
je 0x1001e15e
mov eax, dword [eax + 4]
cmp eax, edx
jne 0x1001e150
mov eax, edx
cmp dword [eax + 4], 0
je 0x1001e1bc
mov ecx, dword [eax + 0x30]
push 0xffffffffffffffff
push 4
push eax
movsx edx, byte [ecx + 0x46]
movzx ecx, byte [ebp + 0x10]
add ecx, edx
mov edx, 1
cmp ecx, edx
push esi
cmovg edx, ecx
mov ecx, 0x7f
mov dword [ebp - 0x5c], edx
cmp dword [ebp - 0x5c], 0x7f
movzx edx, dl
cmovl ecx, edx
mov byte [eax + 9], cl
mov ecx, edi
call fcn.1001d1b0
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10049b12
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp - 0x80]
mov ecx, dword [edi + 0xc]
sub ecx, dword [edi + 8]
movzx esi, al
mov eax, 0x38e38e39
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jbe 0x1001e1f0
mov eax, esi
and eax, 0x8000000f
jns 0x1001e1eb
dec eax
or eax, 0xfffffff0
inc eax
mov dword [ebp - 0x80], eax
jmp 0x1001e1f3
mov eax, dword [ebp - 0x80]
cmp byte [ebp + 0x10], 0
mov ecx, edi
movzx esi, al
setne al
movzx eax, al
push eax
push dword [ebp - 0x7c]
push esi
call fcn.1001d140
cmp byte [ebp + 0x10], 0
je 0x1001e19d
lea edx, [esi + esi*8]
shl edx, 5
add edx, dword [edi + 8]
mov dword [ebp - 0xa4], edx
movzx eax, byte [edx + 0xe]
mov dword [ebp - 0x60], eax
and esi, 0x8000000f
jns 0x1001e235
dec esi
or esi, 0xfffffff0
inc esi
cmp esi, 9
je 0x1001e247
cmp byte [edx + 0xec], 0
jne 0x1001e247
xor ch, ch
jmp 0x1001e249
mov ch, 1
mov cl, byte [edx + 0xd]
xor esi, esi
mov byte [ebp - 0x55], ch
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x70], esi
test cl, cl
jne 0x1001e262
xor eax, eax
cmp byte [edx + 0xc], al
je 0x1001e283
movzx esi, cl
shl esi, 8
test byte [edi + 0x18], 1
mov dword [ebp - 0x64], esi
je 0x1001e275
mov eax, esi
jmp 0x1001e280
movzx eax, byte [edx + 0xc]
add eax, esi
mov esi, eax
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x70], esi
test ch, ch
je 0x1001e2b9
test byte [edi + 0x18], 2
je 0x1001e29f
xor eax, eax
mov edx, 0x80
cmp cl, 0x7e
cmove eax, edx
add eax, dword [ebp - 0x60]
jmp 0x1001e2a2
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x7c]
lea esi, [eax + 0x8000]
movzx ecx, cl
mov eax, esi
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x70], esi
xor cl, cl
mov dword [ebp - 0x6c], 0x10094fb8
xor edi, edi
mov byte [ebp - 0x56], cl
test eax, 0xffff7fff
jbe 0x1001e322
mov esi, dword [ebp - 0xa8]
lea eax, [ebp - 0x90]
mov ecx, dword [ebp - 0x64]
push ecx
push eax
lea ecx, [esi + 0x30]
call fcn.10019160
mov eax, dword [ebp - 0x90]
cmp eax, dword [esi + 0x30]
mov eax, dword [ebp - 0x8c]
jne 0x1001e308
test eax, eax
jne 0x1001e308
cmp dword [ebp - 0x88], 0x100
je 0x1001e31d
lea edi, [eax + 0xc]
test edi, edi
je 0x1001e31d
imul ecx, dword [ebp - 0x60], 0x4f
add ecx, edi
mov dword [ebp - 0x6c], ecx
mov cl, byte [ebp - 0x56]
jmp 0x1001e31f
mov cl, 1
mov esi, dword [ebp - 0x64]
mov eax, dword [ebp - 0x6c]
test byte [eax + 0x41], 2
je 0x1001e383
mov eax, esi
and eax, 0xffffff80
cmp eax, esi
je 0x1001e383
mov esi, dword [ebp - 0xa8]
push eax
lea eax, [ebp - 0x90]
push eax
lea ecx, [esi + 0x30]
call fcn.10019160
mov eax, dword [ebp - 0x90]
cmp eax, dword [esi + 0x30]
mov eax, dword [ebp - 0x8c]
jne 0x1001e36b
test eax, eax
jne 0x1001e36b
cmp dword [ebp - 0x88], 0x100
je 0x1001e36e
lea edi, [eax + 0xc]
test edi, edi
je 0x1001e38b
imul edx, dword [ebp - 0x60], 0x4f
mov ecx, dword [ebp - 0x64]
add edx, edi
mov dword [ebp - 0x6c], edx
jmp 0x1001e48a
test cl, cl
je 0x1001e484
mov esi, dword [ebp - 0x68]
cmp dword [esi + 0x34], 0
je 0x1001e484
mov cl, byte [ebp - 0x55]
test cl, cl
je 0x1001e3a7
add esi, 0x84
jmp 0x1001e3aa
add esi, 0x7c
test cl, cl
mov dword [ebp - 0x74], esi
mov edx, str.melodic
mov eax, str.percussion
cmove eax, edx
mov ecx, esi
mov dword [ebp - 0x5c], eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x90]
push eax
call fcn.1001a4b0
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [ebp - 0xbc], xmm0
cmp byte [eax + 0xd], 0
jne 0x1001e3f2
mov ecx, dword [ebp - 0x64]
cmp ecx, dword [eax + 0x10]
jae 0x1001e487
cmp dword [esi + 4], 0xccccccc
je 0x1001eb92
mov eax, dword [ebp - 0x74]
mov esi, dword [esi]
mov dword [ebp - 0x8c], eax
push 0x14
mov dword [ebp - 4], 0
mov dword [ebp - 0x88], 0
call fcn.10049b25
mov ecx, dword [ebp - 0x64]
add esp, 4
mov dword [ebp - 4], 0xffffffff
mov dword [eax + 0x10], ecx
mov ecx, dword [ebp - 0x74]
push eax
push dword [ebp - 0xb8]
mov dword [eax], esi
push dword [ebp - 0xbc]
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov word [eax + 0xc], 0
call fcn.1001ba70
push dword [ebp - 0x60]
mov eax, dword [ebp - 0x64]
mov esi, dword [ebp - 0x68]
and eax, 0xffff7fff
push eax
push dword [ebp - 0x5c]
mov eax, dword [ebp - 0x80]
mov ecx, dword [esi + 0x34]
movzx eax, al
push eax
push str.__i__Playing_missing__s_MIDI_bank__i__patch__i_
push dword [esi + 0x38]
call ecx
mov eax, dword [ebp - 0x60]
add esp, 0x18
mov dword [ebp - 0x60], eax
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x6c]
test byte [edx + 0x41], 2
je 0x1001e4e2
mov esi, dword [ebp - 0xa8]
lea eax, [ebp - 0x90]
and ecx, 0x8000
push ecx
push eax
lea ecx, [esi + 0x30]
call fcn.10019160
mov eax, dword [ebp - 0x90]
cmp eax, dword [esi + 0x30]
mov eax, dword [ebp - 0x8c]
jne 0x1001e4cd
test eax, eax
jne 0x1001e4cd
cmp dword [ebp - 0x88], 0x100
je 0x1001e4d0
lea edi, [eax + 0xc]
test edi, edi
je 0x1001e4df
imul edx, dword [ebp - 0x60], 0x4f
add edx, edi
mov dword [ebp - 0x6c], edx
jmp 0x1001e4e2
mov edx, dword [ebp - 0x6c]
movsx ecx, byte [edx + 0x46]
movzx eax, byte [ebp + 0x10]
add eax, ecx
mov ecx, 1
cmp eax, ecx
cmovg ecx, eax
movzx eax, cl
cmp ecx, 0x7f
mov ecx, 0x7f
cmovl ecx, eax
cmp byte [ebp - 0x55], 0
mov eax, dword [ebp - 0x7c]
movzx eax, al
mov dword [ebp - 0x9c], ecx
mov dword [ebp - 0xa0], eax
jne 0x1001e5ab
cmp dword [ebp - 0x64], 0
jbe 0x1001e5ab
test byte [edx + 0x41], 2
je 0x1001e5ab
mov eax, dword [ebp - 0x68]
mov esi, dword [eax + 0x34]
test esi, esi
je 0x1001e595
mov ecx, dword [ebp - 0x60]
lea edi, [eax + 0x74]
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x5c], ecx
push eax
mov ecx, edi
call fcn.1001c570
test eax, eax
jne 0x1001e592
push dword [ebp - 0x64]
mov eax, dword [ebp - 0xa4]
push dword [ebp - 0x60]
movzx eax, byte [eax + 0xe]
push eax
mov eax, dword [ebp - 0x80]
movzx eax, al
push eax
mov eax, dword [ebp - 0x68]
push str.__i__Caught_a_blank_instrument__i__offset__i__in_the_MIDI_bank__u
push dword [eax + 0x38]
call esi
mov eax, dword [ebp - 0x60]
add esp, 0x18
mov dword [ebp - 0x5c], eax
mov ecx, edi
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x8c]
push eax
call fcn.1001aba0
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x64], 0
movzx ecx, byte [eax + 0xe]
mov dword [ebp - 0x60], ecx
jmp 0x1001e5ae
mov ecx, dword [ebp - 0x60]
mov al, byte [edx + 0x40]
test al, al
je 0x1001e5cb
movzx esi, al
mov dword [ebp - 0xa0], esi
cmp al, 0x80
jb 0x1001e5cb
add esi, 0xffffff80
mov dword [ebp - 0xa0], esi
movups xmm0, xmmword [edx]
xor eax, eax
mov word [ebp - 0x54], ax
mov word [ebp - 0x32], ax
mov al, byte [edx + 0x41]
movups xmmword [ebp - 0x52], xmm0
shr al, 1
movups xmm0, xmmword [edx + 0x10]
and al, 1
mov byte [ebp - 0x56], al
mov eax, dword [ebp - 0x68]
movups xmmword [ebp - 0x42], xmm0
movups xmm0, xmmword [edx + 0x20]
mov edi, dword [eax + 0x34]
movups xmmword [ebp - 0x30], xmm0
movups xmm0, xmmword [edx + 0x30]
movups xmmword [ebp - 0x20], xmm0
test edi, edi
je 0x1001e669
lea esi, [eax + 0x74]
mov dword [ebp - 0x5c], ecx
lea eax, [ebp - 0x5c]
mov ecx, esi
push eax
lea eax, [ebp - 0xbc]
push eax
call fcn.1001a4b0
mov ecx, dword [ebp - 0x60]
mov eax, dword [eax + 8]
cmp byte [eax + 0xd], 0
jne 0x1001e631
cmp ecx, dword [eax + 0x10]
jae 0x1001e669
cmp byte [ebp - 0x56], 0
je 0x1001e6b1
mov eax, dword [ebp - 0x80]
push ecx
movzx eax, al
push eax
mov eax, dword [ebp - 0x68]
push str.__i__Playing_missing_instrument__i
push dword [eax + 0x38]
call edi
mov eax, dword [ebp - 0x60]
add esp, 0x10
mov dword [ebp - 0x5c], eax
mov ecx, esi
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x8c]
push eax
call fcn.1001aba0
jmp 0x1001e66f
cmp byte [ebp - 0x56], 0
je 0x1001e6b1
mov eax, dword [ebp - 0x7c]
mov esi, dword [ebp - 0xa4]
mov ecx, esi
movzx eax, al
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.1001ca90
mov eax, dword [ebp - 0x5c]
xorps xmm0, xmm0
mov word [eax + 0x25], 1
movsd qword [eax + 0x28], xmm0
mov dword [eax + 0x30], 0
mov dword [eax + 0x78], 0
mov eax, dword [ebp - 0x7c]
mov byte [esi + 0x19], al
jmp 0x1001e19d
mov eax, dword [ebp - 0x80]
or edi, 0xffffffff
movzx eax, al
xor edx, edx
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0x7c]
movzx eax, al
mov dword [ebp - 0x8c], edi
mov dword [ebp - 0x88], edi
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x98], eax
nop dword [eax]
cmp edx, 1
jne 0x1001e712
lea ecx, [ebp - 0x52]
mov esi, 0x1c
lea edx, [ebp - 0x30]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x1001e706
add ecx, 4
add edx, 4
sub esi, 4
jae 0x1001e6f0
jmp 0x1001e926
cmp edi, 0xffffffff
je 0x1001e926
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0xa8]
or ecx, 0xffffffff
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x84], 0x80000001
mov esi, dword [eax]
mov dword [ebp - 0x74], esi
xor esi, esi
mov eax, dword [ebp - 0x74]
test eax, eax
je 0x1001e8df
nop word [eax + eax]
cmp edx, 1
jne 0x1001e749
cmp esi, edi
je 0x1001e791
mov eax, edx
lea ecx, [ebp - 0x54]
shl eax, 4
add eax, edx
lea eax, [ecx + eax*2]
mov ecx, dword [ebp - 0x68]
push eax
push esi
call fcn.1001c010
mov edi, eax
mov ecx, edx
mov eax, dword [ebp - 0x84]
cdq
cmp ecx, edx
jl 0x1001e782
jg 0x1001e775
cmp edi, eax
jbe 0x1001e782
mov ecx, esi
mov dword [ebp - 0x84], edi
mov dword [ebp - 0x70], ecx
jmp 0x1001e785
mov ecx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x74]
mov edi, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x78]
inc esi
cmp esi, eax
jb 0x1001e740
test ecx, ecx
js 0x1001e8df
mov edx, dword [ebp - 0x68]
lea esi, [ecx + ecx*4]
add esi, esi
mov eax, dword [edx + 0x4c]
cmp dword [eax + esi*8 + 0x2c], 0
je 0x1001e8d3
mov esi, dword [eax + esi*8 + 0x38]
mov edi, dword [edx + 0x8c]
mov dword [ebp - 0xac], edi
cmp dword [esi + 4], 0
je 0x1001e8a7
nop
cmp dword [esi + 0xc], 0
lea edi, [esi + 8]
mov dword [ebp - 0x74], esi
mov esi, dword [esi + 4]
jne 0x1001e891
movzx eax, word [edi]
lea edx, [eax + eax*8]
mov eax, dword [ebp - 0x68]
shl edx, 5
mov eax, dword [eax + 8]
lea ecx, [eax + 0x110]
mov eax, dword [edx + eax + 0x108]
add ecx, edx
mov edx, ecx
mov dword [ebp - 0x5c], ecx
mov ecx, dword [ebp - 0x74]
cmp eax, edx
je 0x1001e822
nop dword [eax]
mov cl, byte [edi + 2]
cmp byte [eax + 8], cl
mov ecx, dword [ebp - 0x74]
je 0x1001e824
mov eax, dword [eax + 4]
cmp eax, edx
jne 0x1001e810
mov eax, edx
cmp dword [edi + 0x3c], 0
jl 0x1001e846
jg 0x1001e835
cmp dword [edi + 0x38], 0x11170
jb 0x1001e846
cmp dword [edi + 0x34], 0
jl 0x1001e884
jg 0x1001e846
cmp dword [edi + 0x30], 0x1312d00
jbe 0x1001e884
mov edx, dword [ebp - 0x78]
shl edx, 4
add edx, dword [ebp - 0x78]
add edi, 0xe
mov dword [ebp - 0x5c], 0x1c
lea edx, [ebp + edx*2 - 0x52]
mov dword [ebp - 0x84], edx
mov ecx, dword [ebp - 0x84]
mov edx, dword [edi]
cmp edx, dword [ecx]
mov ecx, dword [ebp - 0x74]
jne 0x1001e884
add dword [ebp - 0x84], 4
add edi, 4
sub dword [ebp - 0x5c], 4
jae 0x1001e863
jmp 0x1001e891
push eax
push ecx
push dword [ebp - 0x70]
mov ecx, dword [ebp - 0x68]
call fcn.1001cdb0
cmp dword [esi + 4], 0
jne 0x1001e7d0
mov edx, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x70]
mov edi, dword [ebp - 0xac]
push 3
push ecx
push 0xffffffffffffffff
mov ecx, edx
call fcn.1001d010
mov ecx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x68]
lea edx, [ecx + ecx*4]
mov eax, dword [eax + 0x4c]
add edx, edx
cmp dword [eax + edx*8 + 0x2c], 0
jne 0x1001e8d3
push ecx
mov ecx, edi
call fcn.1002e0e0
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x78]
mov dword [ebp + edx*4 - 0x8c], ecx
jmp 0x1001e913
mov edx, dword [ebp - 0x68]
mov ecx, dword [edx + 0x34]
test ecx, ecx
je 0x1001e910
push dword [ebp - 0xb0]
mov eax, dword [ebp - 0xa4]
push dword [ebp - 0x98]
movzx eax, byte [eax + 0xe]
push eax
push dword [ebp - 0x64]
push str.ignored_unplaceable_note__bank__i__inst__i__note__i__MIDI_channel__i_
push dword [edx + 0x38]
call ecx
add esp, 0x18
mov edx, dword [ebp - 0x78]
mov edi, dword [ebp - 0x8c]
inc edx
mov dword [ebp - 0x78], edx
cmp edx, 2
jb 0x1001e6e0
test edi, edi
jns 0x1001e937
cmp dword [ebp - 0x88], 0
jl 0x1001e19d
mov esi, dword [ebp - 0xa4]
cmp byte [esi + 0x17], 0
je 0x1001e98b
mov eax, dword [ebp - 0x9c]
sub esp, 8
movzx eax, al
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x10077990]
movss dword [ebp - 0x98], xmm0
fld dword [ebp - 0x98]
fstp qword [esp]
call fcn.10059100
fstp dword [ebp - 0x98]
cvttss2si eax, dword [ebp - 0x98]
add esp, 8
mov byte [ebp - 0x9c], al
mov eax, dword [ebp - 0x7c]
mov ecx, esi
movzx eax, al
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.1001ca90
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x9c]
mov edx, dword [ebp - 0x7c]
movsd xmm2, qword [0x10076988]
mov byte [ecx + 9], al
movzx eax, dl
mov al, byte [eax + esi + 0x28]
mov byte [ecx + 0xa], al
mov eax, dword [ebp - 0xa0]
mov word [ecx + 0xc], ax
movsd qword [ecx + 0x18], xmm2
mov byte [ecx + 0x26], 0
movd xmm0, eax
mov eax, dword [ebp - 0x60]
mov dword [ecx + 0x20], eax
mov al, byte [ebp - 0x55]
cvtdq2pd xmm0, xmm0
mov byte [ecx + 0x24], al
mov al, byte [ebp - 0x56]
mov byte [ecx + 0x25], al
mov eax, dword [ebp - 0x6c]
mov dword [ecx + 0x30], eax
mov dword [ecx + 0x78], 0
movsd qword [ecx + 0x10], xmm0
xorps xmm0, xmm0
movsd qword [ecx + 0x28], xmm0
cmp byte [esi + 0x18], 0
mov al, byte [esi + 0x19]
movsd xmm1, qword [esi + 0x20]
je 0x1001ea47
ucomisd xmm1, xmm2
lahf
test ah, 0x44
jnp 0x1001ea47
cmp byte [ebp - 0x55], 0
jne 0x1001ea47
mov byte [esi + 0x19], dl
test al, al
js 0x1001ea63
movsx eax, al
movsd qword [ecx + 0x18], xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [ecx + 0x10], xmm0
inc dword [esi + 0xf4]
jmp 0x1001ea63
cmp byte [ebp - 0x55], 0
mov byte [esi + 0x19], dl
je 0x1001ea63
movsd xmm0, qword [0x100779a8]
movsd qword [ecx + 0x28], xmm0
inc dword [esi + 0xf8]
xor eax, eax
lea esi, [ebp - 0x52]
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x84], esi
nop dword [eax]
nop dword [eax + eax]
mov edx, dword [ebp + eax*4 - 0x8c]
test edx, edx
js 0x1001eb0d
mov edi, dword [ecx + 0x78]
xor esi, esi
movzx eax, dx
xor edx, edx
mov dword [ebp - 0xa0], eax
test edi, edi
je 0x1001eacd
mov eax, edi
mov dword [ebp - 0x98], eax
lea eax, [ecx + 0x34]
mov ecx, dword [ebp - 0xa0]
test edx, edx
jne 0x1001eaca
cmp word [eax], cx
cmove edx, eax
inc esi
add eax, 0x22
cmp esi, dword [ebp - 0x98]
jb 0x1001eab4
mov ecx, dword [ebp - 0x5c]
test edx, edx
jne 0x1001eaf2
cmp edi, 2
jae 0x1001eaf2
mov eax, edi
shl eax, 4
add eax, 0x1a
add eax, edi
lea edx, [ecx + eax*2]
lea eax, [edi + 1]
mov dword [ecx + 0x78], eax
mov eax, dword [ebp - 0xa0]
mov word [edx], ax
mov esi, dword [ebp - 0x84]
mov eax, dword [ebp - 0x9c]
movups xmm0, xmmword [esi]
movups xmmword [edx + 2], xmm0
movups xmm0, xmmword [esi + 0x10]
movups xmmword [edx + 0x12], xmm0
inc eax
add esi, 0x22
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x84], esi
cmp eax, 2
jb 0x1001ea80
mov eax, dword [ebp - 0x80]
push 0xffffffffffffffff
push 0xf
push ecx
mov ecx, dword [ebp - 0x68]
movzx eax, al
push eax
call fcn.1001d1b0
xor edi, edi
lea esi, [ebp - 0x54]
nop
mov eax, dword [ebp + edi*4 - 0x8c]
test eax, eax
js 0x1001eb82
movups xmm0, xmmword [esi]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0x68]
shl edx, 4
push 0
push 0
mov ecx, dword [eax + 0x4c]
mov ax, word [esi + 0x20]
movups xmmword [edx + ecx + 8], xmm0
movups xmm0, xmmword [esi + 0x10]
movups xmmword [edx + ecx + 0x18], xmm0
mov word [edx + ecx + 0x28], ax
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax + 0x4c]
add ecx, edx
call fcn.1001bd20
inc edi
add esi, 0x22
cmp edi, 2
jb 0x1001eb40
mov al, 1
jmp 0x1001e19f
call fcn.1001bd10
int3