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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x9c
mov esi, dword [esp + 0xbc]
mov eax, dword [esp + 0xb0]
xor edi, edi
test eax, eax
cmovg edi, eax
add edi, edx
mov dword [esp + 0x68], edi
mov ebp, dword [ecx + 0x7578]
mov dword [esp + 0x64], ebp
mov dword [esp + 0x5c], ecx
mov ecx, dword [ecx + 0x760c]
mov dword [esp + 0x60], ecx
test esi, esi
je 0x7b71ba
mov ecx, dword [esp + 0x5c]
mov ebp, dword [esp + 0xb8]
mov eax, dword [ecx + 0x74b0]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x74b4]
mov dword [esp + 0x70], eax
mov eax, dword [ecx + 0x74b8]
mov dword [esp + 0x6c], eax
mov dword [ecx + 0x750c], 1
mov eax, dword [ecx + 0x6834]
mov dword [esp + 0x58], eax
movsd xmm0, qword [ecx + 0x682c]
movsd qword [esp + 0x50], xmm0
test ebp, ebp
je 0x7b88dd
mov edi, dword [esp + 0xb4]
mov dword [esp + 0x30], edi
lea ebx, [edi + 4]
mov dword [esp + 0x34], ebx
cmp ebp, 4
mov dword [esp + 0x14], edx
jb 0x7b7206
lea ecx, [edi + ebp]
add ecx, 0xfffffffc
mov dword [esp + 0x2c], ecx
mov eax, dword [edi + ebp - 4]
mov dword [esp + 0x24], eax
cmp eax, 0x1000000
jb 0x7b88dd
cmp ebp, 0xffffff88
ja 0x7b88dd
mov dword [esp + 4], ebx
mov dword [esp + 0x1c], esi
add ebp, 0xfffffffc
mov ecx, eax
shr ecx, 0x18
bsr ebx, ecx
not ebx
add ebx, 9
jmp 0x7b7256
mov ebx, edx
mov eax, dword [esp + 0x5c]
cmp dword [eax + 0x7610], 2
jne 0x7b7cb2
mov edi, dword [esp + 0x60]
sub edi, ebp
mov ecx, dword [esp + 0x68]
sub ecx, ebx
mov eax, 0xffffffba
cmp edi, ecx
ja 0x7b88e9
test ebx, ebx
je 0x7b7c93
mov esi, edi
push esi
push ebp
push ebx
mov esi, edx
call fcn.007de190
mov edx, esi
add esp, 0xc
add ebx, edi
jmp 0x7b7c95
mov dword [esp + 0x2c], edi
movzx eax, byte [edi]
mov dword [esp + 0x24], eax
cmp ebp, 2
je 0x7b7224
cmp ebp, 3
jne 0x7b7231
movzx ecx, byte [edi + 2]
shl ecx, 0x10
or eax, ecx
movzx ecx, byte [edi + 1]
shl ecx, 8
add eax, ecx
mov dword [esp + 0x24], eax
movzx ecx, byte [edi + ebp - 1]
test ecx, ecx
je 0x7b88dd
mov dword [esp + 4], ebx
mov dword [esp + 0x1c], esi
bsr ebx, ecx
xor ebx, 0x1f
shl ebp, 3
sub ebx, ebp
add ebx, 9
xor ebp, ebp
mov ecx, dword [esp + 0x5c]
mov edx, dword [ecx]
mov edi, dword [edx + 4]
add ebx, edi
mov ecx, ebx
neg cl
mov esi, eax
shr esi, cl
and esi, dword [edi*4 + 0xfb3308]
mov dword [esp + 0x38], esi
cmp ebx, 0x21
jae 0x7b890d
mov ecx, dword [esp + 0xb4]
lea edi, [ecx + ebp]
cmp ebp, 4
jge 0x7b72b4
test ebp, ebp
je 0x7b7cef
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 + 0x2c], edi
shl eax, 3
sub ebx, eax
jmp 0x7b72c2
mov eax, ebx
shr eax, 3
sub edi, eax
mov dword [esp + 0x2c], edi
and ebx, 7
mov dword [esp + 0x28], ebx
mov eax, dword [edi]
mov dword [esp + 0x24], eax
add edx, 8
mov dword [esp + 0x3c], edx
mov ecx, dword [esp + 0x5c]
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 + 0xfb3308]
mov dword [esp + 0x40], ebp
cmp ebx, 0x21
jae 0x7b891f
cmp edi, dword [esp + 4]
jae 0x7b7329
mov ecx, edi
mov ebp, dword [esp + 0xb4]
sub ecx, ebp
je 0x7b733d
mov eax, ebx
shr eax, 3
mov esi, edi
sub esi, eax
cmp esi, ebp
cmovb eax, ecx
sub edi, eax
mov dword [esp + 0x2c], edi
shl eax, 3
sub ebx, eax
jmp 0x7b7337
mov eax, ebx
shr eax, 3
sub edi, eax
mov dword [esp + 0x2c], edi
and ebx, 7
mov eax, dword [edi]
mov dword [esp + 0x24], eax
add edx, 8
mov dword [esp + 0x44], edx
mov ecx, dword [esp + 0x5c]
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 + 0xfb3308]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x48], eax
cmp ebx, 0x21
jae 0x7b8931
cmp edi, dword [esp + 4]
jae 0x7b739c
mov ecx, edi
mov ebp, dword [esp + 0xb4]
sub ecx, ebp
je 0x7b73b4
mov eax, ebx
shr eax, 3
mov esi, edi
sub esi, eax
cmp esi, ebp
cmovb eax, ecx
sub edi, eax
mov dword [esp + 0x2c], edi
shl eax, 3
sub ebx, eax
jmp 0x7b73aa
mov eax, ebx
shr eax, 3
sub edi, eax
mov dword [esp + 0x2c], edi
and ebx, 7
mov dword [esp + 0x28], ebx
mov eax, dword [edi]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x5c]
add eax, 0x682c
mov dword [esp + 0x98], eax
add edx, 8
mov dword [esp + 0x4c], edx
mov eax, dword [esp + 0x20]
lea ecx, [eax + 0x10]
mov dword [esp + 0x90], ecx
add eax, 0x18
mov dword [esp + 0x8c], eax
mov ebx, dword [esp + 0x14]
nop word [eax + eax]
mov dword [esp], ebx
mov edx, dword [esp + 0x38]
mov edi, dword [esp + 0x3c]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov esi, dword [edi + edx*8 + 4]
movzx ebx, byte [edi + edx*8 + 2]
mov dword [esp + 8], ebx
movzx ebx, word [edi + edx*8]
mov dword [esp + 0x84], ebx
movzx edx, byte [edi + edx*8 + 3]
mov dword [esp + 0x78], edx
mov edx, dword [eax + ecx*8 + 4]
mov dword [esp + 0x10], edx
movzx ebx, byte [eax + ecx*8 + 2]
movzx edx, word [eax + ecx*8]
mov dword [esp + 0x80], edx
movzx eax, byte [eax + ecx*8 + 3]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov ebp, dword [eax + ecx*8 + 4]
movzx edx, byte [eax + ecx*8 + 2]
movzx edi, word [eax + ecx*8]
mov dword [esp + 0xc], edi
movzx eax, byte [eax + ecx*8 + 3]
mov dword [esp + 0x88], eax
cmp edx, 2
mov dword [esp + 4], esi
jb 0x7b7500
cmp dword [esp + 0xc0], 0
je 0x7b7530
cmp dl, 0x19
jb 0x7b7530
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x18], edi
mov ecx, eax
shl edi, cl
mov cl, 5
sub cl, dl
shr edi, cl
lea ecx, [edx + eax]
add ecx, 0xfffffffb
cmp ecx, 0x21
jae 0x7b7c0c
mov esi, dword [esp + 0x2c]
cmp esi, dword [esp + 0x34]
jae 0x7b75a2
mov eax, dword [esp + 0x30]
mov edx, esi
sub edx, eax
je 0x7b769e
mov dword [esp + 0x18], ebp
mov ebp, ecx
shr ebp, 3
mov dword [esp + 0x74], eax
mov eax, esi
sub eax, ebp
cmp eax, dword [esp + 0x74]
cmovb ebp, edx
sub esi, ebp
mov dword [esp + 0x2c], esi
shl ebp, 3
sub ecx, ebp
mov ebp, dword [esp + 0x18]
jmp 0x7b75b0
xor eax, eax
test esi, esi
sete al
test edx, edx
jne 0x7b76a7
xor ecx, ecx
test esi, esi
setne cl
mov esi, dword [esp + eax*4 + 0x50]
lea eax, [esp + 0x50]
lea ecx, [eax + ecx*4]
jmp 0x7b75d9
mov esi, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov ecx, eax
shl esi, cl
mov ecx, edx
neg cl
shr esi, cl
add eax, edx
mov dword [esp + 0x28], eax
add esi, ebp
cmp eax, 0x21
jae 0x7b7bdd
mov ecx, dword [esp + 0x2c]
cmp ecx, dword [esp + 0x34]
jae 0x7b7588
mov edi, dword [esp + 0x30]
mov edx, ecx
sub edx, edi
je 0x7b75cd
mov dword [esp + 0x18], edi
mov edi, eax
shr edi, 3
mov ebp, ecx
sub ebp, edi
cmp ebp, dword [esp + 0x18]
cmovb edi, edx
sub ecx, edi
mov dword [esp + 0x2c], ecx
shl edi, 3
sub eax, edi
jmp 0x7b7596
mov edx, eax
shr edx, 3
sub ecx, edx
mov dword [esp + 0x2c], ecx
and eax, 7
mov dword [esp + 0x28], eax
mov eax, dword [ecx]
mov dword [esp + 0x24], eax
jmp 0x7b75cd
mov edx, ecx
shr edx, 3
sub esi, edx
mov dword [esp + 0x2c], esi
and ecx, 7
mov dword [esp + 0x28], ecx
mov esi, dword [esi]
mov dword [esp + 0x24], esi
shl edi, 5
add edi, ebp
shl esi, cl
shr esi, 0x1b
add esi, edi
add ecx, 5
mov dword [esp + 0x28], ecx
mov eax, dword [esp + 0x54]
mov dword [esp + 0x58], eax
lea ecx, [esp + 0x50]
mov eax, dword [ecx]
mov dword [esp + 0x54], eax
mov dword [esp + 0x18], esi
mov dword [esp + 0x50], esi
test ebx, ebx
je 0x7b7607
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov ecx, eax
shl edx, cl
mov ecx, ebx
neg cl
shr edx, cl
add eax, ebx
mov dword [esp + 0x28], eax
add dword [esp + 0x10], edx
mov esi, dword [esp + 4]
add ebx, dword [esp + 8]
cmp ebx, 0x14
mov ebx, dword [esp]
jb 0x7b7678
mov eax, dword [esp + 0x28]
cmp eax, 0x21
jae 0x7b76dc
mov ecx, dword [esp + 0x2c]
cmp ecx, dword [esp + 0x34]
jae 0x7b7660
mov edi, dword [esp + 0x30]
mov edx, ecx
sub edx, edi
je 0x7b7678
mov ebp, esi
mov esi, eax
shr esi, 3
mov ebx, ecx
sub ebx, esi
cmp ebx, edi
mov ebx, dword [esp]
cmovb esi, edx
sub ecx, esi
mov dword [esp + 0x2c], ecx
shl esi, 3
sub eax, esi
mov esi, ebp
jmp 0x7b766e
mov edx, eax
shr edx, 3
sub ecx, edx
mov dword [esp + 0x2c], ecx
and eax, 7
mov dword [esp + 0x28], eax
mov eax, dword [ecx]
mov dword [esp + 0x24], eax
mov ebp, ebx
mov ebx, dword [esp + 8]
test ebx, ebx
je 0x7b76f0
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov ecx, eax
shl edx, cl
mov ecx, ebx
neg cl
shr edx, cl
add eax, ebx
mov dword [esp + 0x28], eax
add esi, edx
jmp 0x7b76f4
mov esi, dword [esp + 0x18]
jmp 0x7b75ba
add ebp, eax
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
shl eax, cl
shr eax, 0x1f
inc ecx
mov dword [esp + 0x28], ecx
add eax, ebp
cmp eax, 3
jne 0x7b7bea
mov eax, dword [esp + 0x50]
dec eax
cmp eax, 1
mov esi, 0
sbb esi, esi
or esi, eax
jmp 0x7b75cd
mov dword [esp + 0x2c], 0xfb3388
mov ebp, ebx
mov ebx, dword [esp + 8]
test ebx, ebx
jne 0x7b7682
nop
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x1c]
cmp eax, 0x21
mov dword [esp + 4], esi
mov ebx, ebp
jae 0x7b7a34
mov edx, dword [esp + 0x2c]
cmp edx, dword [esp + 0x34]
jae 0x7b7770
mov esi, dword [esp + 0x30]
mov ecx, edx
sub ecx, esi
je 0x7b7745
mov edi, eax
shr edi, 3
mov ebx, edx
sub ebx, edi
cmp ebx, esi
mov ebx, dword [esp]
cmovb edi, ecx
sub edx, edi
mov dword [esp + 0x2c], edx
shl edi, 3
sub eax, edi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x28], eax
mov ecx, dword [edx]
mov dword [esp + 0x24], ecx
mov esi, dword [esp + 4]
cmp edi, 1
jne 0x7b778d
mov eax, dword [esp + 0x64]
lea ecx, [eax + esi]
mov edx, dword [esp + 0x5c]
mov edx, dword [edx + 0x760c]
cmp ecx, edx
jbe 0x7b78c1
jmp 0x7b7d06
mov ecx, eax
shr ecx, 3
sub edx, ecx
mov dword [esp + 0x2c], edx
and eax, 7
mov dword [esp + 0x28], eax
mov ecx, dword [edx]
mov dword [esp + 0x24], ecx
cmp edi, 1
je 0x7b774e
mov ebx, dword [esp + 0x24]
mov esi, dword [esp + 0x78]
add eax, esi
mov ecx, eax
neg cl
mov edi, ebx
shr edi, cl
and edi, dword [esi*4 + 0xfb3308]
mov ebp, dword [esp + 0x7c]
add eax, ebp
mov ecx, eax
neg cl
mov esi, ebx
shr esi, cl
add edi, dword [esp + 0x84]
and esi, dword [ebp*4 + 0xfb3308]
mov dword [esp + 0x38], edi
add esi, dword [esp + 0x80]
mov dword [esp + 0x48], esi
cmp eax, 0x21
jae 0x7b7ace
cmp edx, dword [esp + 0x34]
jae 0x7b7810
mov esi, dword [esp + 0x30]
mov ecx, edx
sub ecx, esi
je 0x7b7828
mov edi, eax
shr edi, 3
mov ebx, edx
sub ebx, edi
cmp ebx, esi
cmovb edi, ecx
sub edx, edi
mov dword [esp + 0x2c], edx
shl edi, 3
sub eax, edi
jmp 0x7b781e
mov ecx, eax
shr ecx, 3
sub edx, ecx
mov dword [esp + 0x2c], edx
and eax, 7
mov dword [esp + 0x28], eax
mov ebx, dword [edx]
mov dword [esp + 0x24], ebx
mov esi, dword [esp + 4]
mov edi, dword [esp + 0x88]
add eax, edi
mov ecx, eax
neg cl
shr ebx, cl
and ebx, dword [edi*4 + 0xfb3308]
add ebx, dword [esp + 0xc]
mov dword [esp + 0x28], eax
mov dword [esp + 0x40], ebx
cmp eax, 0x21
jae 0x7b7ae0
cmp edx, dword [esp + 0x34]
mov ebx, dword [esp]
jae 0x7b7890
mov edi, dword [esp + 0x30]
mov ecx, edx
sub ecx, edi
je 0x7b78a8
mov esi, eax
shr esi, 3
mov ebx, edx
sub ebx, esi
cmp ebx, edi
mov ebx, dword [esp]
cmovb esi, ecx
sub edx, esi
mov dword [esp + 0x2c], edx
shl esi, 3
sub eax, esi
mov esi, dword [esp + 4]
jmp 0x7b789e
mov ecx, eax
shr ecx, 3
sub edx, ecx
mov dword [esp + 0x2c], edx
and eax, 7
mov dword [esp + 0x28], eax
mov eax, dword [edx]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x64]
lea ecx, [eax + esi]
mov edx, dword [esp + 0x5c]
mov edx, dword [edx + 0x760c]
cmp ecx, edx
ja 0x7b7cfb
lea edi, [ecx - 0x20]
cmp ecx, dword [esp + 0x60]
ja 0x7b79f5
mov edx, dword [esp + 0x10]
lea ebp, [esi + edx]
lea edx, [ebx + ebp]
cmp edx, edi
ja 0x7b79f5
mov edx, dword [esp + 0x68]
sub edx, ebx
lea esi, [ebp + 0x20]
cmp edx, esi
mov esi, dword [esp + 4]
jb 0x7b79f5
mov dword [esp + 8], ebp
mov edx, ebx
add ebx, esi
movups xmm0, xmmword [eax]
movups xmmword [edx], xmm0
cmp esi, 0x11
jae 0x7b7a4f
mov esi, ebx
mov ebp, dword [esp + 0x18]
sub esi, ebp
mov dword [esp + 0x64], ecx
mov ecx, ebx
mov edx, dword [esp + 0x20]
sub ecx, edx
cmp ecx, ebp
jae 0x7b7970
mov eax, ebx
sub eax, dword [esp + 0x70]
cmp eax, ebp
jb 0x7b88dd
mov dword [esp + 4], ecx
sub esi, edx
mov edi, dword [esp + 0x6c]
lea eax, [edi + esi]
mov ebp, dword [esp + 0x10]
lea ecx, [eax + ebp]
cmp ecx, edi
jbe 0x7b79c0
mov ecx, esi
neg ecx
push ecx
push eax
push ebx
call fcn.007de190
add esp, 0xc
sub ebx, esi
mov edi, esi
add edi, ebp
mov esi, dword [esp + 0x20]
mov ebp, dword [esp + 0x18]
mov ecx, dword [esp + 4]
jmp 0x7b7974
mov edi, dword [esp + 0x10]
cmp ebp, 0x10
jb 0x7b7a93
movups xmm0, xmmword [esi]
movups xmmword [ebx], xmm0
cmp edi, 0x11
jl 0x7b79cb
add edi, ebx
mov eax, 0x10
nop
movups xmm0, xmmword [esi + eax]
movups xmmword [ebx + eax], xmm0
movups xmm0, xmmword [esi + eax + 0x10]
movups xmmword [ebx + eax + 0x10], xmm0
lea ecx, [ebx + eax]
add ecx, 0x20
add eax, 0x20
cmp ecx, edi
jb 0x7b7990
jmp 0x7b79cb
push ebp
push eax
push ebx
call fcn.007de190
add esp, 0xc
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov ebx, dword [esp]
mov eax, dword [esp + 8]
cmp eax, 0xffffff88
ja 0x7b7c8a
add ebx, eax
dec edi
mov dword [esp + 0x1c], edi
jne 0x7b73f0
jmp 0x7b8051
mov ecx, ebx
mov edx, dword [esp + 0x68]
push dword [esp + 0x6c]
push dword [esp + 0x74]
push dword [esp + 0x28]
push dword [esp + 0x6c]
lea eax, [esp + 0x74]
push eax
push dword [esp + 0x2c]
push dword [esp + 0x28]
push esi
push edi
call fcn.007b9ff0
add esp, 0x24
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
cmp eax, 0xffffff88
jbe 0x7b79e3
jmp 0x7b7c8a
mov dword [esp + 0x2c], 0xfb3388
mov edx, 0xfb3388
cmp edi, 1
je 0x7b774e
jmp 0x7b778d
add esi, 0xfffffff0
movups xmm0, xmmword [eax + 0x10]
mov edx, dword [esp]
movups xmmword [edx + 0x10], xmm0
cmp esi, 0x11
jl 0x7b790c
mov edx, dword [esp]
add edx, 0x20
xor esi, esi
movups xmm0, xmmword [eax + esi + 0x20]
movups xmmword [edx + esi], xmm0
movups xmm0, xmmword [eax + esi + 0x30]
movups xmmword [edx + esi + 0x10], xmm0
lea edi, [edx + esi]
add edi, 0x20
add esi, 0x20
cmp edi, ebx
jb 0x7b7a6e
jmp 0x7b790c
cmp ebp, 7
mov dword [esp + 4], ecx
ja 0x7b7af0
movzx eax, byte [esi]
mov byte [ebx], al
movzx eax, byte [esi + 1]
mov byte [ebx + 1], al
movzx eax, byte [esi + 2]
mov byte [ebx + 2], al
movzx eax, byte [esi + 3]
mov byte [ebx + 3], al
mov eax, dword [ebp*4 + 0xfb338c]
mov ecx, dword [esi + eax]
add esi, eax
mov dword [ebx + 4], ecx
sub esi, dword [ebp*4 + 0xfb33ac]
jmp 0x7b7af8
mov dword [esp + 0x2c], 0xfb3388
mov edx, 0xfb3388
jmp 0x7b7828
mov dword [esp + 0x2c], 0xfb3388
mov ebx, dword [esp]
jmp 0x7b78a8
movsd xmm0, qword [esi]
movsd qword [ebx], xmm0
cmp edi, 9
jb 0x7b79cb
lea edx, [esi + 8]
lea ecx, [ebx + 8]
mov eax, ecx
sub eax, edx
mov dword [esp + 0x18], eax
lea eax, [ebx + edi]
mov dword [esp + 0xc], eax
cmp dword [esp + 0x18], 0xf
jg 0x7b7c1d
mov edi, dword [esp + 0x10]
add edi, dword [esp + 0x20]
mov eax, dword [esp + 4]
cmp ebp, eax
mov ebx, eax
cmovb ebx, ebp
cmova eax, ebp
add ebx, edi
add ebx, eax
sub ebx, ebp
mov edi, dword [esp + 0x90]
add edi, eax
cmp ebx, edi
cmovbe ebx, edi
mov dword [esp + 4], eax
mov edi, dword [esp + 0x20]
add edi, eax
sub ebx, edi
add ebx, 0xfffffff7
cmp ebx, 0x18
jb 0x7b7c5a
cmp dword [esp + 0x18], 0x20
jb 0x7b7c5a
shr ebx, 3
inc ebx
mov dword [esp + 0x10], ebx
and ebx, 0xfffffffc
lea ecx, [ecx + ebx*8]
lea edx, [edx + ebx*8]
mov edi, dword [esp + 0x8c]
mov eax, dword [esp]
add edi, eax
mov ebp, dword [esp + 4]
sub ebp, eax
add ebp, edi
xor edi, edi
movups xmm0, xmmword [esi + edi*8 + 8]
movups xmm1, xmmword [esi + edi*8 + 0x18]
movups xmmword [ebp + edi*8 - 0x10], xmm0
movups xmmword [ebp + edi*8], xmm1
add edi, 4
cmp ebx, edi
jne 0x7b7b95
cmp dword [esp + 0x10], ebx
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0xc]
jne 0x7b7c66
mov edx, esi
mov ebx, dword [esp]
mov eax, dword [esp + 8]
cmp eax, 0xffffff88
jbe 0x7b79e3
jmp 0x7b7c8a
mov dword [esp + 0x2c], 0xfb3388
jmp 0x7b75cd
mov ecx, dword [esp + eax*4 + 0x50]
cmp ecx, 1
mov esi, 0
sbb esi, esi
or esi, ecx
lea ecx, [esp + 0x50]
cmp eax, 1
jne 0x7b75cd
jmp 0x7b75d9
mov dword [esp + 0x2c], 0xfb3388
mov esi, dword [esp + 0x18]
jmp 0x7b75ba
movups xmm0, xmmword [edx]
movups xmmword [ecx], xmm0
cmp edi, 0x19
jl 0x7b79cb
add ebx, 0x18
xor ecx, ecx
mov eax, dword [esp + 0xc]
movups xmm0, xmmword [esi + ecx + 0x18]
movups xmmword [ebx + ecx], xmm0
movups xmm0, xmmword [esi + ecx + 0x28]
movups xmmword [ebx + ecx + 0x10], xmm0
lea edx, [ebx + ecx]
add edx, 0x20
add ecx, 0x20
cmp edx, eax
jb 0x7b7c35
jmp 0x7b79cb
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0xc]
mov ebx, dword [esp]
movsd xmm0, qword [edx]
movsd qword [ecx], xmm0
add ecx, 8
add edx, 8
cmp ecx, eax
jb 0x7b7c69
mov edx, esi
mov eax, dword [esp + 8]
cmp eax, 0xffffff88
jbe 0x7b79e3
mov dword [esp + 8], eax
jmp 0x7b88e5
xor ebx, ebx
mov eax, dword [esp + 0x5c]
lea ebp, [eax + 0x7614]
mov dword [eax + 0x7610], 0
add eax, 0x17614
mov dword [esp + 0x60], eax
mov edi, dword [esp + 0x60]
sub edi, ebp
mov ecx, dword [esp + 0x68]
sub ecx, ebx
mov eax, 0xffffffba
cmp edi, ecx
ja 0x7b88e9
test ebx, ebx
je 0x7b7ce6
mov esi, edi
push esi
push ebp
push ebx
mov esi, edx
call fcn.007de188
mov edx, esi
add esp, 0xc
add ebx, edi
mov eax, ebx
jmp 0x7b7ce8
xor eax, eax
sub eax, edx
jmp 0x7b88e9
mov edi, dword [esp + 0xb4]
jmp 0x7b72cc
cmp dword [esp + 0x1c], 0
jle 0x7b88dd
mov ebp, edx
sub ebp, eax
je 0x7b7d93
mov ecx, dword [esp + 0x68]
sub ecx, ebx
mov dword [esp + 8], 0xffffffba
cmp ebp, ecx
ja 0x7b88e5
mov edi, ebx
sub edi, eax
add ebx, ebp
cmp edi, 0xfffffff8
mov dword [esp + 0xc], ebx
mov dword [esp + 0x60], ebp
jg 0x7b7d9e
cmp ebp, 7
jle 0x7b7d9e
cmp edi, 0xffffffef
ja 0x7b7e32
lea edx, [ebx - 0x20]
mov edi, edx
mov ebp, dword [esp]
sub edi, ebp
jb 0x7b7e35
movups xmm0, xmmword [eax]
movups xmmword [ebp], xmm0
cmp edi, 0x11
jl 0x7b7d88
mov ecx, 0x10
movups xmm0, xmmword [eax + ecx]
movups xmmword [ebp + ecx], xmm0
movups xmm0, xmmword [eax + ecx + 0x10]
movups xmmword [ebp + ecx + 0x10], xmm0
lea esi, [ecx + ebp]
add esi, 0x20
add ecx, 0x20
cmp esi, edx
jb 0x7b7d68
add eax, edi
mov esi, dword [esp + 4]
jmp 0x7b7e37
mov ecx, ebx
mov edi, dword [esp + 0x14]
jmp 0x7b7eeb
test ebp, ebp
jle 0x7b7edf
mov ebx, dword [esp]
add edx, ebx
sub edx, eax
lea ecx, [ebx + 1]
cmp edx, ecx
cmovbe edx, ecx
sub edx, ebx
cmp edx, 8
jb 0x7b7ecf
cmp edi, 0x20
jb 0x7b7ecb
xor edi, edi
cmp edx, 0x20
jb 0x7b7e04
mov edi, edx
and edi, 0xffffffe0
xor ecx, ecx
movups xmm0, xmmword [eax + ecx]
movups xmm1, xmmword [eax + ecx + 0x10]
movups xmmword [ebx + ecx], xmm0
movups xmmword [ebx + ecx + 0x10], xmm1
add ecx, 0x20
cmp edi, ecx
jne 0x7b7dd7
cmp edx, edi
je 0x7b7edf
test dl, 0x18
je 0x7b88ff
mov ebx, dword [esp]
mov ecx, edx
and ecx, 0xfffffff8
mov esi, ebx
add ebx, ecx
lea ebp, [eax + ecx]
movsd xmm0, qword [eax + edi]
movsd qword [esi + edi], xmm0
add edi, 8
cmp ecx, edi
jne 0x7b7e10
cmp edx, ecx
mov esi, dword [esp + 4]
jne 0x7b7ed1
jmp 0x7b7edf
mov ebp, dword [esp]
mov edx, ebp
add ebp, dword [esp + 0x60]
sub ebp, edx
mov dword [esp], ebp
cmp ebp, 8
jb 0x7b7eb6
mov ecx, edx
sub ecx, eax
cmp ecx, 0x20
jb 0x7b7eb6
xor edi, edi
mov esi, dword [esp]
cmp esi, 0x20
jb 0x7b7e8f
mov edi, esi
and edi, 0xffffffe0
xor ecx, ecx
mov ebx, esi
movups xmm0, xmmword [eax + ecx]
movups xmm1, xmmword [eax + ecx + 0x10]
movups xmmword [edx + ecx], xmm0
movups xmmword [edx + ecx + 0x10], xmm1
add ecx, 0x20
cmp edi, ecx
jne 0x7b7e61
cmp ebx, edi
mov esi, dword [esp + 4]
je 0x7b7edf
test byte [esp], 0x18
je 0x7b88f4
mov esi, dword [esp]
mov ecx, esi
and ecx, 0xfffffff8
lea ebx, [edx + ecx]
lea ebp, [eax + ecx]
movsd xmm0, qword [eax + edi]
movsd qword [edx + edi], xmm0
add edi, 8
cmp ecx, edi
jne 0x7b7e9a
cmp dword [esp], ecx
mov esi, dword [esp + 4]
jne 0x7b7eba
jmp 0x7b7edf
mov ebx, edx
mov ebp, eax
add edx, dword [esp]
movzx eax, byte [ebp]
inc ebp
mov byte [ebx], al
inc ebx
cmp ebx, edx
jne 0x7b7ebd
jmp 0x7b7edf
mov ebp, eax
jmp 0x7b7ed1
mov ebp, eax
movzx eax, byte [ebp]
inc ebp
mov byte [ebx], al
inc ebx
cmp ebx, dword [esp + 0xc]
jb 0x7b7ed1
sub esi, dword [esp + 0x60]
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0xc]
mov edx, esi
mov ebx, dword [esp + 0x5c]
lea esi, [ebx + 0x7614]
mov dword [esp + 0x64], esi
lea eax, [ebx + 0x17614]
mov dword [esp + 0x60], eax
mov dword [ebx + 0x7610], 0
mov eax, dword [esp + 0x68]
add eax, 0xffffffe0
mov dword [esp + 0x94], eax
mov ebx, edx
cmp edx, 0x10000
mov dword [esp + 0xc], ecx
jg 0x7b893e
mov eax, dword [esp + 0x10]
lea ebp, [ebx + eax]
lea eax, [ecx + ebp]
cmp eax, dword [esp + 0x94]
ja 0x7b893e
mov eax, dword [esp + 0x68]
sub eax, ecx
lea edx, [ebp + 0x20]
cmp eax, edx
jb 0x7b893e
mov dword [esp + 8], ebp
mov edx, ebx
add ebx, ecx
mov eax, dword [esp + 0x5c]
add eax, edx
add eax, 0x7614
movups xmm0, xmmword [esi]
movups xmmword [ecx], xmm0
cmp edx, 0x11
jae 0x7b8971
mov esi, ebx
mov ecx, dword [esp + 0x18]
sub esi, ecx
mov dword [esp + 0x64], eax
mov eax, ebx
mov edx, dword [esp + 0x20]
sub eax, edx
cmp eax, ecx
jae 0x7b7fdb
mov dword [esp + 4], eax
mov eax, ebx
sub eax, dword [esp + 0x70]
cmp eax, ecx
jb 0x7b88dd
sub esi, edx
mov ebp, dword [esp + 0x6c]
lea eax, [esi + ebp]
mov ecx, dword [esp + 0x10]
add ecx, eax
cmp ecx, ebp
jbe 0x7b8025
mov ebp, edx
mov ecx, esi
neg ecx
push ecx
push eax
push ebx
call fcn.007de190
add esp, 0xc
sub ebx, esi
mov edi, esi
add edi, dword [esp + 0x10]
mov esi, ebp
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 4]
jmp 0x7b7fdf
mov edi, dword [esp + 0x10]
cmp ecx, 0x10
jb 0x7b89c8
movups xmm0, xmmword [esi]
movups xmmword [ebx], xmm0
cmp edi, 0x11
jl 0x7b801f
add edi, ebx
mov eax, 0x10
nop word [eax + eax]
movups xmm0, xmmword [esi + eax]
movups xmmword [ebx + eax], xmm0
movups xmm0, xmmword [esi + eax + 0x10]
movups xmmword [ebx + eax + 0x10], xmm0
lea ecx, [ebx + eax]
add ecx, 0x20
add eax, 0x20
cmp ecx, edi
jb 0x7b8000
mov edx, dword [esp + 0x14]
jmp 0x7b8035
push dword [esp + 0x10]
push eax
push ebx
call fcn.007de190
add esp, 0xc
mov edx, edi
mov eax, dword [esp + 8]
cmp eax, 0xffffff88
mov ecx, dword [esp + 0x1c]
mov ebx, dword [esp + 0xc]
ja 0x7b88e5
add ebx, eax
cmp ecx, 1
jne 0x7b80a5
mov eax, dword [esp + 0x2c]
cmp eax, dword [esp + 0x30]
jne 0x7b88dd
cmp dword [esp + 0x28], 0x20
mov dword [esp + 8], 0xffffffec
jne 0x7b88e5
lea esi, [esp + 0x50]
mov eax, dword [esi + 8]
mov ecx, dword [esp + 0x98]
mov dword [ecx + 8], eax
movsd xmm0, qword [esi]
movsd qword [ecx], xmm0
mov ebp, dword [esp + 0x64]
mov eax, dword [esp + 0x5c]
cmp dword [eax + 0x7610], 2
je 0x7b71cd
jmp 0x7b7cb2
dec ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x1c], ecx
mov edx, dword [esp + 0x38]
mov edi, dword [esp + 0x3c]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov esi, dword [edi + edx*8 + 4]
movzx ebx, byte [edi + edx*8 + 2]
mov dword [esp + 8], ebx
movzx ebx, word [edi + edx*8]
mov dword [esp + 0x80], ebx
movzx edx, byte [edi + edx*8 + 3]
mov dword [esp + 0x74], edx
mov ebp, dword [eax + ecx*8 + 4]
movzx edx, byte [eax + ecx*8 + 2]
movzx edi, word [eax + ecx*8]
mov dword [esp + 0x7c], edi
movzx eax, byte [eax + ecx*8 + 3]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov edi, dword [eax + ecx*8 + 4]
mov dword [esp + 0x18], edi
movzx ebx, byte [eax + ecx*8 + 2]
movzx edi, word [eax + ecx*8]
mov dword [esp + 0x88], edi
movzx eax, byte [eax + ecx*8 + 3]
mov dword [esp + 0x84], eax
cmp ebx, 2
mov dword [esp + 4], esi
jb 0x7b81b3
cmp dword [esp + 0xc0], 0
je 0x7b81dd
cmp bl, 0x19
jb 0x7b81dd
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov dword [esp], edi
mov ecx, eax
shl edi, cl
mov cl, 5
sub cl, bl
shr edi, cl
lea ecx, [ebx + eax]
add ecx, 0xfffffffb
cmp ecx, 0x21
jae 0x7b8894
mov esi, dword [esp + 0x2c]
cmp esi, dword [esp + 0x34]
jae 0x7b8256
mov eax, dword [esp + 0x30]
mov ebx, esi
sub ebx, eax
je 0x7b85f3
mov dword [esp + 0x10], ebp
mov ebp, ecx
shr ebp, 3
mov dword [esp], eax
mov eax, esi
sub eax, ebp
cmp eax, dword [esp]
cmovb ebp, ebx
sub esi, ebp
mov dword [esp + 0x2c], esi
shl ebp, 3
sub ecx, ebp
mov ebp, dword [esp + 0x10]
jmp 0x7b8264
xor eax, eax
test esi, esi
sete al
test ebx, ebx
jne 0x7b86c4
xor ecx, ecx
test esi, esi
setne cl
mov esi, dword [esp + eax*4 + 0x50]
lea eax, [esp + 0x50]
lea ecx, [eax + ecx*4]
mov ebx, dword [esp + 0xc]
jmp 0x7b8299
mov esi, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov ecx, eax
shl esi, cl
mov ecx, ebx
neg cl
shr esi, cl
add eax, ebx
mov dword [esp + 0x28], eax
add esi, dword [esp + 0x18]
mov dword [esp], esi
cmp eax, 0x21
jae 0x7b8855
mov ecx, dword [esp + 0x2c]
cmp ecx, dword [esp + 0x34]
jae 0x7b823c
mov ebx, dword [esp + 0x30]
mov edi, ecx
sub edi, ebx
je 0x7b8286
mov esi, eax
shr esi, 3
mov dword [esp + 0x10], ebp
mov ebp, ecx
sub ebp, esi
cmp ebp, ebx
mov ebp, dword [esp + 0x10]
cmovb esi, edi
sub ecx, esi
mov dword [esp + 0x2c], ecx
shl esi, 3
sub eax, esi
jmp 0x7b824a
mov esi, eax
shr esi, 3
sub ecx, esi
mov dword [esp + 0x2c], ecx
and eax, 7
mov dword [esp + 0x28], eax
mov eax, dword [ecx]
mov dword [esp + 0x24], eax
jmp 0x7b8286
mov ebx, ecx
shr ebx, 3
sub esi, ebx
mov dword [esp + 0x2c], esi
and ecx, 7
mov dword [esp + 0x28], ecx
mov eax, dword [esi]
mov dword [esp + 0x24], eax
shl edi, 5
add edi, dword [esp + 0x18]
shl eax, cl
shr eax, 0x1b
add eax, edi
mov dword [esp], eax
add ecx, 5
mov dword [esp + 0x28], ecx
mov ebx, dword [esp + 0xc]
mov eax, dword [esp + 0x54]
mov dword [esp + 0x58], eax
lea ecx, [esp + 0x50]
mov esi, dword [esp]
mov eax, dword [ecx]
mov dword [esp + 0x54], eax
mov dword [esp], esi
mov dword [esp + 0x50], esi
test edx, edx
je 0x7b82c4
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov ecx, eax
shl edi, cl
mov ecx, edx
neg cl
shr edi, cl
add eax, edx
mov dword [esp + 0x28], eax
add ebp, edi
add edx, dword [esp + 8]
cmp edx, 0x14
jb 0x7b8325
mov eax, dword [esp + 0x28]
cmp eax, 0x21
jae 0x7b8701
mov ecx, dword [esp + 0x2c]
cmp ecx, dword [esp + 0x34]
jae 0x7b830d
mov edi, dword [esp + 0x30]
mov edx, ecx
sub edx, edi
je 0x7b8325
mov esi, eax
shr esi, 3
mov ebx, ecx
sub ebx, esi
cmp ebx, edi
mov ebx, dword [esp + 0xc]
cmovb esi, edx
sub ecx, esi
mov dword [esp + 0x2c], ecx
shl esi, 3
sub eax, esi
jmp 0x7b831b
mov edx, eax
shr edx, 3
sub ecx, edx
mov dword [esp + 0x2c], ecx
and eax, 7
mov dword [esp + 0x28], eax
mov eax, dword [ecx]
mov dword [esp + 0x24], eax
mov dword [esp + 0x10], ebp
mov eax, dword [esp + 8]
test eax, eax
je 0x7b8719
mov edx, dword [esp + 0x24]
mov esi, eax
mov eax, dword [esp + 0x28]
mov ecx, eax
shl edx, cl
mov ecx, esi
neg cl
shr edx, cl
add eax, esi
mov dword [esp + 0x28], eax
mov ebp, dword [esp + 4]
add ebp, edx
cmp eax, 0x21
mov dword [esp + 4], ebp
jae 0x7b872e
mov edx, dword [esp + 0x2c]
cmp edx, dword [esp + 0x34]
jae 0x7b8395
mov edi, dword [esp + 0x30]
mov ecx, edx
sub ecx, edi
je 0x7b83ad
mov esi, eax
shr esi, 3
mov ebx, edx
sub ebx, esi
cmp ebx, edi
mov ebx, dword [esp + 0xc]
cmovb esi, ecx
sub edx, esi
mov dword [esp + 0x2c], edx
shl esi, 3
sub eax, esi
jmp 0x7b83a3
mov ecx, eax
shr ecx, 3
sub edx, ecx
mov dword [esp + 0x2c], edx
and eax, 7
mov dword [esp + 0x28], eax
mov ecx, dword [edx]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x1c]
cmp ecx, 1
je 0x7b84c0
mov ebx, dword [esp + 0x24]
mov esi, dword [esp + 0x74]
add eax, esi
mov ecx, eax
neg cl
mov edi, ebx
shr edi, cl
and edi, dword [esi*4 + 0xfb3308]
mov ebp, dword [esp + 0x78]
add eax, ebp
mov ecx, eax
neg cl
mov esi, ebx
shr esi, cl
add edi, dword [esp + 0x80]
and esi, dword [ebp*4 + 0xfb3308]
mov dword [esp + 0x38], edi
add esi, dword [esp + 0x7c]
mov dword [esp + 0x48], esi
cmp eax, 0x21
jae 0x7b874d
cmp edx, dword [esp + 0x34]
jae 0x7b842f
mov edi, dword [esp + 0x30]
mov ecx, edx
sub ecx, edi
je 0x7b8447
mov esi, eax
shr esi, 3
mov ebx, edx
sub ebx, esi
cmp ebx, edi
cmovb esi, ecx
sub edx, esi
mov dword [esp + 0x2c], edx
shl esi, 3
sub eax, esi
jmp 0x7b843d
mov ecx, eax
shr ecx, 3
sub edx, ecx
mov dword [esp + 0x2c], edx
and eax, 7
mov dword [esp + 0x28], eax
mov ebx, dword [edx]
mov dword [esp + 0x24], ebx
mov esi, dword [esp + 0x84]
add eax, esi
mov ecx, eax
neg cl
shr ebx, cl
and ebx, dword [esi*4 + 0xfb3308]
add ebx, dword [esp + 0x88]
mov dword [esp + 0x28], eax
mov dword [esp + 0x40], ebx
cmp eax, 0x21
jae 0x7b875f
cmp edx, dword [esp + 0x34]
mov ebx, dword [esp + 0xc]
jae 0x7b84a8
mov edi, dword [esp + 0x30]
mov ecx, edx
sub ecx, edi
je 0x7b84c0
mov esi, eax
shr esi, 3
mov ebx, edx
sub ebx, esi
cmp ebx, edi
mov ebx, dword [esp + 0xc]
cmovb esi, ecx
sub edx, esi
mov dword [esp + 0x2c], edx
shl esi, 3
sub eax, esi
jmp 0x7b84b6
mov ecx, eax
shr ecx, 3
sub edx, ecx
mov dword [esp + 0x2c], edx
and eax, 7
mov dword [esp + 0x28], eax
mov eax, dword [edx]
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x64]
mov ebp, dword [esp + 4]
lea eax, [ecx + ebp]
cmp eax, dword [esp + 0x60]
ja 0x7b85fb
mov edx, dword [esp + 0x10]
lea esi, [edx + ebp]
lea edx, [ebx + esi]
cmp edx, dword [esp + 0x94]
ja 0x7b85fb
mov edx, dword [esp + 0x68]
sub edx, ebx
mov dword [esp + 8], esi
mov esi, dword [esp + 8]
add esi, 0x20
cmp edx, esi
jb 0x7b85fb
mov edx, ebx
add ebx, ebp
movups xmm0, xmmword [ecx]
movups xmmword [edx], xmm0
cmp ebp, 0x11
jae 0x7b8639
mov esi, ebx
mov ecx, dword [esp]
sub esi, ecx
mov dword [esp + 0x64], eax
mov eax, ebx
mov edx, dword [esp + 0x20]
sub eax, edx
cmp eax, ecx
jae 0x7b8577
mov dword [esp + 4], eax
mov eax, ebx
sub eax, dword [esp + 0x70]
cmp eax, ecx
jb 0x7b88dd
sub esi, edx
mov edi, dword [esp + 0x6c]
lea eax, [edi + esi]
mov ebp, dword [esp + 0x10]
lea ecx, [eax + ebp]
cmp ecx, edi
jbe 0x7b85c1
mov ecx, esi
neg ecx
push ecx
push eax
push ebx
call fcn.007de190
add esp, 0xc
sub ebx, esi
mov edi, esi
add edi, ebp
mov esi, dword [esp + 0x20]
mov ecx, dword [esp]
mov eax, dword [esp + 4]
jmp 0x7b857b
mov edi, dword [esp + 0x10]
cmp ecx, 0x10
jb 0x7b867f
movups xmm0, xmmword [esi]
movups xmmword [ebx], xmm0
cmp edi, 0x11
jl 0x7b85cc
add edi, ebx
mov eax, 0x10
nop word cs:[eax + eax]
movups xmm0, xmmword [esi + eax]
movups xmmword [ebx + eax], xmm0
movups xmm0, xmmword [esi + eax + 0x10]
movups xmmword [ebx + eax + 0x10], xmm0
lea ecx, [ebx + eax]
add ecx, 0x20
add eax, 0x20
cmp ecx, edi
jb 0x7b85a0
jmp 0x7b85cc
push ebp
push eax
push ebx
call fcn.007de190
add esp, 0xc
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0xc]
mov eax, dword [esp + 8]
cmp eax, 0xffffff88
mov ecx, dword [esp + 0x1c]
ja 0x7b7c8a
add ebx, eax
dec ecx
jne 0x7b80a6
jmp 0x7b8051
mov eax, dword [esp]
jmp 0x7b826e
mov ecx, ebx
mov edx, dword [esp + 0x68]
push dword [esp + 0x6c]
push dword [esp + 0x74]
push dword [esp + 0x28]
push dword [esp + 0x6c]
lea eax, [esp + 0x74]
push eax
push dword [esp + 0x14]
push dword [esp + 0x28]
push ebp
call fcn.007b98d0
add esp, 0x20
mov edx, dword [esp + 0x14]
cmp eax, 0xffffff88
mov ecx, dword [esp + 0x1c]
jbe 0x7b85e5
jmp 0x7b7c8a
add ebp, 0xfffffff0
movups xmm0, xmmword [ecx + 0x10]
mov edx, dword [esp + 0xc]
movups xmmword [edx + 0x10], xmm0
cmp ebp, 0x11
jl 0x7b8518
mov edx, dword [esp + 0xc]
add edx, 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 0x7b865a
jmp 0x7b8518
mov dword [esp + 4], eax
cmp ecx, 7
ja 0x7b8770
movzx eax, byte [esi]
mov byte [ebx], al
movzx eax, byte [esi + 1]
mov byte [ebx + 1], al
movzx eax, byte [esi + 2]
mov byte [ebx + 2], al
movzx eax, byte [esi + 3]
mov byte [ebx + 3], al
mov edx, dword [esp]
mov eax, dword [edx*4 + 0xfb338c]
mov ecx, dword [esi + eax]
add esi, eax
mov dword [ebx + 4], ecx
sub esi, dword [edx*4 + 0xfb33ac]
jmp 0x7b8778
mov esi, dword [esp + 0x18]
add esi, eax
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
shl eax, cl
shr eax, 0x1f
inc ecx
mov dword [esp + 0x28], ecx
add eax, esi
cmp eax, 3
jne 0x7b8862
mov eax, dword [esp + 0x50]
dec eax
cmp eax, 1
mov esi, 0
sbb esi, esi
or esi, eax
mov ebx, dword [esp + 0xc]
jmp 0x7b8883
mov dword [esp + 0x2c], 0xfb3388
mov dword [esp + 0x10], ebp
mov eax, dword [esp + 8]
test eax, eax
jne 0x7b8335
mov eax, dword [esp + 0x28]
mov ebp, dword [esp + 4]
cmp eax, 0x21
mov dword [esp + 4], ebp
jb 0x7b8362
mov dword [esp + 0x2c], 0xfb3388
mov edx, 0xfb3388
mov ecx, dword [esp + 0x1c]
cmp ecx, 1
jne 0x7b83ba
jmp 0x7b84c0
mov dword [esp + 0x2c], 0xfb3388
mov edx, 0xfb3388
jmp 0x7b8447
mov dword [esp + 0x2c], 0xfb3388
mov ebx, dword [esp + 0xc]
jmp 0x7b84c0
movsd xmm0, qword [esi]
movsd qword [ebx], xmm0
cmp edi, 9
jb 0x7b85cc
lea edx, [esi + 8]
lea ecx, [ebx + 8]
mov ebp, ecx
sub ebp, edx
lea eax, [ebx + edi]
mov dword [esp + 0x18], ebp
cmp ebp, 0xf
jg 0x7b88a4
mov edi, dword [esp + 0x10]
add edi, dword [esp + 0x20]
mov dword [esp + 0x10], edi
mov edi, dword [esp]
mov ebx, dword [esp + 4]
cmp edi, ebx
mov ebp, ebx
cmovb ebp, edi
cmova ebx, edi
add ebp, dword [esp + 0x10]
add ebp, ebx
sub ebp, edi
mov edi, dword [esp + 0x90]
add edi, ebx
cmp ebp, edi
cmovbe ebp, edi
mov dword [esp + 4], ebx
mov edi, dword [esp + 0x20]
add edi, ebx
sub ebp, edi
add ebp, 0xfffffff7
cmp ebp, 0x18
jb 0x7b883e
cmp dword [esp + 0x18], 0x20
jb 0x7b883e
mov ebx, ebp
shr ebx, 3
inc ebx
mov dword [esp], ebx
and ebx, 0xfffffffc
lea ecx, [ecx + ebx*8]
lea edx, [edx + ebx*8]
mov edi, dword [esp + 0x8c]
mov ebp, dword [esp + 0xc]
add edi, ebp
mov dword [esp + 0x10], edi
mov edi, ebp
mov ebp, dword [esp + 4]
sub ebp, edi
add ebp, dword [esp + 0x10]
xor edi, edi
movups xmm0, xmmword [esi + edi*8 + 8]
movups xmm1, xmmword [esi + edi*8 + 0x18]
movups xmmword [ebp + edi*8 - 0x10], xmm0
movups xmmword [ebp + edi*8], xmm1
add edi, 4
cmp ebx, edi
jne 0x7b881a
cmp dword [esp], ebx
je 0x7b85cc
movsd xmm0, qword [edx]
movsd qword [ecx], xmm0
add ecx, 8
add edx, 8
cmp ecx, eax
jb 0x7b883e
jmp 0x7b85cc
mov dword [esp + 0x2c], 0xfb3388
jmp 0x7b8286
mov ecx, dword [esp + eax*4 + 0x50]
cmp ecx, 1
mov esi, 0
sbb esi, esi
or esi, ecx
lea ecx, [esp + 0x50]
cmp eax, 1
mov ebx, dword [esp + 0xc]
je 0x7b8299
mov eax, dword [esp + 0x54]
mov dword [esp + 0x58], eax
lea ecx, [esp + 0x50]
jmp 0x7b8299
mov dword [esp + 0x2c], 0xfb3388
mov eax, dword [esp]
jmp 0x7b826e
movups xmm0, xmmword [edx]
movups xmmword [ecx], xmm0
cmp edi, 0x19
jl 0x7b85cc
add ebx, 0x18
xor ecx, ecx
movups xmm0, xmmword [esi + ecx + 0x18]
movups xmmword [ebx + ecx], xmm0
movups xmm0, xmmword [esi + ecx + 0x28]
movups xmmword [ebx + ecx + 0x10], xmm0
lea edx, [ebx + ecx]
add edx, 0x20
add ecx, 0x20
cmp edx, eax
jb 0x7b88b8
jmp 0x7b85cc
mov dword [esp + 8], 0xffffffec
mov eax, dword [esp + 8]
add esp, 0x9c
pop esi
pop edi
pop ebx
pop ebp
ret
add eax, edi
add edi, edx
mov ebx, edi
jmp 0x7b7eb8
add eax, edi
mov ebx, dword [esp]
add ebx, edi
mov ebp, eax
jmp 0x7b7ed1
mov dword [esp + 0x2c], 0xfb3388
mov edi, 0xfb3388
jmp 0x7b72cc
mov dword [esp + 0x2c], 0xfb3388
mov edi, 0xfb3388
jmp 0x7b733d
mov dword [esp + 0x2c], 0xfb3388
jmp 0x7b73b4
mov edx, dword [esp + 0x68]
push dword [esp + 0x6c]
push dword [esp + 0x74]
push dword [esp + 0x28]
push dword [esp + 0x6c]
lea eax, [esp + 0x74]
push eax
push dword [esp + 0x2c]
push dword [esp + 0x28]
push ebx
call fcn.007b98d0
add esp, 0x20
mov dword [esp + 8], eax
jmp 0x7b8033
add edx, 0xfffffff0
mov ecx, dword [esp + 0x5c]
movups xmm0, xmmword [ecx + 0x7624]
mov ecx, dword [esp + 0xc]
movups xmmword [ecx + 0x10], xmm0
cmp edx, 0x11
jl 0x7b7f79
mov ecx, dword [esp + 0xc]
add ecx, 0x20
xor edx, edx
mov esi, dword [esp + 0x5c]
movups xmm0, xmmword [esi + edx + 0x7634]
movups xmmword [ecx + edx], xmm0
movups xmm0, xmmword [esi + edx + 0x7644]
movups xmmword [ecx + edx + 0x10], xmm0
lea esi, [ecx + edx]
add esi, 0x20
add edx, 0x20
cmp esi, ebx
jb 0x7b8999
jmp 0x7b7f79
mov dword [esp + 4], eax
cmp ecx, 7
ja 0x7b8a07
movzx eax, byte [esi]
mov byte [ebx], al
movzx eax, byte [esi + 1]
mov byte [ebx + 1], al
movzx eax, byte [esi + 2]
mov byte [ebx + 2], al
movzx eax, byte [esi + 3]
mov byte [ebx + 3], al
mov edx, dword [esp + 0x18]
mov eax, dword [edx*4 + 0xfb338c]
mov ecx, dword [esi + eax]
add esi, eax
mov dword [ebx + 4], ecx
sub esi, dword [edx*4 + 0xfb33ac]
jmp 0x7b8a0f
movsd xmm0, qword [esi]
movsd qword [ebx], xmm0
cmp edi, 9
jb 0x7b801f
lea edx, [esi + 8]
lea ecx, [ebx + 8]
mov ebp, ecx
sub ebp, edx
lea eax, [ebx + edi]
mov dword [esp], ebp
cmp ebp, 0xf
jg 0x7b8adb
mov edi, dword [esp + 0x10]
add edi, dword [esp + 0x20]
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0x18]
mov ebx, dword [esp + 4]
cmp edi, ebx
mov ebp, ebx
cmovb ebp, edi
cmova ebx, edi
add ebp, dword [esp + 0x10]
add ebp, ebx
sub ebp, edi
mov edi, dword [esp + 0x20]
add edi, ebx
add edi, 0x10
cmp ebp, edi
cmovbe ebp, edi
mov dword [esp + 4], ebx
mov edi, dword [esp + 0x20]
add edi, ebx
sub ebp, edi
add ebp, 0xfffffff7
cmp ebp, 0x18
jb 0x7b8ac4
cmp dword [esp], 0x20
jb 0x7b8ac4
mov ebx, ebp
shr ebx, 3
inc ebx
mov dword [esp], ebx
and ebx, 0xfffffffc
lea ecx, [ecx + ebx*8]
lea edx, [edx + ebx*8]
mov edi, dword [esp + 0x20]
mov ebp, dword [esp + 4]
add ebp, edi
add ebp, 0x18
xor edi, edi
movups xmm0, xmmword [esi + edi*8 + 8]
movups xmm1, xmmword [esi + edi*8 + 0x18]
movups xmmword [ebp + edi*8 - 0x10], xmm0
movups xmmword [ebp + edi*8], xmm1
add edi, 4
cmp ebx, edi
jne 0x7b8aa0
cmp dword [esp], ebx
je 0x7b801f
movsd xmm0, qword [edx]
movsd qword [ecx], xmm0
add ecx, 8
add edx, 8
cmp ecx, eax
jb 0x7b8ac4
jmp 0x7b801f
movups xmm0, xmmword [edx]
movups xmmword [ecx], xmm0
cmp edi, 0x19
jl 0x7b801f
add ebx, 0x18
xor ecx, ecx
movups xmm0, xmmword [esi + ecx + 0x18]
movups xmmword [ebx + ecx], xmm0
movups xmm0, xmmword [esi + ecx + 0x28]
movups xmmword [ebx + ecx + 0x10], xmm0
lea edx, [ebx + ecx]
add edx, 0x20
add ecx, 0x20
cmp edx, eax
jb 0x7b8aef
jmp 0x7b801f