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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x9c
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x74], eax
cmp dword [ecx + 0x7610], 0
mov dword [esp + 0x64], edx
je 0x76180e
mov eax, dword [ecx + 0x7608]
mov dword [esp + 0x54], eax
jmp 0x761822
mov eax, dword [esp + 0xb0]
xor esi, esi
test eax, eax
cmovg esi, eax
add esi, edx
mov dword [esp + 0x54], esi
mov edx, ecx
mov edi, dword [ecx + 0x7578]
mov dword [esp + 0x5c], edi
mov ecx, dword [ecx + 0x7588]
add ecx, edi
mov dword [esp + 0x68], ecx
cmp dword [esp + 0xbc], 0
je 0x7618f8
mov ebp, dword [esp + 0xb8]
mov ecx, dword [edx + 0x74b0]
mov eax, dword [edx + 0x74b4]
mov dword [esp + 0x70], eax
mov eax, dword [edx + 0x74b8]
mov dword [esp + 0x6c], eax
mov dword [edx + 0x750c], 1
mov eax, dword [edx + 0x6834]
mov dword [esp + 0x48], eax
movsd xmm0, qword [edx + 0x682c]
movsd qword [esp + 0x40], xmm0
test ebp, ebp
je 0x761935
mov dword [esp + 0x60], 0xffffffec
mov esi, dword [esp + 0xb4]
mov dword [esp + 0x20], esi
lea edi, [esi + 4]
mov dword [esp + 0x24], edi
cmp ebp, 4
mov dword [esp + 0x50], ecx
jb 0x761942
lea ecx, [esi + ebp]
add ecx, 0xfffffffc
mov dword [esp + 0x1c], ecx
mov eax, dword [esi + ebp - 4]
mov dword [esp + 0x14], eax
cmp eax, 0x1000000
jb 0x7623e3
cmp ebp, 0xffffff88
ja 0x7623e3
mov dword [esp], edi
add ebp, 0xfffffffc
mov ecx, eax
shr ecx, 0x18
bsr ebx, ecx
not ebx
add ebx, 9
jmp 0x76198d
mov ebp, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
sub edx, edi
mov esi, dword [esp + 0x54]
sub esi, ebp
mov eax, 0xffffffba
cmp edx, esi
ja 0x7623ef
test ebp, ebp
je 0x7623e9
mov ecx, edx
mov esi, edx
push ecx
push edi
push ebp
call fcn.00786d70
add esp, 0xc
add ebp, esi
mov eax, ebp
jmp 0x7623eb
mov dword [esp + 0x60], 0xffffffec
jmp 0x7623e3
mov dword [esp + 0x1c], esi
movzx eax, byte [esi]
mov dword [esp + 0x14], eax
cmp ebp, 2
je 0x761960
cmp ebp, 3
jne 0x76196d
movzx ecx, byte [esi + 2]
shl ecx, 0x10
or eax, ecx
movzx ecx, byte [esi + 1]
shl ecx, 8
add eax, ecx
mov dword [esp + 0x14], eax
movzx ecx, byte [esi + ebp - 1]
test ecx, ecx
je 0x7623e3
mov dword [esp], edi
bsr ebx, ecx
xor ebx, 0x1f
shl ebp, 3
sub ebx, ebp
add ebx, 9
xor ebp, ebp
mov dword [esp + 0x58], edx
mov edx, dword [edx]
mov edi, dword [edx + 4]
add ebx, edi
mov ecx, ebx
neg cl
mov esi, eax
shr esi, cl
and esi, dword [edi*4 + 0xa95648]
mov dword [esp + 0x28], esi
cmp ebx, 0x21
jae 0x762406
mov ecx, dword [esp + 0xb4]
lea edi, [ecx + ebp]
cmp ebp, 4
jge 0x7619eb
test ebp, ebp
je 0x7623fa
mov eax, ebx
shr eax, 3
mov ecx, edi
sub ecx, eax
cmp ecx, dword [esp + 0xb4]
cmovb eax, ebp
sub edi, eax
mov dword [esp + 0x1c], edi
shl eax, 3
sub ebx, eax
jmp 0x7619f9
mov eax, ebx
shr eax, 3
sub edi, eax
mov dword [esp + 0x1c], edi
and ebx, 7
mov dword [esp + 0x18], ebx
mov eax, dword [edi]
mov dword [esp + 0x14], eax
add edx, 8
mov dword [esp + 0x2c], edx
mov ecx, dword [esp + 0x58]
mov edx, dword [ecx + 8]
mov esi, dword [edx + 4]
add ebx, esi
mov ecx, ebx
neg cl
mov ebp, eax
shr ebp, cl
and ebp, dword [esi*4 + 0xa95648]
mov dword [esp + 0x30], ebp
cmp ebx, 0x21
jae 0x762418
cmp edi, dword [esp]
jae 0x761a5f
mov ecx, edi
mov ebp, dword [esp + 0xb4]
sub ecx, ebp
je 0x761a73
mov eax, ebx
shr eax, 3
mov esi, edi
sub esi, eax
cmp esi, ebp
cmovb eax, ecx
sub edi, eax
mov dword [esp + 0x1c], edi
shl eax, 3
sub ebx, eax
jmp 0x761a6d
mov eax, ebx
shr eax, 3
sub edi, eax
mov dword [esp + 0x1c], edi
and ebx, 7
mov eax, dword [edi]
mov dword [esp + 0x14], eax
add edx, 8
mov dword [esp + 0x34], edx
mov ecx, dword [esp + 0x58]
mov edx, dword [ecx + 4]
mov esi, dword [edx + 4]
add ebx, esi
mov ecx, ebx
neg cl
shr eax, cl
and eax, dword [esi*4 + 0xa95648]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x38], eax
cmp ebx, 0x21
jae 0x76242a
cmp edi, dword [esp]
jae 0x761ad1
mov ecx, edi
mov ebp, dword [esp + 0xb4]
sub ecx, ebp
je 0x761ae9
mov eax, ebx
shr eax, 3
mov esi, edi
sub esi, eax
cmp esi, ebp
cmovb eax, ecx
sub edi, eax
mov dword [esp + 0x1c], edi
shl eax, 3
sub ebx, eax
jmp 0x761adf
mov eax, ebx
shr eax, 3
sub edi, eax
mov dword [esp + 0x1c], edi
and ebx, 7
mov dword [esp + 0x18], ebx
mov eax, dword [edi]
mov dword [esp + 0x14], eax
add dword [esp + 0x58], 0x682c
add edx, 8
mov dword [esp + 0x3c], edx
mov eax, dword [esp + 0x54]
add eax, 0xffffffe0
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x50]
lea ecx, [eax + 0x10]
mov dword [esp + 0x7c], ecx
add eax, 0x18
mov dword [esp + 0x78], eax
mov ebp, dword [esp + 0x64]
nop dword [eax]
mov edx, dword [esp + 0x28]
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
mov esi, dword [edi + edx*8 + 4]
movzx ebx, byte [edi + edx*8 + 2]
mov dword [esp + 0x10], ebx
movzx ebx, word [edi + edx*8]
mov dword [esp + 0x90], ebx
movzx edx, byte [edi + edx*8 + 3]
mov dword [esp + 0x84], edx
mov edi, dword [eax + ecx*8 + 4]
movzx edx, byte [eax + ecx*8 + 2]
mov dword [esp + 4], edx
movzx edx, word [eax + ecx*8]
mov dword [esp + 0x8c], edx
movzx eax, byte [eax + ecx*8 + 3]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
mov edx, dword [eax + ecx*8 + 4]
mov dword [esp + 0x4c], edx
movzx edx, byte [eax + ecx*8 + 2]
movzx ebx, word [eax + ecx*8]
mov dword [esp + 0x98], ebx
movzx eax, byte [eax + ecx*8 + 3]
mov dword [esp + 0x94], eax
cmp edx, 2
mov dword [esp], ebp
jb 0x761c40
cmp dword [esp + 0xc0], 0
je 0x761c70
cmp dl, 0x19
jb 0x761c70
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov dword [esp + 8], ebx
mov ecx, eax
shl ebx, cl
mov cl, 5
sub cl, dl
shr ebx, cl
lea ecx, [edx + eax]
add ecx, 0xfffffffb
cmp ecx, 0x21
jae 0x762339
mov ebp, dword [esp + 0x1c]
cmp ebp, dword [esp + 0x24]
jae 0x761d09
mov eax, dword [esp + 0x20]
mov edx, ebp
sub edx, eax
je 0x7620dc
mov dword [esp + 0xc], edi
mov edi, ecx
shr edi, 3
mov dword [esp + 8], eax
mov eax, ebp
sub eax, edi
cmp eax, dword [esp + 8]
cmovb edi, edx
sub ebp, edi
mov dword [esp + 0x1c], ebp
shl edi, 3
sub ecx, edi
mov edi, dword [esp + 0xc]
jmp 0x761d17
xor eax, eax
test esi, esi
sete al
test edx, edx
jne 0x762196
xor ecx, ecx
test esi, esi
setne cl
mov edx, dword [esp + eax*4 + 0x40]
lea eax, [esp + 0x40]
lea ecx, [eax + ecx*4]
mov ebx, dword [esp + 0x10]
jmp 0x761d4a
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, eax
shl ebx, cl
mov ecx, edx
neg cl
shr ebx, cl
add eax, edx
mov edx, ebx
mov dword [esp + 0x18], eax
add edx, dword [esp + 0x4c]
cmp eax, 0x21
jae 0x76230a
mov dword [esp + 8], edx
mov ecx, dword [esp + 0x1c]
cmp ecx, dword [esp + 0x24]
mov ebx, dword [esp + 0x10]
jae 0x761ceb
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x20]
mov edx, ecx
sub edx, edi
je 0x761ce1
mov ebx, eax
shr ebx, 3
mov ebp, ecx
sub ebp, ebx
cmp ebp, edi
mov ebp, dword [esp]
cmovb ebx, edx
sub ecx, ebx
mov dword [esp + 0x1c], ecx
shl ebx, 3
sub eax, ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x18], eax
mov eax, dword [ecx]
mov dword [esp + 0x14], eax
mov edi, dword [esp + 0xc]
mov edx, dword [esp + 8]
jmp 0x761d3e
mov edx, eax
shr edx, 3
sub ecx, edx
mov dword [esp + 0x1c], ecx
and eax, 7
mov dword [esp + 0x18], eax
mov eax, dword [ecx]
mov dword [esp + 0x14], eax
mov edx, dword [esp + 8]
jmp 0x761d3e
mov edx, ecx
shr edx, 3
sub ebp, edx
mov dword [esp + 0x1c], ebp
and ecx, 7
mov dword [esp + 0x18], ecx
mov edx, dword [ebp]
mov dword [esp + 0x14], edx
mov ebp, dword [esp]
shl ebx, 5
add ebx, dword [esp + 0x4c]
shl edx, cl
shr edx, 0x1b
add edx, ebx
add ecx, 5
mov dword [esp + 0x18], ecx
mov ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x44]
mov dword [esp + 0x48], eax
lea ecx, [esp + 0x40]
mov eax, dword [ecx]
mov dword [esp + 0x44], eax
mov dword [esp + 8], edx
mov dword [esp + 0x40], edx
mov ecx, dword [esp + 4]
test ecx, ecx
je 0x761d80
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, eax
shl edx, cl
mov ecx, dword [esp + 4]
neg cl
shr edx, cl
mov ecx, dword [esp + 4]
add eax, ecx
mov dword [esp + 0x18], eax
add edi, edx
mov dword [esp + 0xc], edi
add ecx, ebx
cmp ecx, 0x14
jb 0x761de8
mov eax, dword [esp + 0x18]
cmp eax, 0x21
jae 0x7621d3
mov ecx, dword [esp + 0x1c]
cmp ecx, dword [esp + 0x24]
jae 0x761dd0
mov edi, dword [esp + 0x20]
mov edx, ecx
sub edx, edi
je 0x761de8
mov ebx, eax
shr ebx, 3
mov ebp, ecx
sub ebp, ebx
cmp ebp, edi
mov ebp, dword [esp]
cmovb ebx, edx
sub ecx, ebx
mov dword [esp + 0x1c], ecx
shl ebx, 3
sub eax, ebx
mov ebx, dword [esp + 0x10]
jmp 0x761dde
mov edx, eax
shr edx, 3
sub ecx, edx
mov dword [esp + 0x1c], ecx
and eax, 7
mov dword [esp + 0x18], eax
mov eax, dword [ecx]
mov dword [esp + 0x14], eax
test ebx, ebx
je 0x7621f0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, eax
shl edx, cl
mov ecx, ebx
neg cl
shr edx, cl
add eax, ebx
mov dword [esp + 0x18], eax
add esi, edx
cmp eax, 0x21
jae 0x7621fd
mov edx, dword [esp + 0x1c]
cmp edx, dword [esp + 0x24]
jae 0x761e50
mov edi, dword [esp + 0x20]
mov ecx, edx
sub ecx, edi
je 0x761e68
mov ebx, eax
shr ebx, 3
mov ebp, edx
sub ebp, ebx
cmp ebp, edi
mov ebp, dword [esp]
cmovb ebx, ecx
sub edx, ebx
mov dword [esp + 0x1c], edx
shl ebx, 3
sub eax, ebx
jmp 0x761e5e
mov ecx, eax
shr ecx, 3
sub edx, ecx
mov dword [esp + 0x1c], edx
and eax, 7
mov dword [esp + 0x18], eax
mov ecx, dword [edx]
mov dword [esp + 0x14], ecx
cmp dword [esp + 0x74], 1
je 0x761f98
mov dword [esp + 4], esi
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x84]
add eax, esi
mov ecx, eax
neg cl
mov ebx, edi
shr ebx, cl
and ebx, dword [esi*4 + 0xa95648]
mov esi, dword [esp + 0x88]
add eax, esi
mov ecx, eax
neg cl
mov ebp, edi
shr ebp, cl
add ebx, dword [esp + 0x90]
and ebp, dword [esi*4 + 0xa95648]
mov dword [esp + 0x28], ebx
add ebp, dword [esp + 0x8c]
mov dword [esp + 0x38], ebp
cmp eax, 0x21
jae 0x76221a
cmp edx, dword [esp + 0x24]
mov esi, dword [esp + 4]
jae 0x761f00
mov ebx, dword [esp + 0x20]
mov ecx, edx
sub ecx, ebx
je 0x761f18
mov edi, eax
shr edi, 3
mov ebp, edx
sub ebp, edi
cmp ebp, ebx
cmovb edi, ecx
sub edx, edi
mov dword [esp + 0x1c], edx
shl edi, 3
sub eax, edi
jmp 0x761f0e
mov ecx, eax
shr ecx, 3
sub edx, ecx
mov dword [esp + 0x1c], edx
and eax, 7
mov dword [esp + 0x18], eax
mov edi, dword [edx]
mov dword [esp + 0x14], edi
mov ebx, dword [esp + 0x94]
add eax, ebx
mov ecx, eax
neg cl
shr edi, cl
and edi, dword [ebx*4 + 0xa95648]
add edi, dword [esp + 0x98]
mov dword [esp + 0x18], eax
mov dword [esp + 0x30], edi
cmp eax, 0x21
mov ebp, dword [esp]
jae 0x762230
cmp edx, dword [esp + 0x24]
jae 0x761f80
mov edi, dword [esp + 0x20]
mov ecx, edx
sub ecx, edi
je 0x761f98
mov ebx, eax
shr ebx, 3
mov ebp, edx
sub ebp, ebx
cmp ebp, edi
mov ebp, dword [esp]
cmovb ebx, ecx
sub edx, ebx
mov dword [esp + 0x1c], edx
shl ebx, 3
sub eax, ebx
jmp 0x761f8e
mov ecx, eax
shr ecx, 3
sub edx, ecx
mov dword [esp + 0x1c], edx
and eax, 7
mov dword [esp + 0x18], eax
mov eax, dword [edx]
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x5c]
lea eax, [ecx + esi]
cmp eax, dword [esp + 0x68]
ja 0x7620e8
mov edx, dword [esp + 0xc]
lea ebx, [esi + edx]
lea edx, [ebx + ebp]
cmp edx, dword [esp + 0x80]
ja 0x7620e8
mov edx, dword [esp + 0x54]
sub edx, ebp
lea edi, [ebx + 0x20]
cmp edx, edi
jb 0x7620e8
mov dword [esp + 4], ebx
lea ebx, [esi + ebp]
movups xmm0, xmmword [ecx]
movups xmmword [ebp], xmm0
cmp esi, 0x11
jae 0x762116
mov esi, ebx
mov edx, dword [esp + 8]
sub esi, edx
mov dword [esp + 0x5c], eax
mov edi, ebx
mov ebp, dword [esp + 0x50]
sub edi, ebp
cmp edi, edx
jae 0x762050
mov eax, ebx
sub eax, dword [esp + 0x70]
cmp eax, edx
jb 0x7623e3
mov dword [esp + 0x10], edi
sub esi, ebp
mov edx, dword [esp + 0x6c]
lea eax, [edx + esi]
mov edi, dword [esp + 0xc]
lea ecx, [eax + edi]
cmp ecx, edx
jbe 0x7620b0
mov ecx, esi
neg ecx
push ecx
push eax
push ebx
call fcn.00786d78
add esp, 0xc
sub ebx, esi
mov eax, esi
add eax, edi
mov esi, ebp
mov edx, dword [esp + 8]
mov edi, dword [esp + 0x10]
jmp 0x762054
mov eax, dword [esp + 0xc]
cmp edx, 0x10
jb 0x762154
movups xmm0, xmmword [esi]
movups xmmword [ebx], xmm0
cmp eax, 0x11
jl 0x7620bb
add eax, ebx
mov ecx, 0x10
mov ebp, dword [esp]
nop word cs:[eax + eax]
movups xmm0, xmmword [esi + ecx]
movups xmmword [ebx + ecx], xmm0
movups xmm0, xmmword [esi + ecx + 0x10]
movups xmmword [ebx + ecx + 0x10], xmm0
lea edx, [ebx + ecx]
add edx, 0x20
add ecx, 0x20
cmp edx, eax
jb 0x762080
jmp 0x7620be
push edi
push eax
push ebx
call fcn.00786d78
add esp, 0xc
mov ebp, dword [esp]
mov eax, dword [esp + 4]
cmp eax, 0xffffff88
ja 0x7623a9
add ebp, eax
dec dword [esp + 0x74]
jne 0x761b20
jmp 0x7623b3
mov ebp, dword [esp]
mov edx, dword [esp + 8]
jmp 0x761d25
mov ecx, ebp
mov edx, dword [esp + 0x54]
push dword [esp + 0x6c]
push dword [esp + 0x74]
push dword [esp + 0x58]
push dword [esp + 0x74]
lea eax, [esp + 0x6c]
push eax
push dword [esp + 0x1c]
push dword [esp + 0x24]
push esi
call fcn.00762590
add esp, 0x20
jmp 0x7620c2
add esi, 0xfffffff0
movups xmm0, xmmword [ecx + 0x10]
movups xmmword [ebp + 0x10], xmm0
cmp esi, 0x11
jl 0x761fe8
lea edx, [ebp + 0x20]
xor esi, esi
movups xmm0, xmmword [ecx + esi + 0x20]
movups xmmword [edx + esi], xmm0
movups xmm0, xmmword [ecx + esi + 0x30]
movups xmmword [edx + esi + 0x10], xmm0
lea edi, [edx + esi]
add edi, 0x20
add esi, 0x20
cmp edi, ebx
jb 0x76212f
jmp 0x761fe8
cmp edx, 7
ja 0x76223d
movzx ecx, byte [esi]
mov byte [ebx], cl
movzx ecx, byte [esi + 1]
mov byte [ebx + 1], cl
movzx ecx, byte [esi + 2]
mov byte [ebx + 2], cl
movzx ecx, byte [esi + 3]
mov byte [ebx + 3], cl
mov ecx, dword [edx*4 + 0xa956cc]
mov edx, dword [esi + ecx]
add esi, ecx
mov dword [ebx + 4], edx
mov ecx, dword [esp + 8]
sub esi, dword [ecx*4 + 0xa956ec]
jmp 0x762245
mov edx, dword [esp + 0x4c]
add edx, eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
shl eax, cl
shr eax, 0x1f
inc ecx
mov dword [esp + 0x18], ecx
add eax, edx
cmp eax, 3
mov ebx, dword [esp + 0x10]
jne 0x762317
mov eax, dword [esp + 0x40]
dec eax
cmp eax, 1
mov edx, 0
sbb edx, edx
or edx, eax
jmp 0x761d3e
mov dword [esp + 0x1c], 0xa956c8
test ebx, ebx
jne 0x761df0
nop word cs:[eax + eax]
mov eax, dword [esp + 0x18]
cmp eax, 0x21
jb 0x761e13
mov dword [esp + 0x1c], 0xa956c8
mov edx, 0xa956c8
cmp dword [esp + 0x74], 1
jne 0x761e73
jmp 0x761f98
mov dword [esp + 0x1c], 0xa956c8
mov edx, 0xa956c8
mov esi, dword [esp + 4]
jmp 0x761f18
mov dword [esp + 0x1c], 0xa956c8
jmp 0x761f98
movsd xmm0, qword [esi]
movsd qword [ebx], xmm0
mov ebp, dword [esp]
cmp eax, 9
jb 0x7620be
lea ecx, [esi + 8]
mov dword [esp], ecx
lea ecx, [ebx + 8]
mov edx, ecx
sub edx, dword [esp]
mov dword [esp + 0x10], edx
lea edx, [ebx + eax]
mov dword [esp + 0x4c], edx
cmp dword [esp + 0x10], 0xf
jg 0x76234a
mov ebx, dword [esp + 0xc]
add ebx, dword [esp + 0x50]
mov eax, dword [esp + 8]
cmp eax, edi
mov edx, edi
cmovb edx, eax
cmova edi, eax
add edx, ebx
mov ebx, edx
add ebx, edi
sub ebx, eax
mov eax, dword [esp + 0x7c]
add eax, edi
cmp ebx, eax
cmovbe ebx, eax
mov eax, dword [esp + 0x50]
add eax, edi
sub ebx, eax
add ebx, 0xfffffff7
cmp ebx, 0x18
mov edx, dword [esp]
jb 0x76238a
cmp dword [esp + 0x10], 0x20
jb 0x76238a
shr ebx, 3
inc ebx
mov dword [esp + 0xc], ebx
and ebx, 0xfffffffc
lea ecx, [ecx + ebx*8]
lea edx, [edx + ebx*8]
mov eax, dword [esp + 0x78]
add eax, ebp
sub edi, ebp
add edi, eax
xor eax, eax
movups xmm0, xmmword [esi + eax*8 + 8]
movups xmm1, xmmword [esi + eax*8 + 0x18]
movups xmmword [edi + eax*8 - 0x10], xmm0
movups xmmword [edi + eax*8], xmm1
add eax, 4
cmp ebx, eax
jne 0x7622dd
cmp dword [esp + 0xc], ebx
mov eax, dword [esp + 4]
je 0x7620c2
jmp 0x76238e
mov dword [esp + 0x1c], 0xa956c8
jmp 0x761d3a
mov ecx, dword [esp + eax*4 + 0x40]
cmp ecx, 1
mov edx, 0
sbb edx, edx
or edx, ecx
lea ecx, [esp + 0x40]
cmp eax, 1
jne 0x761d3e
jmp 0x761d4a
mov dword [esp + 0x1c], 0xa956c8
mov edx, dword [esp + 8]
jmp 0x761d25
mov edx, dword [esp]
movups xmm0, xmmword [edx]
movups xmmword [ecx], xmm0
cmp eax, 0x19
jl 0x7620be
add ebx, 0x18
xor eax, eax
mov edx, dword [esp + 0x4c]
movups xmm0, xmmword [esi + eax + 0x18]
movups xmmword [ebx + eax], xmm0
movups xmm0, xmmword [esi + eax + 0x28]
movups xmmword [ebx + eax + 0x10], xmm0
lea ecx, [ebx + eax]
add ecx, 0x20
add eax, 0x20
cmp ecx, edx
jb 0x762365
jmp 0x7620be
mov eax, dword [esp + 4]
mov esi, dword [esp + 0x4c]
movsd xmm0, qword [edx]
movsd qword [ecx], xmm0
add ecx, 8
add edx, 8
cmp ecx, esi
jb 0x762392
jmp 0x7620c2
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x60]
jmp 0x7623ef
mov eax, dword [esp + 0x1c]
cmp eax, dword [esp + 0x20]
jne 0x7623e3
cmp dword [esp + 0x18], 0x20
jne 0x7623e3
lea edx, [esp + 0x40]
mov eax, dword [edx + 8]
mov ecx, dword [esp + 0x58]
mov dword [ecx + 8], eax
movsd xmm0, qword [edx]
movsd qword [ecx], xmm0
mov edi, dword [esp + 0x5c]
jmp 0x7618fc
mov eax, dword [esp + 0x60]
jmp 0x7623ef
xor eax, eax
sub eax, dword [esp + 0x64]
add esp, 0x9c
pop esi
pop edi
pop ebx
pop ebp
ret
mov edi, dword [esp + 0xb4]
jmp 0x761a03
mov dword [esp + 0x1c], 0xa956c8
mov edi, 0xa956c8
jmp 0x761a03
mov dword [esp + 0x1c], 0xa956c8
mov edi, 0xa956c8
jmp 0x761a73
mov dword [esp + 0x1c], 0xa956c8
jmp 0x761ae9