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

Disassembly:
jmp 0x10080c70
sub esp, 0x140
mov eax, dword [0x1029e0c0]
xor eax, esp
mov dword [esp + 0x13c], eax
mov edx, dword [esp + 0x148]
mov ecx, dword [esp + 0x150]
push ebx
push ebp
mov ebp, dword [esp + 0x14c]
push esi
push edi
mov edi, dword [esp + 0x168]
cmp dword [ebp + 0x75fc], 1
mov dword [esp + 0x70], ebp
mov dword [esp + 0x8c], edx
jne 0x10080cc4
mov ebx, dword [ebp + 0x75f4]
mov dword [esp + 0x30], ebx
jmp 0x10080cd1
mov eax, dword [esp + 0x15c]
add eax, edx
mov dword [esp + 0x30], eax
mov eax, dword [ebp + 0x74b0]
mov esi, edx
mov edx, dword [ebp + 0x7578]
mov ebx, dword [ebp + 0x75f8]
mov dword [esp + 0x2c], eax
mov eax, dword [ebp + 0x74b4]
mov dword [esp + 0x68], eax
mov eax, dword [ebp + 0x74b8]
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], edx
mov dword [esp + 0x40], edx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x48], eax
test edi, edi
je 0x10082cd3
push dword [esp + 0x164]
mov eax, 8
mov dword [ebp + 0x750c], 1
cmp edi, eax
push ecx
cmovl eax, edi
mov dword [esp + 0x74], eax
mov eax, dword [ebp + 0x682c]
mov dword [esp + 0xe8], eax
mov eax, dword [ebp + 0x6830]
mov dword [esp + 0xec], eax
mov eax, dword [ebp + 0x6834]
mov dword [esp + 0xf0], eax
lea eax, [esp + 0xbc]
push eax
call fcn.1007f940
add esp, 0xc
cmp eax, 0xffffff88
jbe 0x10080d7b
mov ebp, 0xffffffec
jmp 0x10082d33
push dword [ebp]
lea eax, [esp + 0xb8]
push eax
lea eax, [esp + 0xd0]
push eax
call fcn.100869d0
push dword [ebp + 8]
lea eax, [esp + 0xc4]
push eax
lea eax, [esp + 0xe4]
push eax
call fcn.100869d0
push dword [ebp + 4]
lea eax, [esp + 0xd0]
push eax
lea eax, [esp + 0xf8]
push eax
call fcn.100869d0
mov ebp, dword [esp + 0xfc]
lea eax, [esp + 0x110]
mov esi, dword [esp + 0xf4]
add esp, 0x24
mov edi, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb8]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0xc8]
mov dword [esp + 0x58], 0
mov dword [esp + 0x74], ebp
mov dword [esp + 0x64], esi
mov dword [esp + 0x78], eax
mov edx, dword [esp + 0xc0]
mov ecx, dword [esp + 0xc4]
cmp ebx, 0x20
jbe 0x10080e22
mov edx, 3
jmp 0x10080e8a
cmp edi, ecx
jb 0x10080e34
mov eax, ebx
and ebx, 7
shr eax, 3
sub edi, eax
xor edx, edx
jmp 0x10080e73
cmp edi, edx
jne 0x10080e42
cmp ebx, 0x20
sbb edx, edx
add edx, 2
jmp 0x10080e8a
mov esi, dword [esp + 0xc0]
mov ecx, ebx
shr ecx, 3
mov eax, edi
sub eax, ecx
xor edx, edx
cmp eax, esi
jae 0x10080e61
mov ecx, edi
mov edx, 1
sub ecx, esi
mov esi, dword [esp + 0x64]
sub edi, ecx
imul eax, ecx, 0xfffffff8
mov ecx, dword [esp + 0xc4]
add ebx, eax
mov ebp, dword [edi]
mov dword [esp + 0xb4], ebp
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], edi
mov eax, dword [esp + 0x58]
cmp eax, dword [esp + 0x6c]
jge 0x100813bc
cmp edx, 2
ja 0x10080d71
mov ebp, dword [esp + 0x74]
mov eax, dword [esp + 0xdc]
mov edx, dword [esp + 0x78]
mov eax, dword [eax + ebp*8 + 4]
mov dword [esp + 0x38], eax
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0xcc]
mov ecx, dword [eax + edx*8 + 4]
mov eax, dword [esp + 0xd4]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x80], ecx
mov esi, dword [eax + esi*8 + 4]
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x3c], esi
mov esi, dword [esp + 0xd4]
mov al, byte [eax + edx*8 + 2]
mov byte [esp + 0x4f], al
mov eax, dword [esp + 0xdc]
mov al, byte [eax + ebp*8 + 2]
mov byte [esp + 0x2b], al
mov eax, dword [esp + 0x64]
mov al, byte [esi + eax*8 + 2]
mov esi, dword [esp + 0xcc]
movzx edx, word [esi + edx*8]
mov esi, dword [esp + 0xdc]
mov dword [esp + 0x24], edx
movzx edx, word [esi + ebp*8]
mov esi, dword [esp + 0xd4]
mov ebp, dword [esp + 0x64]
mov dword [esp + 0x60], edx
movzx edx, word [esi + ebp*8]
mov ebp, dword [esp + 0xcc]
mov dword [esp + 0x7c], edx
mov edx, dword [esp + 0x78]
movzx edx, byte [ebp + edx*8 + 3]
mov ebp, dword [esp + 0x74]
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0xdc]
movzx edx, byte [edx + ebp*8 + 3]
mov ebp, dword [esp + 0xb4]
mov dword [esp + 0x74], edx
mov edx, dword [esp + 0x64]
movzx edx, byte [esi + edx*8 + 3]
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x5c], edx
cmp al, 1
jbe 0x10081137
cmp dword [esp + 0x16c], 0
je 0x10081027
cmp al, 0x19
jb 0x10081027
mov ecx, ebx
movzx eax, al
and ecx, 0x1f
sub eax, 5
mov edx, ebp
add ebx, eax
shl edx, cl
mov ecx, eax
neg ecx
and ecx, 0x1f
shr edx, cl
shl edx, 5
add edx, esi
cmp ebx, 0x20
ja 0x10081010
cmp edi, dword [esp + 0xc4]
jb 0x10080fd9
mov eax, ebx
shr eax, 3
sub edi, eax
and ebx, 7
jmp 0x10081000
mov esi, dword [esp + 0xc0]
cmp edi, esi
je 0x10081010
mov ecx, ebx
mov eax, edi
shr ecx, 3
sub eax, ecx
cmp eax, esi
jae 0x10080ff5
mov ecx, edi
sub ecx, esi
lea eax, [ecx*8]
sub edi, ecx
sub ebx, eax
mov ebp, dword [edi]
mov dword [esp + 0xb4], ebp
mov dword [esp + 0xbc], edi
mov ecx, ebx
mov eax, ebp
and ecx, 0x1f
add ebx, 5
shl eax, cl
shr eax, 0x1b
add edx, eax
mov dword [esp + 0x18], edx
jmp 0x10081096
movzx edx, al
mov ecx, ebx
and ecx, 0x1f
mov eax, ebp
shl eax, cl
add ebx, edx
mov ecx, edx
neg ecx
and ecx, 0x1f
shr eax, cl
lea edx, [eax + esi]
mov dword [esp + 0x18], edx
cmp ebx, 0x20
ja 0x10081096
cmp edi, dword [esp + 0xc4]
jb 0x1008105f
mov eax, ebx
shr eax, 3
sub edi, eax
and ebx, 7
jmp 0x10081086
mov esi, dword [esp + 0xc0]
cmp edi, esi
je 0x10081096
mov ecx, ebx
mov eax, edi
shr ecx, 3
sub eax, ecx
cmp eax, esi
jae 0x1008107b
mov ecx, edi
sub ecx, esi
lea eax, [ecx*8]
sub edi, ecx
sub ebx, eax
mov ebp, dword [edi]
mov dword [esp + 0xb4], ebp
mov dword [esp + 0xbc], edi
mov eax, dword [esp + 0xe4]
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0xe0]
mov esi, dword [esp + 0x18]
mov dword [esp + 0xe0], edx
mov al, byte [esp + 0x2b]
mov dword [esp + 0xe4], ecx
test al, al
je 0x100810ed
movzx edx, al
mov ecx, ebx
and ecx, 0x1f
mov eax, ebp
shl eax, cl
add ebx, edx
mov ecx, edx
neg ecx
and ecx, 0x1f
shr eax, cl
mov ecx, dword [esp + 0x38]
add ecx, eax
mov al, byte [esp + 0x2b]
mov dword [esp + 0x84], ecx
mov dl, byte [esp + 0x4f]
movzx ecx, al
movzx eax, dl
add ecx, eax
cmp ecx, 0x14
jb 0x10081217
cmp ebx, 0x20
ja 0x10081217
cmp edi, dword [esp + 0xc4]
jb 0x100811e2
mov eax, ebx
shr eax, 3
sub edi, eax
and ebx, 7
mov dword [esp + 0xbc], edi
mov ebp, dword [edi]
mov dword [esp + 0xb4], ebp
jmp 0x1008121e
xor edx, edx
test ecx, ecx
sete dl
test al, al
jne 0x10081165
mov esi, dword [esp + edx*4 + 0xe0]
mov eax, ecx
neg eax
sbb eax, eax
and eax, 4
mov ecx, dword [esp + eax + 0xe0]
mov dword [esp + 0xe0], esi
jmp 0x100810b6
mov ecx, ebx
mov eax, ebp
and ecx, 0x1f
inc ebx
shl eax, cl
shr eax, 0x1f
mov dword [esp + 0xb8], ebx
lea ecx, [eax + edx]
xor edx, edx
add ecx, esi
cmp ecx, 3
jne 0x100811ad
mov ecx, dword [esp + 0xe0]
lea eax, [ecx - 1]
test eax, eax
sete dl
add edx, eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x18], edx
mov dword [esp + 0xe8], eax
jmp 0x100810ab
mov eax, dword [esp + ecx*4 + 0xe0]
test eax, eax
sete dl
add edx, eax
mov dword [esp + 0x18], edx
cmp ecx, 1
je 0x100810a4
mov eax, dword [esp + 0xe4]
mov ecx, dword [esp + 0xe0]
mov dword [esp + 0xe8], eax
jmp 0x100810ab
mov ebp, dword [esp + 0xc0]
cmp edi, ebp
je 0x10081217
mov ecx, ebx
mov eax, edi
shr ecx, 3
sub eax, ecx
cmp eax, ebp
jae 0x100811fe
mov ecx, edi
sub ecx, ebp
sub edi, ecx
imul eax, ecx, 0xfffffff8
mov dword [esp + 0xbc], edi
mov ebp, dword [edi]
add ebx, eax
mov dword [esp + 0xb4], ebp
jmp 0x1008121e
mov ebp, dword [esp + 0xb4]
test dl, dl
je 0x10081246
mov ecx, ebx
movzx edx, dl
and ecx, 0x1f
mov eax, ebp
shl eax, cl
add ebx, edx
mov ecx, edx
neg ecx
and ecx, 0x1f
shr eax, cl
mov ecx, dword [esp + 0x1c]
add ecx, eax
mov dword [esp + 0x80], ecx
cmp ebx, 0x20
ja 0x100812a5
cmp edi, dword [esp + 0xc4]
jb 0x10081270
mov eax, ebx
shr eax, 3
sub edi, eax
and ebx, 7
mov dword [esp + 0xbc], edi
mov ebp, dword [edi]
mov dword [esp + 0xb4], ebp
jmp 0x100812ac
mov edx, dword [esp + 0xc0]
cmp edi, edx
je 0x100812a5
mov ecx, ebx
mov eax, edi
shr ecx, 3
sub eax, ecx
cmp eax, edx
jae 0x1008128c
mov ecx, edi
sub ecx, edx
sub edi, ecx
imul eax, ecx, 0xfffffff8
mov dword [esp + 0xbc], edi
mov ebp, dword [edi]
add ebx, eax
mov dword [esp + 0xb4], ebp
jmp 0x100812ac
mov ebp, dword [esp + 0xb4]
mov eax, dword [esp + 0x34]
lea edx, [eax + ebx]
mov ebx, ebp
mov ecx, edx
mov dword [esp + 0xb8], edx
neg ecx
and ecx, 0x1f
shr ebx, cl
and ebx, dword [eax*4 + 0x10288e28]
mov eax, dword [esp + 0x24]
movzx eax, ax
add ebx, eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x78], ebx
mov dword [esp + 0xc8], ebx
lea ecx, [edx + eax]
lea ebx, [edx + eax]
neg ecx
and ecx, 0x1f
mov edx, ebp
shr edx, cl
and edx, dword [eax*4 + 0x10288e28]
mov eax, dword [esp + 0x60]
movzx eax, ax
add edx, eax
mov dword [esp + 0x74], edx
mov dword [esp + 0xd8], edx
cmp ebx, 0x20
ja 0x1008135f
cmp edi, dword [esp + 0xc4]
jb 0x10081328
mov eax, ebx
shr eax, 3
sub edi, eax
and ebx, 7
jmp 0x1008134f
mov edx, dword [esp + 0xc0]
cmp edi, edx
je 0x1008135f
mov ecx, ebx
mov eax, edi
shr ecx, 3
sub eax, ecx
cmp eax, edx
jae 0x10081344
mov ecx, edi
sub ecx, edx
lea eax, [ecx*8]
sub edi, ecx
sub ebx, eax
mov ebp, dword [edi]
mov dword [esp + 0xb4], ebp
mov dword [esp + 0xbc], edi
mov eax, dword [esp + 0x5c]
add ebx, eax
movq xmm0, qword [esp + 0x80]
mov ecx, ebx
inc dword [esp + 0x58]
neg ecx
and ecx, 0x1f
mov dword [esp + 0xb8], ebx
shr ebp, cl
mov ecx, ebp
mov dword [esp + 0x64], ebp
and ecx, dword [eax*4 + 0x10288e28]
mov eax, dword [esp + 0x7c]
movzx eax, ax
add ecx, eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x64], ecx
mov dword [esp + 0xd0], ecx
movq qword [eax], xmm0
mov dword [eax + 8], esi
add eax, 0xc
mov dword [esp + 0x44], eax
mov esi, ecx
jmp 0x10080e08
mov esi, dword [esp + 0x10]
cmp ebx, 0x20
jbe 0x100813cc
mov edx, 3
jmp 0x1008142d
cmp edi, ecx
jb 0x100813de
mov eax, ebx
and ebx, 7
shr eax, 3
sub edi, eax
xor edx, edx
jmp 0x10081412
mov ebp, dword [esp + 0xc0]
cmp edi, ebp
jne 0x100813f3
cmp ebx, 0x20
sbb edx, edx
add edx, 2
jmp 0x1008142d
mov ecx, ebx
mov eax, edi
shr ecx, 3
xor edx, edx
sub eax, ecx
cmp eax, ebp
jae 0x1008140b
mov ecx, edi
mov edx, 1
sub ecx, ebp
imul eax, ecx, 0xfffffff8
sub edi, ecx
add ebx, eax
mov ebp, dword [edi]
mov eax, dword [esp + 0x58]
mov dword [esp + 0xb4], ebp
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], edi
mov ecx, dword [esp + 0x168]
cmp eax, ecx
jge 0x100823c6
cmp edx, 2
ja 0x10080d71
mov ebp, dword [esp + 0x74]
mov edx, dword [esp + 0x64]
mov eax, dword [esp + 0xdc]
mov esi, dword [esp + 0xd4]
mov ecx, dword [esp + 0xcc]
mov eax, dword [eax + ebp*8 + 4]
mov esi, dword [esi + edx*8 + 4]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x7c], esi
mov esi, dword [esp + 0xcc]
mov ecx, dword [ecx + eax*8 + 4]
mov dword [esp + 0x44], ecx
mov al, byte [esi + eax*8 + 2]
mov byte [esp + 0x4f], al
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x80], ecx
mov al, byte [eax + ebp*8 + 2]
mov byte [esp + 0x2b], al
mov eax, dword [esp + 0xd4]
mov al, byte [eax + edx*8 + 2]
mov edx, dword [esp + 0x78]
movzx edx, word [esi + edx*8]
mov esi, dword [esp + 0xdc]
mov dword [esp + 0x1c], edx
movzx edx, word [esi + ebp*8]
mov esi, dword [esp + 0xd4]
mov ebp, dword [esp + 0x64]
mov dword [esp + 0x18], edx
movzx edx, word [esi + ebp*8]
mov ebp, dword [esp + 0xcc]
mov dword [esp + 0x54], edx
mov edx, dword [esp + 0x78]
movzx edx, byte [ebp + edx*8 + 3]
mov ebp, dword [esp + 0x74]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0xdc]
movzx edx, byte [edx + ebp*8 + 3]
mov ebp, dword [esp + 0xb4]
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x64]
movzx edx, byte [esi + edx*8 + 3]
mov esi, dword [esp + 0x7c]
mov dword [esp + 0x24], edx
cmp al, 1
jbe 0x1008170a
cmp dword [esp + 0x16c], 0
je 0x100815e3
cmp al, 0x19
jb 0x100815e3
mov ecx, ebx
movzx eax, al
and ecx, 0x1f
sub eax, 5
mov edx, ebp
add ebx, eax
shl edx, cl
mov ecx, eax
neg ecx
and ecx, 0x1f
shr edx, cl
shl edx, 5
add edx, esi
mov dword [esp + 0x60], edx
cmp ebx, 0x20
ja 0x100815c9
cmp edi, dword [esp + 0xc4]
jb 0x1008158e
mov eax, ebx
shr eax, 3
sub edi, eax
and ebx, 7
mov dword [esp + 0xbc], edi
mov ebp, dword [edi]
mov dword [esp + 0xb4], ebp
jmp 0x100815c9
mov edx, dword [esp + 0xc0]
cmp edi, edx
je 0x100815c5
mov ecx, ebx
mov eax, edi
shr ecx, 3
sub eax, ecx
cmp eax, edx
jae 0x100815aa
mov ecx, edi
sub ecx, edx
sub edi, ecx
lea eax, [ecx*8]
mov dword [esp + 0xbc], edi
sub ebx, eax
mov ebp, dword [edi]
mov dword [esp + 0xb4], ebp
mov edx, dword [esp + 0x60]
mov ecx, ebx
mov eax, ebp
and ecx, 0x1f
add ebx, 5
shl eax, cl
shr eax, 0x1b
add edx, eax
mov dword [esp + 0x60], edx
jmp 0x10081666
movzx edx, al
mov ecx, ebx
and ecx, 0x1f
mov eax, ebp
shl eax, cl
add ebx, edx
mov ecx, edx
neg ecx
and ecx, 0x1f
shr eax, cl
lea edx, [eax + esi]
mov dword [esp + 0x60], edx
cmp ebx, 0x20
ja 0x10081666
cmp edi, dword [esp + 0xc4]
jb 0x1008162b
mov eax, ebx
shr eax, 3
sub edi, eax
and ebx, 7
mov dword [esp + 0xbc], edi
mov ebp, dword [edi]
mov dword [esp + 0xb4], ebp
jmp 0x10081666
mov edx, dword [esp + 0xc0]
cmp edi, edx
je 0x10081662
mov ecx, ebx
mov eax, edi
shr ecx, 3
sub eax, ecx
cmp eax, edx
jae 0x10081647
mov ecx, edi
sub ecx, edx
sub edi, ecx
lea eax, [ecx*8]
mov dword [esp + 0xbc], edi
sub ebx, eax
mov ebp, dword [edi]
mov dword [esp + 0xb4], ebp
mov edx, dword [esp + 0x60]
mov eax, dword [esp + 0xe4]
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0xe0]
mov al, byte [esp + 0x2b]
mov dword [esp + 0xe4], ecx
mov dword [esp + 0xe0], edx
test al, al
je 0x100816b9
movzx edx, al
mov ecx, ebx
and ecx, 0x1f
mov eax, ebp
shl eax, cl
add ebx, edx
mov ecx, edx
neg ecx
and ecx, 0x1f
shr eax, cl
mov ecx, dword [esp + 0x3c]
add ecx, eax
mov al, byte [esp + 0x2b]
mov dword [esp + 0x84], ecx
mov dl, byte [esp + 0x4f]
movzx ecx, al
movzx eax, dl
add ecx, eax
cmp ecx, 0x14
jb 0x100817e0
cmp ebx, 0x20
ja 0x100817e0
mov esi, dword [esp + 0xc0]
cmp edi, dword [esp + 0xc4]
jb 0x100817b2
mov eax, ebx
shr eax, 3
sub edi, eax
and ebx, 7
mov dword [esp + 0xbc], edi
mov ebp, dword [edi]
mov dword [esp + 0xb4], ebp
jmp 0x100817ee
xor edx, edx
test ecx, ecx
sete dl
test al, al
jne 0x10081735
mov edx, dword [esp + edx*4 + 0xe0]
mov eax, ecx
neg eax
mov dword [esp + 0x60], edx
sbb eax, eax
and eax, 4
mov ecx, dword [esp + eax + 0xe0]
jmp 0x1008167b
mov ecx, ebx
mov eax, ebp
and ecx, 0x1f
inc ebx
shl eax, cl
shr eax, 0x1f
mov dword [esp + 0xb8], ebx
lea ecx, [eax + edx]
xor edx, edx
add ecx, esi
cmp ecx, 3
jne 0x1008177d
mov ecx, dword [esp + 0xe0]
lea eax, [ecx - 1]
test eax, eax
sete dl
add edx, eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x60], edx
mov dword [esp + 0xe8], eax
jmp 0x1008167b
mov eax, dword [esp + ecx*4 + 0xe0]
test eax, eax
sete dl
add edx, eax
mov dword [esp + 0x60], edx
cmp ecx, 1
je 0x10081674
mov eax, dword [esp + 0xe4]
mov ecx, dword [esp + 0xe0]
mov dword [esp + 0xe8], eax
jmp 0x1008167b
cmp edi, esi
je 0x100817e7
mov ecx, ebx
mov eax, edi
shr ecx, 3
sub eax, ecx
cmp eax, esi
jae 0x100817c7
mov ecx, edi
sub ecx, esi
sub edi, ecx
imul eax, ecx, 0xfffffff8
mov dword [esp + 0xbc], edi
mov ebp, dword [edi]
add ebx, eax
mov dword [esp + 0xb4], ebp
jmp 0x100817ee
mov esi, dword [esp + 0xc0]
mov ebp, dword [esp + 0xb4]
test dl, dl
je 0x10081816
mov ecx, ebx
movzx edx, dl
and ecx, 0x1f
mov eax, ebp
shl eax, cl
add ebx, edx
mov ecx, edx
neg ecx
and ecx, 0x1f
shr eax, cl
mov ecx, dword [esp + 0x44]
add ecx, eax
mov dword [esp + 0x80], ecx
cmp ebx, 0x20
ja 0x1008185c
cmp edi, dword [esp + 0xc4]
jb 0x10081830
mov eax, ebx
shr eax, 3
sub edi, eax
and ebx, 7
jmp 0x1008184c
cmp edi, esi
je 0x1008185c
mov ecx, ebx
mov eax, edi
shr ecx, 3
sub eax, ecx
cmp eax, esi
jae 0x10081845
mov ecx, edi
sub ecx, esi
imul eax, ecx, 0xfffffff8
sub edi, ecx
add ebx, eax
mov ebp, dword [edi]
mov dword [esp + 0xb4], ebp
mov dword [esp + 0xbc], edi
mov eax, dword [esp + 0x38]
lea edx, [eax + ebx]
mov ebx, ebp
mov ecx, edx
mov dword [esp + 0xb8], edx
neg ecx
and ecx, 0x1f
shr ebx, cl
and ebx, dword [eax*4 + 0x10288e28]
mov eax, dword [esp + 0x1c]
movzx eax, ax
add ebx, eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x78], ebx
mov dword [esp + 0xc8], ebx
lea ecx, [eax + edx]
lea ebx, [eax + edx]
neg ecx
and ecx, 0x1f
mov edx, ebp
shr edx, cl
and edx, dword [eax*4 + 0x10288e28]
mov eax, dword [esp + 0x18]
movzx eax, ax
add edx, eax
mov dword [esp + 0x74], edx
mov dword [esp + 0xd8], edx
cmp ebx, 0x20
ja 0x10081908
cmp edi, dword [esp + 0xc4]
jb 0x100818d8
mov eax, ebx
shr eax, 3
sub edi, eax
and ebx, 7
jmp 0x100818f8
cmp edi, esi
je 0x10081908
mov ecx, ebx
mov eax, edi
shr ecx, 3
sub eax, ecx
cmp eax, esi
jae 0x100818ed
mov ecx, edi
sub ecx, esi
lea eax, [ecx*8]
sub edi, ecx
sub ebx, eax
mov ebp, dword [edi]
mov dword [esp + 0xb4], ebp
mov dword [esp + 0xbc], edi
mov eax, dword [esp + 0x24]
mov edx, ebp
mov esi, dword [esp + 0x70]
add ebx, eax
mov ecx, ebx
mov dword [esp + 0x5c], ebx
neg ecx
mov dword [esp + 0xb8], ebx
and ecx, 0x1f
shr edx, cl
and edx, dword [eax*4 + 0x10288e28]
mov eax, dword [esp + 0x54]
movzx eax, ax
add edx, eax
mov dword [esp + 0x64], edx
mov dword [esp + 0xd0], edx
mov edx, dword [esi + 0x75fc]
cmp edx, 2
jne 0x10081d08
mov eax, dword [esp + 0x58]
lea ecx, [esp + 0xec]
mov esi, dword [esi + 0x75f8]
and eax, 7
lea eax, [eax + eax*2]
mov ebp, dword [ecx + eax*4]
lea ecx, [ecx + eax*4]
mov eax, dword [esp + 0x14]
add eax, ebp
mov dword [esp + 0x44], ecx
cmp eax, esi
jbe 0x10081d08
mov edx, dword [esp + 0x14]
sub esi, edx
je 0x100819b2
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x10]
sub eax, ecx
cmp esi, eax
ja 0x100823bc
push esi
push edx
push ecx
call fcn.10086cc0
mov ecx, dword [esp + 0x50]
sub ebp, esi
add esp, 0xc
add dword [esp + 0x10], esi
mov dword [ecx], ebp
mov edx, dword [esp + 0x70]
movq xmm0, qword [ecx]
mov esi, dword [esp + 0x10]
mov ecx, dword [ecx + 8]
lea eax, [edx + 0x7600]
mov dword [edx + 0x75fc], 0
mov dword [esp + 0x40], eax
lea eax, [edx + 0x17600]
mov dword [esp + 0x50], eax
movq qword [esp + 0x90], xmm0
mov edx, dword [esp + 0x90]
add esi, edx
mov eax, dword [esp + 0x94]
mov dword [esp + 0x18], eax
mov dword [esp + 0x38], ecx
mov dword [esp + 0x24], esi
lea ebp, [eax + edx]
mov eax, dword [esp + 0x70]
add edx, 0x7600
mov dword [esp + 0x1c], ebp
add eax, edx
mov edx, esi
sub edx, ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x34], edx
cmp eax, dword [esp + 0x50]
ja 0x10081cb3
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x30]
add ecx, ebp
add eax, 0xffffffe0
cmp ecx, eax
ja 0x10081cb3
mov ecx, dword [esp + 0x30]
lea eax, [ebp + 0x20]
sub ecx, dword [esp + 0x10]
cmp ecx, eax
jb 0x10081cb3
mov eax, dword [esp + 0x70]
add eax, 0x7600
push eax
push dword [esp + 0x14]
call fcn.10080150
mov eax, dword [esp + 0x98]
add esp, 8
cmp eax, 0x10
jbe 0x10081ae2
mov esi, dword [esp + 0x10]
lea edx, [eax - 0x10]
mov eax, dword [esp + 0x70]
add esi, 0x10
add eax, 0x7610
push eax
push esi
lea ecx, [esi + edx]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x84], ecx
call fcn.10080150
add esp, 8
cmp edx, 0x10
jle 0x10081ada
mov edx, dword [esp + 0x54]
add esi, 0x10
mov ebx, dword [esp + 0x7c]
add edx, 0x10
push edx
push esi
call fcn.10080150
add edx, 0x10
add esi, 0x10
push edx
push esi
call fcn.10080150
add esi, 0x10
add esp, 0x10
add edx, 0x10
cmp esi, ebx
jb 0x10081ab5
mov ebx, dword [esp + 0x5c]
mov esi, dword [esp + 0x24]
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x40], eax
mov eax, esi
sub eax, dword [esp + 0x2c]
cmp ecx, eax
jbe 0x10081b65
mov eax, esi
sub eax, dword [esp + 0x68]
cmp ecx, eax
ja 0x10080d71
mov eax, dword [esp + 0x48]
sub eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x18]
add edx, eax
lea eax, [edx + ecx]
cmp eax, dword [esp + 0x48]
ja 0x10081b31
push ecx
push edx
push esi
call fcn.10005029
mov esi, dword [esp + 0x1c]
add esp, 0xc
jmp 0x10081cfa
mov esi, dword [esp + 0x48]
sub esi, edx
push esi
push edx
push dword [esp + 0x2c]
call fcn.10005029
mov eax, dword [esp + 0x24]
add esp, 0xc
add dword [esp + 0x24], esi
sub eax, esi
mov edx, dword [esp + 0x2c]
mov esi, dword [esp + 0x24]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x18], eax
mov dword [esp + 0x34], edx
jmp 0x10081b69
mov eax, dword [esp + 0x18]
cmp ecx, 0x10
jb 0x10081bc1
add eax, esi
push edx
push esi
mov dword [esp + 0x5c], eax
call fcn.10080150
add esp, 8
cmp dword [esp + 0x18], 0x10
jle 0x10081bb8
mov ebx, dword [esp + 0x54]
lea edx, [esi + 0x10]
mov esi, dword [esp + 0x34]
add esi, 0x10
push esi
push edx
call fcn.10080150
add esi, 0x10
add edx, 0x10
push esi
push edx
call fcn.10080150
add edx, 0x10
add esp, 0x10
add esi, 0x10
cmp edx, ebx
jb 0x10081b93
mov ebx, dword [esp + 0x5c]
mov esi, dword [esp + 0x10]
jmp 0x10081cfa
cmp ecx, 8
jae 0x10081c01
movzx eax, byte [edx]
mov byte [esi], al
movzx eax, byte [edx + 1]
mov byte [esi + 1], al
movzx eax, byte [edx + 2]
mov byte [esi + 2], al
movzx eax, byte [edx + 3]
add edx, dword [ecx*4 + 0x10288ea8]
mov byte [esi + 3], al
lea eax, [esi + 4]
push edx
push eax
call fcn.10080170
mov ecx, dword [esp + 0x40]
add esp, 8
sub edx, dword [ecx*4 + str._b_b_b_a_b_t_n_v]
jmp 0x10081c0f
push edx
push esi
call fcn.10080180
mov edx, dword [esp + 0x3c]
add esp, 8
mov ecx, dword [esp + 0x18]
cmp ecx, 8
jbe 0x10081bb8
lea eax, [ecx - 8]
add esi, 8
mov dword [esp + 0x54], eax
lea ecx, [edx + 8]
add eax, esi
mov dword [esp + 0x44], ecx
mov dword [esp + 0x38], eax
mov eax, esi
sub eax, ecx
cmp eax, 0x10
jge 0x10081c65
mov ebp, dword [esp + 0x38]
mov ebx, ecx
sub ebx, esi
lea eax, [ebx + esi]
push eax
push esi
call fcn.10080180
add esi, 8
add esp, 8
cmp esi, ebp
jb 0x10081c40
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x5c]
mov esi, dword [esp + 0x10]
jmp 0x10081cfa
push ecx
push esi
call fcn.10080150
add esp, 8
cmp dword [esp + 0x54], 0x10
jle 0x10081bb8
mov ebx, dword [esp + 0x38]
lea edx, [esi + 0x10]
mov esi, dword [esp + 0x44]
add esi, 0x10
push esi
push edx
call fcn.10080150
add esi, 0x10
add edx, 0x10
push esi
push edx
call fcn.10080150
add edx, 0x10
add esp, 0x10
add esi, 0x10
cmp edx, ebx
jb 0x10081c88
mov ebx, dword [esp + 0x5c]
mov esi, dword [esp + 0x10]
jmp 0x10081cfa
push dword [esp + 0x48]
mov esi, dword [esp + 0x14]
lea eax, [esp + 0x44]
push dword [esp + 0x6c]
push dword [esp + 0x34]
push dword [esp + 0x5c]
push eax
mov eax, dword [esp + 0x58]
sub esp, 0xc
mov ecx, esp
movq xmm0, qword [eax]
push dword [esp + 0x50]
mov eax, dword [eax + 8]
movq qword [ecx], xmm0
push esi
mov dword [ecx + 8], eax
call fcn.10086660
mov ebp, eax
add esp, 0x28
mov eax, dword [esp + 0x40]
mov dword [esp + 0x14], eax
cmp ebp, 0xffffff88
ja 0x10082d33
jmp 0x1008237a
mov eax, dword [esp + 0x58]
mov esi, dword [esp + 0x10]
and eax, 7
lea eax, [eax + eax*2]
mov ecx, dword [esp + eax*4 + 0xf4]
lea eax, [esp + eax*4 + 0xec]
movq xmm0, qword [eax]
mov dword [esp + 0x44], eax
mov dword [esp + 0x38], ecx
cmp edx, 2
jne 0x10082053
mov eax, dword [eax]
mov edx, dword [esp + 0x14]
add edx, 0xffffffe0
movq qword [esp + 0x9c], xmm0
add eax, edx
mov edx, dword [esp + 0x9c]
mov dword [esp + 0x3c], eax
add esi, edx
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x24], eax
mov dword [esp + 0x18], esi
lea ebp, [eax + edx]
mov eax, dword [esp + 0x14]
add eax, edx
mov dword [esp + 0x1c], ebp
mov edx, esi
mov dword [esp + 0x20], eax
sub edx, ecx
mov dword [esp + 0x34], edx
cmp eax, dword [esp + 0x50]
ja 0x1008200e
mov eax, dword [esp + 0x10]
add eax, ebp
cmp eax, dword [esp + 0x3c]
ja 0x1008200e
mov ecx, dword [esp + 0x30]
lea eax, [ebp + 0x20]
sub ecx, dword [esp + 0x10]
cmp ecx, eax
jb 0x1008200e
push dword [esp + 0x14]
push dword [esp + 0x14]
call fcn.10080150
mov eax, dword [esp + 0xa4]
add esp, 8
cmp eax, 0x10
jbe 0x10081e34
mov esi, dword [esp + 0x10]
lea edx, [eax - 0x10]
mov eax, dword [esp + 0x14]
add esi, 0x10
add eax, 0x10
push eax
push esi
lea ecx, [esi + edx]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x84], ecx
call fcn.10080150
add esp, 8
cmp edx, 0x10
jle 0x10081e2c
mov edx, dword [esp + 0x54]
add esi, 0x10
mov ebx, dword [esp + 0x7c]
add edx, 0x10
push edx
push esi
call fcn.10080150
add edx, 0x10
add esi, 0x10
push edx
push esi
call fcn.10080150
add esi, 0x10
add esp, 0x10
add edx, 0x10
cmp esi, ebx
jb 0x10081e07
mov ebx, dword [esp + 0x5c]
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x14], eax
mov dword [esp + 0x40], eax
mov eax, esi
sub eax, dword [esp + 0x2c]
cmp ecx, eax
jbe 0x10081ebd
mov eax, esi
sub eax, dword [esp + 0x68]
cmp ecx, eax
jbe 0x10081e62
mov ebp, 0xffffffec
jmp 0x1008236d
mov eax, dword [esp + 0x48]
sub eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x24]
add edx, eax
lea eax, [edx + ecx]
cmp eax, dword [esp + 0x48]
ja 0x10081e89
push ecx
push edx
push esi
call fcn.10005029
add esp, 0xc
jmp 0x1008236d
mov esi, dword [esp + 0x48]
sub esi, edx
push esi
push edx
push dword [esp + 0x20]
call fcn.10005029
mov eax, dword [esp + 0x30]
add esp, 0xc
add dword [esp + 0x18], esi
sub eax, esi
mov edx, dword [esp + 0x2c]
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x24], eax
mov dword [esp + 0x34], edx
jmp 0x10081ec1
mov eax, dword [esp + 0x24]
cmp ecx, 0x10
jb 0x10081f1a
add eax, esi
push edx
push esi
mov dword [esp + 0x28], eax
call fcn.10080150
add esp, 8
cmp dword [esp + 0x24], 0x10
jle 0x1008236d
mov ebx, dword [esp + 0x20]
lea edx, [esi + 0x10]
mov esi, dword [esp + 0x34]
add esi, 0x10
nop
push esi
push edx
call fcn.10080150
add esi, 0x10
add edx, 0x10
push esi
push edx
call fcn.10080150
add edx, 0x10
add esp, 0x10
add esi, 0x10
cmp edx, ebx
jb 0x10081ef0
mov ebx, dword [esp + 0x5c]
jmp 0x1008236d
cmp ecx, 8
jae 0x10081f5a
movzx eax, byte [edx]
mov byte [esi], al
movzx eax, byte [edx + 1]
mov byte [esi + 1], al
movzx eax, byte [edx + 2]
mov byte [esi + 2], al
movzx eax, byte [edx + 3]
add edx, dword [ecx*4 + 0x10288ea8]
mov byte [esi + 3], al
lea eax, [esi + 4]
push edx
push eax
call fcn.10080170
mov ecx, dword [esp + 0x40]
add esp, 8
sub edx, dword [ecx*4 + str._b_b_b_a_b_t_n_v]
jmp 0x10081f68
push edx
push esi
call fcn.10080180
mov edx, dword [esp + 0x3c]
add esp, 8
mov ecx, dword [esp + 0x24]
cmp ecx, 8
jbe 0x1008236d
lea eax, [ecx - 8]
add esi, 8
mov dword [esp + 0x20], eax
lea ecx, [edx + 8]
add eax, esi
mov dword [esp + 0x44], ecx
mov dword [esp + 0x38], eax
mov eax, esi
sub eax, ecx
cmp eax, 0x10
jge 0x10081fc1
mov ebp, dword [esp + 0x38]
mov ebx, ecx
sub ebx, esi
nop dword [eax]
lea eax, [esi + ebx]
push eax
push esi
call fcn.10080180
add esi, 8
add esp, 8
cmp esi, ebp
jb 0x10081fa0
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x5c]
jmp 0x1008236d
push ecx
push esi
call fcn.10080150
add esp, 8
cmp dword [esp + 0x20], 0x10
jle 0x1008236d
mov ebx, dword [esp + 0x38]
lea edx, [esi + 0x10]
mov esi, dword [esp + 0x44]
add esi, 0x10
push esi
push edx
call fcn.10080150
add esi, 0x10
add edx, 0x10
push esi
push edx
call fcn.10080150
add edx, 0x10
add esp, 0x10
add esi, 0x10
cmp edx, ebx
jb 0x10081fe4
mov ebx, dword [esp + 0x5c]
jmp 0x1008236d
push dword [esp + 0x48]
lea eax, [esp + 0x44]
push dword [esp + 0x6c]
push dword [esp + 0x34]
push dword [esp + 0x5c]
push eax
mov eax, dword [esp + 0x58]
sub esp, 0xc
mov ecx, esp
push dword [esp + 0x5c]
movq xmm0, qword [eax]
push dword [esp + 0x54]
mov eax, dword [eax + 8]
push dword [esp + 0x38]
movq qword [ecx], xmm0
mov dword [ecx + 8], eax
call fcn.100867a0
add esp, 0x2c
jmp 0x10082363
movq qword [esp + 0xa8], xmm0
mov edx, dword [esp + 0xa8]
add esi, edx
mov ecx, dword [esp + 0xac]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x18], esi
lea ebp, [ecx + edx]
mov ecx, dword [esp + 0x14]
add ecx, edx
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x3c], ecx
mov edx, esi
sub edx, dword [eax + 8]
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x34], edx
cmp dword [esp + 0x3c], ecx
ja 0x1008232b
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x30]
add ecx, ebp
add eax, 0xffffffe0
cmp ecx, eax
ja 0x10082327
mov ecx, dword [esp + 0x30]
lea eax, [ebp + 0x20]
sub ecx, dword [esp + 0x10]
cmp ecx, eax
jb 0x10082327
push dword [esp + 0x14]
push dword [esp + 0x14]
call fcn.10080150
mov eax, dword [esp + 0xb0]
add esp, 8
cmp eax, 0x10
jbe 0x1008214d
mov esi, dword [esp + 0x10]
lea edx, [eax - 0x10]
mov eax, dword [esp + 0x14]
add esi, 0x10
add eax, 0x10
push eax
push esi
lea ecx, [esi + edx]
mov dword [esp + 0x28], eax
mov dword [esp + 0x5c], ecx
call fcn.10080150
add esp, 8
cmp edx, 0x10
jle 0x10082145
mov edx, dword [esp + 0x20]
add esi, 0x10
mov ebx, dword [esp + 0x54]
add edx, 0x10
nop dword [eax]
push edx
push esi
call fcn.10080150
add edx, 0x10
add esi, 0x10
push edx
push esi
call fcn.10080150
add esi, 0x10
add esp, 0x10
add edx, 0x10
cmp esi, ebx
jb 0x10082120
mov ebx, dword [esp + 0x5c]
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x14], eax
mov dword [esp + 0x40], eax
mov eax, esi
sub eax, dword [esp + 0x2c]
cmp ecx, eax
jbe 0x100821d6
mov eax, esi
sub eax, dword [esp + 0x68]
cmp ecx, eax
jbe 0x1008217b
mov ebp, 0xffffffec
jmp 0x1008236d
mov eax, dword [esp + 0x48]
sub eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x24]
add edx, eax
lea eax, [edx + ecx]
cmp eax, dword [esp + 0x48]
ja 0x100821a2
push ecx
push edx
push esi
call fcn.10005029
add esp, 0xc
jmp 0x1008236d
mov esi, dword [esp + 0x48]
sub esi, edx
push esi
push edx
push dword [esp + 0x20]
call fcn.10005029
mov eax, dword [esp + 0x30]
add esp, 0xc
add dword [esp + 0x18], esi
sub eax, esi
mov edx, dword [esp + 0x2c]
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x24], eax
mov dword [esp + 0x34], edx
jmp 0x100821da
mov eax, dword [esp + 0x24]
cmp ecx, 0x10
jb 0x10082232
add eax, esi
push edx
push esi
mov dword [esp + 0x28], eax
call fcn.10080150
add esp, 8
cmp dword [esp + 0x24], 0x10
jle 0x1008236d
mov ebx, dword [esp + 0x20]
lea edx, [esi + 0x10]
mov esi, dword [esp + 0x34]
add esi, 0x10
push esi
push edx
call fcn.10080150
add esi, 0x10
add edx, 0x10
push esi
push edx
call fcn.10080150
add edx, 0x10
add esp, 0x10
add esi, 0x10
cmp edx, ebx
jb 0x10082208
mov ebx, dword [esp + 0x5c]
jmp 0x1008236d
cmp ecx, 8
jae 0x10082272
movzx eax, byte [edx]
mov byte [esi], al
movzx eax, byte [edx + 1]
mov byte [esi + 1], al
movzx eax, byte [edx + 2]
mov byte [esi + 2], al
movzx eax, byte [edx + 3]
add edx, dword [ecx*4 + 0x10288ea8]
mov byte [esi + 3], al
lea eax, [esi + 4]
push edx
push eax
call fcn.10080170
mov ecx, dword [esp + 0x40]
add esp, 8
sub edx, dword [ecx*4 + str._b_b_b_a_b_t_n_v]
jmp 0x10082280
push edx
push esi
call fcn.10080180
mov edx, dword [esp + 0x3c]
add esp, 8
mov ecx, dword [esp + 0x24]
cmp ecx, 8
jbe 0x1008236d
lea eax, [ecx - 8]
add esi, 8
mov dword [esp + 0x20], eax
lea ecx, [edx + 8]
add eax, esi
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x44], eax
mov eax, esi
sub eax, ecx
cmp eax, 0x10
jge 0x100822d6
mov ebp, dword [esp + 0x44]
mov ebx, ecx
sub ebx, esi
lea eax, [esi + ebx]
push eax
push esi
call fcn.10080180
add esi, 8
add esp, 8
cmp esi, ebp
jb 0x100822b5
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x5c]
jmp 0x1008236d
push ecx
push esi
call fcn.10080150
add esp, 8
cmp dword [esp + 0x20], 0x10
jle 0x1008236d
mov ebx, dword [esp + 0x44]
lea edx, [esi + 0x10]
mov esi, dword [esp + 0x3c]
add esi, 0x10
nop dword [eax]
push esi
push edx
call fcn.10080150
add esi, 0x10
add edx, 0x10
push esi
push edx
call fcn.10080150
add edx, 0x10
add esp, 0x10
add esi, 0x10
cmp edx, ebx
jb 0x10082300
mov ebx, dword [esp + 0x5c]
jmp 0x1008236d
mov eax, dword [esp + 0x44]
push dword [esp + 0x48]
movq xmm0, qword [eax]
lea ecx, [esp + 0x44]
push dword [esp + 0x6c]
mov eax, dword [eax + 8]
push dword [esp + 0x34]
push dword [esp + 0x5c]
push ecx
sub esp, 0xc
mov ecx, esp
push dword [esp + 0x50]
movq qword [ecx], xmm0
push dword [esp + 0x34]
mov dword [ecx + 8], eax
call fcn.10086660
add esp, 0x28
mov ebp, eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x14], eax
cmp ebp, 0xffffff88
ja 0x10082d33
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x58]
add esi, ebp
movq xmm0, qword [esp + 0x80]
and eax, 7
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x10], esi
lea eax, [eax + eax*2]
movq qword [esp + eax*4 + 0xec], xmm0
mov dword [esp + eax*4 + 0xf4], ecx
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0xc4]
inc eax
mov dword [esp + 0x58], eax
jmp 0x100813c0
mov ebp, 0xffffffba
jmp 0x10082d33
sub eax, dword [esp + 0x6c]
mov dword [esp + 0x58], eax
cmp eax, ecx
jge 0x10082ca0
nop word [eax + eax]
and eax, 7
lea esi, [esp + 0xec]
lea eax, [eax + eax*2]
lea esi, [esi + eax*4]
mov eax, dword [esp + 0x70]
cmp dword [eax + 0x75fc], 2
jne 0x100829cd
mov ebx, dword [esi]
mov edx, dword [esp + 0x14]
mov edi, dword [eax + 0x75f8]
lea ecx, [ebx + edx]
cmp ecx, edi
jbe 0x1008271e
mov ebp, dword [esp + 0x10]
sub edi, edx
je 0x10082443
mov eax, dword [esp + 0x30]
sub eax, ebp
cmp edi, eax
ja 0x100823bc
push edi
push edx
push ebp
call fcn.10086cc0
mov eax, dword [esp + 0x7c]
sub ebx, edi
add esp, 0xc
mov dword [esi], ebx
add ebp, edi
mov dword [esp + 0x10], ebp
movq xmm0, qword [esi]
lea ecx, [eax + 0x7600]
add eax, 0x17600
movq qword [esp + 0xa8], xmm0
mov edx, dword [esp + 0xac]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x40], ecx
mov dword [esp + 0x1c], edx
mov dword [eax + 0x75fc], 0
mov eax, dword [esi + 8]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0xa8]
lea edi, [eax + ebp]
lea ebp, [edx + eax]
mov dword [esp + 0x6c], edi
add eax, ecx
mov ebx, edi
sub ebx, dword [esi + 8]
mov dword [esp + 0x14], eax
cmp eax, dword [esp + 0x50]
ja 0x100826cd
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x30]
add ecx, ebp
add eax, 0xffffffe0
cmp ecx, eax
ja 0x100826cd
mov ecx, dword [esp + 0x30]
lea eax, [ebp + 0x20]
sub ecx, dword [esp + 0x10]
cmp ecx, eax
jb 0x100826cd
mov esi, dword [esp + 0x70]
add esi, 0x7600
push esi
push dword [esp + 0x14]
call fcn.10080150
mov eax, dword [esp + 0xb0]
add esp, 8
cmp eax, 0x10
jbe 0x1008254a
lea edi, [esi + 0x10]
mov esi, dword [esp + 0x10]
add esi, 0x10
lea edx, [eax - 0x10]
push edi
push esi
lea eax, [esi + edx]
mov dword [esp + 0x28], eax
call fcn.10080150
add esp, 8
cmp edx, 0x10
jle 0x10082542
mov edx, dword [esp + 0x20]
add esi, 0x10
add edi, 0x10
push edi
push esi
call fcn.10080150
add edi, 0x10
add esi, 0x10
push edi
push esi
call fcn.10080150
add esi, 0x10
add esp, 0x10
add edi, 0x10
cmp esi, edx
jb 0x10082521
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x6c]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x2c]
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x40], eax
mov eax, edi
sub eax, ecx
cmp esi, eax
jbe 0x100825b6
mov eax, edi
sub eax, dword [esp + 0x68]
cmp esi, eax
ja 0x10080d71
mov esi, dword [esp + 0x48]
mov eax, esi
sub eax, ecx
add ebx, eax
lea eax, [ebx + edx]
cmp eax, esi
ja 0x10082595
push edx
push ebx
push edi
call fcn.10005029
mov esi, dword [esp + 0x1c]
add esp, 0xc
jmp 0x10082710
sub esi, ebx
push esi
push ebx
push edi
call fcn.10005029
mov edx, dword [esp + 0x28]
add edi, esi
mov ebx, dword [esp + 0x38]
add esp, 0xc
sub edx, esi
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x1c], edx
cmp esi, 0x10
jb 0x1008260a
lea eax, [edx + edi]
push ebx
push edi
mov dword [esp + 0x28], eax
call fcn.10080150
add esp, 8
cmp edx, 0x10
jle 0x10082601
lea edx, [edi + 0x10]
mov edi, dword [esp + 0x20]
lea esi, [ebx + 0x10]
nop dword [eax + eax]
push esi
push edx
call fcn.10080150
add esi, 0x10
add edx, 0x10
push esi
push edx
call fcn.10080150
add edx, 0x10
add esp, 0x10
add esi, 0x10
cmp edx, edi
jb 0x100825e0
mov esi, dword [esp + 0x10]
jmp 0x10082710
cmp esi, 8
jae 0x10082646
movzx eax, byte [ebx]
mov byte [edi], al
movzx eax, byte [ebx + 1]
mov byte [edi + 1], al
movzx eax, byte [ebx + 2]
mov byte [edi + 2], al
movzx eax, byte [ebx + 3]
add ebx, dword [esi*4 + 0x10288ea8]
mov byte [edi + 3], al
lea eax, [edi + 4]
push ebx
push eax
call fcn.10080170
add esp, 8
sub ebx, dword [esi*4 + str._b_b_b_a_b_t_n_v]
jmp 0x10082654
push ebx
push edi
call fcn.10080180
mov edx, dword [esp + 0x24]
add esp, 8
cmp edx, 8
jbe 0x10082601
lea esi, [edi + 8]
add edx, 0xfffffff8
add ebx, 8
mov eax, esi
sub eax, ebx
lea edi, [esi + edx]
cmp eax, 0x10
jge 0x1008268d
sub ebx, esi
lea eax, [ebx + esi]
push eax
push esi
call fcn.10080180
add esi, 8
add esp, 8
cmp esi, edi
jb 0x10082670
mov esi, dword [esp + 0x10]
jmp 0x10082710
push ebx
push esi
call fcn.10080150
add esp, 8
cmp edx, 0x10
jle 0x10082601
lea edx, [esi + 0x10]
lea esi, [ebx + 0x10]
push esi
push edx
call fcn.10080150
add esi, 0x10
add edx, 0x10
push esi
push edx
call fcn.10080150
add edx, 0x10
add esp, 0x10
add esi, 0x10
cmp edx, edi
jb 0x100826a6
mov esi, dword [esp + 0x10]
jmp 0x10082710
push dword [esp + 0x48]
movq xmm0, qword [esi]
lea eax, [esp + 0x44]
push dword [esp + 0x6c]
push dword [esp + 0x34]
push dword [esp + 0x5c]
push eax
mov eax, dword [esi + 8]
sub esp, 0xc
mov esi, dword [esp + 0x30]
mov ecx, esp
push dword [esp + 0x50]
movq qword [ecx], xmm0
push esi
mov dword [ecx + 8], eax
call fcn.10086660
mov ebp, eax
add esp, 0x28
mov eax, dword [esp + 0x40]
mov dword [esp + 0x14], eax
cmp ebp, 0xffffff88
ja 0x10082d33
jmp 0x10082c84
movq xmm0, qword [esi]
add ecx, 0xffffffe0
mov eax, dword [esi + 8]
mov edi, dword [esp + 0x10]
movq qword [esp + 0x9c], xmm0
mov edx, dword [esp + 0xa0]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x9c]
add edi, eax
mov ebx, edi
mov dword [esp + 0x20], ecx
sub ebx, dword [esi + 8]
mov dword [esp + 0x6c], edi
lea ebp, [edx + eax]
mov dword [esp + 0x1c], edx
add eax, dword [esp + 0x14]
mov dword [esp + 0x54], eax
cmp eax, dword [esp + 0x50]
ja 0x1008298c
mov eax, dword [esp + 0x10]
add eax, ebp
cmp eax, ecx
ja 0x1008298c
mov ecx, dword [esp + 0x30]
lea eax, [ebp + 0x20]
sub ecx, dword [esp + 0x10]
cmp ecx, eax
jb 0x1008298c
push dword [esp + 0x14]
mov esi, dword [esp + 0x14]
push esi
call fcn.10080150
mov eax, dword [esp + 0xa4]
add esp, 8
cmp eax, 0x10
jbe 0x10082809
mov edi, dword [esp + 0x14]
lea edx, [eax - 0x10]
add esi, 0x10
add edi, 0x10
push edi
push esi
lea eax, [esi + edx]
mov dword [esp + 0x28], eax
call fcn.10080150
add esp, 8
cmp edx, 0x10
jle 0x10082801
mov edx, dword [esp + 0x20]
add esi, 0x10
add edi, 0x10
nop word [eax + eax]
push edi
push esi
call fcn.10080150
add edi, 0x10
add esi, 0x10
push edi
push esi
call fcn.10080150
add esi, 0x10
add esp, 0x10
add edi, 0x10
cmp esi, edx
jb 0x100827e0
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x6c]
mov ecx, dword [esp + 0x54]
mov eax, edi
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x2c]
sub eax, ecx
cmp esi, eax
jbe 0x1008287b
mov eax, edi
sub eax, dword [esp + 0x68]
cmp esi, eax
jbe 0x10082839
mov ebp, 0xffffffec
jmp 0x10082c77
mov esi, dword [esp + 0x48]
mov eax, esi
sub eax, ecx
add ebx, eax
lea eax, [ebx + edx]
cmp eax, esi
ja 0x1008285a
push edx
push ebx
push edi
call fcn.10005029
add esp, 0xc
jmp 0x10082c77
sub esi, ebx
push esi
push ebx
push edi
call fcn.10005029
mov edx, dword [esp + 0x28]
add edi, esi
mov ebx, dword [esp + 0x38]
add esp, 0xc
sub edx, esi
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x1c], edx
cmp esi, 0x10
jb 0x100828ca
lea eax, [edx + edi]
push ebx
push edi
mov dword [esp + 0x28], eax
call fcn.10080150
add esp, 8
cmp edx, 0x10
jle 0x10082c77
lea edx, [edi + 0x10]
mov edi, dword [esp + 0x20]
lea esi, [ebx + 0x10]
push esi
push edx
call fcn.10080150
add esi, 0x10
add edx, 0x10
push esi
push edx
call fcn.10080150
add edx, 0x10
add esp, 0x10
add esi, 0x10
cmp edx, edi
jb 0x100828a4
jmp 0x10082c77
cmp esi, 8
jae 0x10082906
movzx eax, byte [ebx]
mov byte [edi], al
movzx eax, byte [ebx + 1]
mov byte [edi + 1], al
movzx eax, byte [ebx + 2]
mov byte [edi + 2], al
movzx eax, byte [ebx + 3]
add ebx, dword [esi*4 + 0x10288ea8]
mov byte [edi + 3], al
lea eax, [edi + 4]
push ebx
push eax
call fcn.10080170
add esp, 8
sub ebx, dword [esi*4 + str._b_b_b_a_b_t_n_v]
jmp 0x10082914
push ebx
push edi
call fcn.10080180
mov edx, dword [esp + 0x24]
add esp, 8
cmp edx, 8
jbe 0x10082c77
lea esi, [edi + 8]
add edx, 0xfffffff8
add ebx, 8
mov eax, esi
sub eax, ebx
lea edi, [esi + edx]
cmp eax, 0x10
jge 0x1008294d
sub ebx, esi
lea eax, [ebx + esi]
push eax
push esi
call fcn.10080180
add esi, 8
add esp, 8
cmp esi, edi
jb 0x10082934
jmp 0x10082c77
push ebx
push esi
call fcn.10080150
add esp, 8
cmp edx, 0x10
jle 0x10082c77
lea edx, [esi + 0x10]
lea esi, [ebx + 0x10]
push esi
push edx
call fcn.10080150
add esi, 0x10
add edx, 0x10
push esi
push edx
call fcn.10080150
add edx, 0x10
add esp, 0x10
add esi, 0x10
cmp edx, edi
jb 0x10082966
jmp 0x10082c77
push dword [esp + 0x48]
movq xmm0, qword [esi]
lea eax, [esp + 0x44]
push dword [esp + 0x6c]
push dword [esp + 0x34]
push dword [esp + 0x5c]
push eax
mov eax, dword [esi + 8]
sub esp, 0xc
mov ecx, esp
push dword [esp + 0x40]
movq qword [ecx], xmm0
push dword [esp + 0x54]
mov dword [ecx + 8], eax
push dword [esp + 0x38]
call fcn.100867a0
add esp, 0x2c
jmp 0x10082c6d
movq xmm0, qword [esi]
mov eax, dword [esi + 8]
mov ecx, dword [esp + 0x10]
movq qword [esp + 0x90], xmm0
mov edx, dword [esp + 0x94]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x1c], edx
lea edi, [eax + ecx]
lea ebp, [edx + eax]
mov dword [esp + 0x6c], edi
add eax, dword [esp + 0x14]
mov ebx, edi
sub ebx, dword [esi + 8]
mov dword [esp + 0x54], eax
cmp eax, dword [esp + 0x50]
ja 0x10082c35
mov eax, dword [esp + 0x30]
add ecx, ebp
add eax, 0xffffffe0
cmp ecx, eax
ja 0x10082c35
mov ecx, dword [esp + 0x30]
lea eax, [ebp + 0x20]
sub ecx, dword [esp + 0x10]
cmp ecx, eax
jb 0x10082c35
push dword [esp + 0x14]
mov esi, dword [esp + 0x14]
push esi
call fcn.10080150
mov eax, dword [esp + 0x98]
add esp, 8
cmp eax, 0x10
jbe 0x10082aaf
mov edi, dword [esp + 0x14]
lea edx, [eax - 0x10]
add esi, 0x10
add edi, 0x10
push edi
push esi
lea eax, [esi + edx]
mov dword [esp + 0x28], eax
call fcn.10080150
add esp, 8
cmp edx, 0x10
jle 0x10082aa7
mov edx, dword [esp + 0x20]
add esi, 0x10
add edi, 0x10
push edi
push esi
call fcn.10080150
add edi, 0x10
add esi, 0x10
push edi
push esi
call fcn.10080150
add esi, 0x10
add esp, 0x10
add edi, 0x10
cmp esi, edx
jb 0x10082a86
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x6c]
mov ecx, dword [esp + 0x54]
mov eax, edi
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x2c]
sub eax, ecx
cmp esi, eax
jbe 0x10082b21
mov eax, edi
sub eax, dword [esp + 0x68]
cmp esi, eax
jbe 0x10082adf
mov ebp, 0xffffffec
jmp 0x10082c77
mov esi, dword [esp + 0x48]
mov eax, esi
sub eax, ecx
add ebx, eax
lea eax, [ebx + edx]
cmp eax, esi
ja 0x10082b00
push edx
push ebx
push edi
call fcn.10005029
add esp, 0xc
jmp 0x10082c77
sub esi, ebx
push esi
push ebx
push edi
call fcn.10005029
mov edx, dword [esp + 0x28]
add edi, esi
mov ebx, dword [esp + 0x38]
add esp, 0xc
sub edx, esi
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x1c], edx
cmp esi, 0x10
jb 0x10082b76
lea eax, [edx + edi]
push ebx
push edi
mov dword [esp + 0x28], eax
call fcn.10080150
add esp, 8
cmp edx, 0x10
jle 0x10082c77
lea edx, [edi + 0x10]
mov edi, dword [esp + 0x20]
lea esi, [ebx + 0x10]
nop word [eax + eax]
push esi
push edx
call fcn.10080150
add esi, 0x10
add edx, 0x10
push esi
push edx
call fcn.10080150
add edx, 0x10
add esp, 0x10
add esi, 0x10
cmp edx, edi
jb 0x10082b50
jmp 0x10082c77
cmp esi, 8
jae 0x10082bb2
movzx eax, byte [ebx]
mov byte [edi], al
movzx eax, byte [ebx + 1]
mov byte [edi + 1], al
movzx eax, byte [ebx + 2]
mov byte [edi + 2], al
movzx eax, byte [ebx + 3]
add ebx, dword [esi*4 + 0x10288ea8]
mov byte [edi + 3], al
lea eax, [edi + 4]
push ebx
push eax
call fcn.10080170
add esp, 8
sub ebx, dword [esi*4 + str._b_b_b_a_b_t_n_v]
jmp 0x10082bc0
push ebx
push edi
call fcn.10080180
mov edx, dword [esp + 0x24]
add esp, 8
cmp edx, 8
jbe 0x10082c77
lea esi, [edi + 8]
add edx, 0xfffffff8
add ebx, 8
mov eax, esi
sub eax, ebx
lea edi, [esi + edx]
cmp eax, 0x10
jge 0x10082bf9
sub ebx, esi
lea eax, [ebx + esi]
push eax
push esi
call fcn.10080180
add esi, 8
add esp, 8
cmp esi, edi
jb 0x10082be0
jmp 0x10082c77
push ebx
push esi
call fcn.10080150
add esp, 8
cmp edx, 0x10
jle 0x10082c77
lea edx, [esi + 0x10]
lea esi, [ebx + 0x10]
push esi
push edx
call fcn.10080150
add esi, 0x10
add edx, 0x10
push esi
push edx
call fcn.10080150
add edx, 0x10
add esp, 0x10
add esi, 0x10
cmp edx, edi
jb 0x10082c12
jmp 0x10082c77
push dword [esp + 0x48]
movq xmm0, qword [esi]
lea eax, [esp + 0x44]
push dword [esp + 0x6c]
push dword [esp + 0x34]
push dword [esp + 0x5c]
push eax
mov eax, dword [esi + 8]
sub esp, 0xc
mov ecx, esp
push dword [esp + 0x50]
movq qword [ecx], xmm0
push dword [esp + 0x34]
mov dword [ecx + 8], eax
call fcn.10086660
add esp, 0x28
mov ebp, eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x14], eax
cmp ebp, 0xffffff88
ja 0x10082d33
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x58]
add esi, ebp
inc eax
mov dword [esp + 0x10], esi
mov dword [esp + 0x58], eax
cmp eax, dword [esp + 0x168]
jl 0x100823e0
mov ebp, dword [esp + 0x70]
mov eax, dword [esp + 0xe4]
mov ecx, dword [esp + 0xe0]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x50]
mov dword [ebp + 0x6830], eax
mov eax, dword [esp + 0xe8]
mov dword [ebp + 0x682c], ecx
mov dword [ebp + 0x6834], eax
cmp dword [ebp + 0x75fc], 2
jne 0x10082d09
mov eax, dword [esp + 0x30]
sub ebx, edx
sub eax, esi
cmp ebx, eax
ja 0x100823bc
test esi, esi
je 0x10082cfd
push ebx
push edx
push esi
call fcn.10005029
add esp, 0xc
add esi, ebx
lea edx, [ebp + 0x7600]
lea ebx, [ebp + 0x17600]
mov eax, dword [esp + 0x30]
sub ebx, edx
sub eax, esi
cmp ebx, eax
ja 0x100823bc
test esi, esi
je 0x10082d2a
push ebx
push edx
push esi
call fcn.10005029
add esp, 0xc
add esi, ebx
mov ebp, esi
sub ebp, dword [esp + 0x8c]
mov ecx, dword [esp + 0x14c]
mov eax, ebp
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.10002c9d
add esp, 0x140
ret