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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x130
mov dword [esp + 0x18], edx
mov eax, dword [ebp + 8]
mov dword [esp + 0x14], eax
movzx eax, byte [ebp + 0xc]
mov dword [esp + 0x24], eax
mov esi, dword [esp + 0x18]
lea eax, [esi - 0x68]
mov dword [esp + 0x1c], eax
lea eax, [esi - 0xd0]
mov dword [esp + 0x30], eax
lea eax, [esi - 0x138]
mov dword [esp + 0x2c], eax
mov edi, ecx
mov ecx, esi
sub ecx, edi
mov eax, ecx
sar eax, 3
imul edx, eax, 0xc4ec4ec5
mov eax, edx
mov dword [esp + 0x20], edx
cmp edx, 5
jbe 0x409c4e
cmp ecx, 0x9bf
mov eax, edi
mov dword [esp + 0xc], edi
jle 0x409cd3
cmp dword [esp + 0x14], 0
je 0x409f06
mov eax, dword [esp + 0x20]
shr eax, 1
imul ebx, eax, 0x68
lea esi, [edi + ebx]
cmp ecx, 0x3401
jb 0x4096b0
mov ecx, edi
mov edx, esi
push dword [esp + 0x1c]
call fcn.0040ac40
add esp, 4
lea ecx, [edi + 0x68]
mov eax, dword [esp + 0xc]
lea edi, [ebx + eax]
add edi, 0xffffff98
mov edx, edi
push dword [esp + 0x30]
call fcn.0040ac40
add esp, 4
mov eax, dword [esp + 0xc]
lea ecx, [eax + 0xd0]
mov eax, dword [esp + 0xc]
add ebx, eax
add ebx, 0x68
mov edx, ebx
push dword [esp + 0x2c]
call fcn.0040ac40
add esp, 4
mov ecx, edi
mov edi, dword [esp + 0xc]
mov edx, esi
push ebx
call fcn.0040ac40
add esp, 4
mov ecx, edi
mov edx, esi
call fcn.00409310
lea ebx, [esp + 0x50]
dec dword [esp + 0x14]
cmp byte [esp + 0x24], 0
jne 0x4096e1
jmp 0x4096cf
mov ecx, esi
mov edx, edi
push dword [esp + 0x1c]
call fcn.0040ac40
add esp, 4
lea ebx, [esp + 0x50]
dec dword [esp + 0x14]
cmp byte [esp + 0x24], 0
jne 0x4096e1
lea ecx, [edi - 0x68]
mov edx, edi
call fcn.00408bd0
test al, al
je 0x4099db
movzx eax, byte [edi + 0x10]
mov byte [esp + 0x60], al
movups xmm0, xmmword [edi]
movaps xmmword [esp + 0x50], xmm0
lea eax, [edi + 0x14]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 0x1c]
lea ecx, [esp + 0x64]
mov dword [ecx + 8], eax
movsd xmm0, qword [edi + 0x14]
movsd qword [ecx], xmm0
xorps xmm2, xmm2
movsd qword [edi + 0x14], xmm2
mov dword [edi + 0x1c], 0
lea eax, [edi + 0x20]
mov dword [esp + 0x28], eax
movsd xmm0, qword [edi + 0x50]
movsd qword [ecx + 0x3c], xmm0
movups xmm0, xmmword [edi + 0x40]
movups xmmword [ecx + 0x2c], xmm0
movups xmm0, xmmword [edi + 0x20]
movups xmm1, xmmword [edi + 0x30]
movups xmmword [ecx + 0x1c], xmm1
movups xmmword [ecx + 0xc], xmm0
lea eax, [edi + 0x58]
mov dword [esp + 0x34], eax
mov eax, dword [edi + 0x60]
mov dword [ecx + 0x4c], eax
movsd xmm0, qword [edi + 0x58]
movsd qword [ecx + 0x44], xmm0
movsd qword [edi + 0x58], xmm2
mov dword [edi + 0x60], 0
mov esi, edi
mov edi, 0x68
nop dword [eax]
add esi, 0x68
mov ecx, esi
mov edx, ebx
call fcn.00408bd0
add edi, 0xffffff98
test al, al
jne 0x409770
mov eax, dword [esp + 0x18]
test edi, edi
mov edi, eax
je 0x4097b0
nop dword [eax]
add edi, 0xffffff98
mov ecx, edi
mov edx, ebx
call fcn.00408bd0
test al, al
je 0x409790
jmp 0x4097e0
mov edi, dword [esp + 0x18]
nop word cs:[eax + eax]
cmp esi, edi
jae 0x4097e0
add edi, 0xffffff98
mov ecx, edi
mov edx, ebx
call fcn.00408bd0
test al, al
je 0x4097c0
nop word cs:[eax + eax]
mov eax, edi
mov edi, esi
mov dword [esp + 8], esi
mov dword [esp + 0x20], eax
cmp esi, eax
jae 0x409834
mov edi, dword [esp + 8]
mov ebx, dword [esp + 0x20]
nop dword [eax + eax]
mov ecx, edi
mov edx, ebx
call fcn.00409310
lea esi, [esp + 0x50]
nop dword [eax]
add edi, 0x68
mov ecx, edi
mov edx, esi
call fcn.00408bd0
test al, al
jne 0x409810
add ebx, 0xffffff98
mov ecx, ebx
mov edx, esi
call fcn.00408bd0
test al, al
je 0x409820
cmp edi, ebx
jb 0x409800
lea ebx, [edi - 0x68]
cmp ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
je 0x4098e0
movzx eax, byte [ebx + 0x10]
mov ecx, dword [esp + 0xc]
mov byte [ecx + 0x10], al
mov esi, ebx
movups xmm0, xmmword [ebx]
movups xmmword [ecx], xmm0
test byte [ecx + 0x14], 1
je 0x40986d
mov eax, dword [esp + 0xc]
push dword [eax + 0x1c]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea eax, [edi - 0x54]
mov ecx, dword [eax + 8]
mov edx, dword [esp + 0x40]
mov dword [edx + 8], ecx
movsd xmm0, qword [eax]
movsd qword [edx], xmm0
mov word [edi - 0x54], 0
movsd xmm0, qword [edi - 0x18]
mov eax, dword [esp + 0x28]
movsd qword [eax + 0x30], xmm0
movups xmm0, xmmword [edi - 0x28]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [edi - 0x48]
movups xmm1, xmmword [edi - 0x38]
movups xmmword [eax + 0x10], xmm1
movups xmmword [eax], xmm0
mov ebx, dword [esp + 0x34]
test byte [ebx], 1
je 0x4098c5
mov eax, dword [esp + 0xc]
push dword [eax + 0x60]
call sub.libc.dll_operator_delete_void_
add esp, 4
mov eax, dword [edi - 8]
mov dword [ebx + 8], eax
movsd xmm0, qword [edi - 0x10]
movsd qword [ebx], xmm0
mov word [edi - 0x10], 0
mov ebx, esi
mov esi, dword [esp + 8]
movzx eax, byte [esp + 0x60]
mov byte [ebx + 0x10], al
movaps xmm0, xmmword [esp + 0x50]
movups xmmword [ebx], xmm0
test byte [edi - 0x54], 1
je 0x409901
push dword [edi - 0x4c]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea eax, [edi - 0x54]
lea edx, [esp + 0x64]
mov ecx, dword [edx + 8]
mov dword [eax + 8], ecx
movsd xmm0, qword [edx]
movsd qword [eax], xmm0
mov word [esp + 0x64], 0
movsd xmm0, qword [edx + 0x3c]
movsd qword [edi - 0x18], xmm0
movups xmm0, xmmword [edx + 0x2c]
movups xmmword [edi - 0x28], xmm0
movups xmm0, xmmword [edx + 0xc]
movups xmm1, xmmword [edx + 0x1c]
movups xmmword [edi - 0x38], xmm1
movups xmmword [edi - 0x48], xmm0
test byte [edi - 0x10], 1
je 0x409950
push dword [edi - 8]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea eax, [edi - 0x10]
lea edx, [esp + 0x64]
mov ecx, dword [edx + 0x4c]
mov dword [eax + 8], ecx
movsd xmm0, qword [edx + 0x44]
movsd qword [eax], xmm0
test byte [esp + 0x64], 1
je 0x409979
push dword [esp + 0x6c]
call sub.libc.dll_operator_delete_void_
add esp, 4
cmp esi, dword [esp + 0x20]
mov esi, dword [esp + 0x18]
jb 0x4099b1
mov ecx, dword [esp + 0xc]
mov dword [esp + 8], ebx
mov edx, ebx
call fcn.0040acb0
mov ebx, eax
mov ecx, edi
mov edx, esi
call fcn.0040acb0
test al, al
jne 0x409c35
test bl, bl
mov ebx, dword [esp + 8]
jne 0x4095e3
xor eax, eax
cmp byte [esp + 0x24], 0
setne al
mov ecx, dword [esp + 0xc]
mov edx, ebx
push eax
push dword [esp + 0x18]
call fcn.004095a0
add esp, 8
mov dword [esp + 0x24], 0
jmp 0x4095e3
movzx eax, byte [edi + 0x10]
mov byte [esp + 0x60], al
movups xmm0, xmmword [edi]
movaps xmmword [esp + 0x50], xmm0
mov eax, dword [edi + 0x1c]
lea ecx, [esp + 0x64]
mov dword [ecx + 8], eax
movsd xmm0, qword [edi + 0x14]
movsd qword [ecx], xmm0
xorps xmm2, xmm2
movsd qword [edi + 0x14], xmm2
mov dword [edi + 0x1c], 0
movsd xmm0, qword [edi + 0x50]
movsd qword [ecx + 0x3c], xmm0
movups xmm0, xmmword [edi + 0x40]
movups xmmword [ecx + 0x2c], xmm0
movups xmm0, xmmword [edi + 0x20]
movups xmm1, xmmword [edi + 0x30]
movups xmmword [ecx + 0x1c], xmm1
movups xmmword [ecx + 0xc], xmm0
mov eax, dword [edi + 0x60]
mov dword [ecx + 0x4c], eax
movsd xmm0, qword [edi + 0x58]
movsd qword [ecx + 0x44], xmm0
movsd qword [edi + 0x58], xmm2
mov dword [edi + 0x60], 0
mov ecx, ebx
mov edx, dword [esp + 0x1c]
call fcn.00408bd0
test al, al
je 0x409a72
mov esi, dword [esp + 0x18]
nop
add edi, 0x68
mov ecx, ebx
mov edx, edi
call fcn.00408bd0
test al, al
je 0x409a60
jmp 0x409a96
lea ecx, [edi + 0x68]
mov esi, dword [esp + 0x18]
nop dword [eax]
mov edi, ecx
cmp ecx, esi
jae 0x409a96
mov ecx, ebx
mov edx, edi
call fcn.00408bd0
lea ecx, [edi + 0x68]
test al, al
je 0x409a80
mov eax, esi
cmp edi, esi
jae 0x409af0
mov esi, dword [esp + 0x18]
add esi, 0xffffff98
mov ecx, ebx
mov edx, esi
call fcn.00408bd0
test al, al
jne 0x409aa0
jmp 0x409af0
mov ecx, edi
mov edx, esi
call fcn.00409310
nop dword [eax]
add edi, 0x68
mov ecx, ebx
mov edx, edi
call fcn.00408bd0
test al, al
je 0x409ad0
add esi, 0xffffff98
mov ecx, ebx
mov edx, esi
call fcn.00408bd0
test al, al
jne 0x409ae0
cmp edi, esi
jb 0x409ac0
lea ecx, [edi - 0x68]
mov esi, dword [esp + 0xc]
cmp ecx, esi
je 0x409b8f
movzx eax, byte [ecx + 0x10]
mov byte [esi + 0x10], al
mov dword [esp + 8], ecx
movups xmm0, xmmword [ecx]
movups xmmword [esi], xmm0
test byte [esi + 0x14], 1
je 0x409b25
push dword [esi + 0x1c]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea eax, [esi + 0x14]
lea ecx, [edi - 0x54]
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
movsd xmm0, qword [ecx]
movsd qword [eax], xmm0
lea eax, [esi + 0x20]
mov word [edi - 0x54], 0
movsd xmm0, qword [edi - 0x18]
movsd qword [eax + 0x30], xmm0
movups xmm0, xmmword [edi - 0x28]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [edi - 0x48]
movups xmm1, xmmword [edi - 0x38]
movups xmmword [eax + 0x10], xmm1
movups xmmword [eax], xmm0
lea ebx, [esi + 0x58]
test byte [ebx], 1
je 0x409b76
push dword [esi + 0x60]
call sub.libc.dll_operator_delete_void_
add esp, 4
mov eax, dword [edi - 8]
mov dword [ebx + 8], eax
movsd xmm0, qword [edi - 0x10]
movsd qword [ebx], xmm0
mov word [edi - 0x10], 0
mov ecx, dword [esp + 8]
movzx eax, byte [esp + 0x60]
mov byte [ecx + 0x10], al
movaps xmm0, xmmword [esp + 0x50]
movups xmmword [ecx], xmm0
test byte [edi - 0x54], 1
je 0x409bb0
push dword [edi - 0x4c]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea eax, [edi - 0x54]
lea edx, [esp + 0x64]
mov ecx, dword [edx + 8]
mov dword [eax + 8], ecx
movsd xmm0, qword [edx]
movsd qword [eax], xmm0
mov word [esp + 0x64], 0
movsd xmm0, qword [edx + 0x3c]
movsd qword [edi - 0x18], xmm0
movups xmm0, xmmword [edx + 0x2c]
movups xmmword [edi - 0x28], xmm0
movups xmm0, xmmword [edx + 0xc]
movups xmm1, xmmword [edx + 0x1c]
movups xmmword [edi - 0x38], xmm1
movups xmmword [edi - 0x48], xmm0
test byte [edi - 0x10], 1
mov esi, dword [esp + 0x18]
je 0x409c03
push dword [edi - 8]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea eax, [edi - 0x10]
lea edx, [esp + 0x64]
mov ecx, dword [edx + 0x4c]
mov dword [eax + 8], ecx
movsd xmm0, qword [edx + 0x44]
movsd qword [eax], xmm0
test byte [esp + 0x64], 1
je 0x4095e3
push dword [esp + 0x6c]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x4095e3
mov eax, dword [esp + 8]
mov dword [esp + 0x18], eax
test bl, bl
mov ecx, dword [esp + 0xc]
je 0x4095c2
jmp case.0x409c52.0
mov eax, dword [esp + 0x20]
jmp dword [eax*4 + 0x41f4a0]
mov ecx, dword [esp + 0x1c]
mov edx, edi
call fcn.00408bd0
test al, al
je case.0x409c52.0
mov ecx, edi
mov edx, dword [esp + 0x1c]
call fcn.00409310
jmp case.0x409c52.0
lea edx, [edi + 0x68]
mov ecx, edi
push dword [esp + 0x1c]
call fcn.0040ac40
add esp, 4
jmp case.0x409c52.0
lea edx, [edi + 0x68]
lea eax, [edi + 0xd0]
lea esi, [edi + 0x138]
mov ecx, edi
push dword [esp + 0x1c]
push esi
push eax
call fcn.0040abb0
add esp, 0xc
jmp case.0x409c52.0
lea edx, [edi + 0x68]
lea eax, [edi + 0xd0]
mov ecx, edi
push dword [esp + 0x1c]
push eax
call fcn.0040b010
add esp, 8
jmp case.0x409c52.0
cmp byte [esp + 0x24], 0
je 0x40a92e
cmp edi, esi
je case.0x409c52.0
lea eax, [edi + 0x68]
cmp eax, dword [esp + 0x18]
je case.0x409c52.0
xor esi, esi
mov ebx, edi
jmp 0x409d2d
lea ecx, [esp + 0x64]
mov eax, dword [ecx + 0x4c]
mov dword [esi + 8], eax
movsd xmm0, qword [ecx + 0x44]
movsd qword [esi], xmm0
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x14]
lea eax, [edi + 0x68]
add esi, 0xffffff98
mov ebx, edi
cmp eax, dword [esp + 0x18]
je case.0x409c52.0
mov edi, eax
mov ecx, eax
mov edx, ebx
call fcn.00408bd0
test al, al
je 0x409d1b
movzx eax, byte [edi + 0x10]
mov byte [esp + 0x60], al
movups xmm0, xmmword [edi]
movaps xmmword [esp + 0x50], xmm0
mov eax, dword [ebx + 0x84]
lea ecx, [esp + 0x64]
mov dword [ecx + 8], eax
movsd xmm0, qword [ebx + 0x7c]
movsd qword [ecx], xmm0
xorps xmm2, xmm2
movsd qword [ebx + 0x7c], xmm2
mov dword [ebx + 0x84], 0
movsd xmm0, qword [ebx + 0xb8]
movsd qword [ecx + 0x3c], xmm0
movups xmm0, xmmword [ebx + 0xa8]
movups xmmword [ecx + 0x2c], xmm0
movups xmm0, xmmword [ebx + 0x88]
movups xmm1, xmmword [ebx + 0x98]
movups xmmword [ecx + 0x1c], xmm1
movups xmmword [ecx + 0xc], xmm0
mov eax, dword [ebx + 0xc8]
mov dword [ecx + 0x4c], eax
movsd xmm0, qword [ebx + 0xc0]
movsd qword [ecx + 0x44], xmm0
movsd qword [ebx + 0xc0], xmm2
mov dword [ebx + 0xc8], 0
mov dword [esp + 0x20], esi
mov dword [esp + 0x14], edi
nop word cs:[eax + eax]
mov ebx, edi
movzx eax, byte [edi - 0x58]
mov byte [edi + 0x10], al
movups xmm0, xmmword [edi - 0x68]
movups xmmword [edi], xmm0
test byte [edi + 0x14], 1
je 0x409e01
push dword [ebx + 0x1c]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea eax, [ebx + 0x14]
lea edx, [ebx - 0x54]
mov ecx, dword [edx + 8]
mov dword [eax + 8], ecx
mov dword [esp + 8], edx
movsd xmm0, qword [edx]
movsd qword [eax], xmm0
mov word [ebx - 0x54], 0
movups xmm0, xmmword [ebx - 0x48]
movups xmm1, xmmword [ebx - 0x38]
movups xmmword [ebx + 0x20], xmm0
movups xmmword [ebx + 0x30], xmm1
movups xmm0, xmmword [ebx - 0x28]
movups xmmword [ebx + 0x40], xmm0
movsd xmm0, qword [ebx - 0x18]
movsd qword [ebx + 0x50], xmm0
test byte [ebx + 0x58], 1
mov edi, dword [esp + 0xc]
je 0x409e56
push dword [ebx + 0x60]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea eax, [ebx + 0x58]
mov ecx, dword [ebx - 8]
mov dword [eax + 8], ecx
movsd xmm0, qword [ebx - 0x10]
movsd qword [eax], xmm0
mov word [ebx - 0x10], 0
test esi, esi
je 0x409e8f
lea edx, [ebx - 0xd0]
lea ecx, [esp + 0x50]
call fcn.00408bd0
lea edi, [ebx - 0x68]
add esi, 0x68
test al, al
jne 0x409de0
movzx eax, byte [esp + 0x60]
mov byte [edi + 0x10], al
movaps xmm0, xmmword [esp + 0x50]
movups xmmword [edi], xmm0
test byte [ebx - 0x54], 1
je 0x409eb0
push dword [edi + 0x1c]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea esi, [ebx - 0x10]
add ebx, 0xffffffb8
lea ecx, [esp + 0x64]
mov eax, dword [ecx + 8]
mov edx, dword [esp + 8]
mov dword [edx + 8], eax
movsd xmm0, qword [ecx]
movsd qword [edx], xmm0
movsd xmm0, qword [ecx + 0x3c]
movsd qword [ebx + 0x30], xmm0
movups xmm0, xmmword [ecx + 0x2c]
movups xmmword [ebx + 0x20], xmm0
movups xmm0, xmmword [ecx + 0xc]
movups xmm1, xmmword [ecx + 0x1c]
movups xmmword [ebx + 0x10], xmm1
movups xmmword [ebx], xmm0
test byte [esi], 1
je 0x409d00
push dword [edi + 0x60]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x409d00
cmp edi, esi
je case.0x409c52.0
mov dword [esp + 0x40], ecx
mov eax, dword [esp + 0x20]
add eax, 0xfffffffe
shr eax, 1
mov dword [esp + 0x24], eax
jmp 0x409f54
lea ecx, [esp + 0x64]
mov eax, dword [ecx + 0x4c]
mov dword [edi + 8], eax
movsd xmm0, qword [ecx + 0x44]
movsd qword [edi], xmm0
mov edi, dword [esp + 0xc]
mov eax, dword [esp + 0x28]
sub eax, 1
jb 0x40a1e9
cmp dword [esp + 0x24], eax
jl 0x409f4b
lea edx, [eax*2 + 1]
imul ecx, edx, 0x68
add ecx, edi
lea esi, [eax*2 + 2]
cmp esi, dword [esp + 0x20]
mov dword [esp + 0x28], eax
jge 0x409fb0
lea ebx, [ecx + 0x68]
mov dword [esp + 8], ebx
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x14]
mov ebx, edx
mov edx, dword [esp + 8]
call fcn.00408bd0
mov ecx, dword [esp + 0x14]
test al, al
mov eax, dword [esp + 0x28]
cmovne ecx, dword [esp + 8]
cmovne ebx, esi
mov dword [esp + 8], ebx
jmp 0x409fb4
mov dword [esp + 8], edx
imul esi, eax, 0x68
lea ebx, [edi + esi]
mov dword [esp + 0x14], ecx
mov edx, ebx
call fcn.00408bd0
test al, al
mov eax, dword [esp + 0x28]
jne 0x409f4b
movzx eax, byte [ebx + 0x10]
mov byte [esp + 0x60], al
movups xmm0, xmmword [ebx]
movaps xmmword [esp + 0x50], xmm0
mov eax, dword [edi + esi + 0x1c]
lea ecx, [esp + 0x64]
mov dword [ecx + 8], eax
movsd xmm0, qword [edi + esi + 0x14]
movsd qword [ecx], xmm0
xorps xmm2, xmm2
movsd qword [edi + esi + 0x14], xmm2
mov dword [edi + esi + 0x1c], 0
movsd xmm0, qword [edi + esi + 0x50]
movsd qword [ecx + 0x3c], xmm0
movups xmm0, xmmword [edi + esi + 0x40]
movups xmmword [ecx + 0x2c], xmm0
movups xmm0, xmmword [edi + esi + 0x20]
movups xmm1, xmmword [edi + esi + 0x30]
movups xmmword [ecx + 0x1c], xmm1
movups xmmword [ecx + 0xc], xmm0
mov eax, dword [edi + esi + 0x60]
mov dword [ecx + 0x4c], eax
movsd xmm0, qword [edi + esi + 0x58]
movsd qword [ecx + 0x44], xmm0
movsd qword [edi + esi + 0x58], xmm2
mov dword [edi + esi + 0x60], 0
mov edx, dword [esp + 8]
mov esi, dword [esp + 0x14]
jmp 0x40a07d
mov esi, ebx
mov ecx, esi
lea edx, [esp + 0x50]
call fcn.00408bd0
mov ecx, dword [esp + 0x14]
mov ebx, ecx
mov edx, edi
test al, al
jne 0x40a170
movzx eax, byte [esi + 0x10]
mov byte [ebx + 0x10], al
movups xmm0, xmmword [esi]
movups xmmword [ebx], xmm0
test byte [ebx + 0x14], 1
mov dword [esp + 8], edx
je 0x40a0a3
push dword [ebx + 0x1c]
call sub.libc.dll_operator_delete_void_
mov edx, dword [esp + 0xc]
add esp, 4
lea eax, [ebx + 0x14]
lea edi, [esi + 0x14]
mov ecx, dword [edi + 8]
mov dword [eax + 8], ecx
mov dword [esp + 0x34], edi
movsd xmm0, qword [edi]
movsd qword [eax], xmm0
mov word [esi + 0x14], 0
movsd xmm0, qword [esi + 0x50]
movsd qword [ebx + 0x50], xmm0
movups xmm0, xmmword [esi + 0x40]
movups xmmword [ebx + 0x40], xmm0
movups xmm0, xmmword [esi + 0x20]
movups xmm1, xmmword [esi + 0x30]
movups xmmword [ebx + 0x30], xmm1
movups xmmword [ebx + 0x20], xmm0
test byte [ebx + 0x58], 1
je 0x40a0f8
push dword [ebx + 0x60]
call sub.libc.dll_operator_delete_void_
mov edx, dword [esp + 0xc]
add esp, 4
add ebx, 0x58
mov eax, dword [esi + 0x60]
mov dword [ebx + 8], eax
movsd xmm0, qword [esi + 0x58]
movsd qword [ebx], xmm0
mov word [esi + 0x58], 0
cmp dword [esp + 0x24], edx
mov ecx, esi
mov eax, dword [esp + 0xc]
jl 0x40a170
mov dword [esp + 0x14], ecx
lea ecx, [edx*2 + 1]
mov dword [esp + 0x1c], ecx
imul esi, ecx, 0x68
add esi, eax
lea edi, [edx*2 + 2]
cmp edi, dword [esp + 0x20]
jge 0x40a160
lea ebx, [esi + 0x68]
mov ecx, esi
mov edx, ebx
call fcn.00408bd0
test al, al
jne 0x40a060
mov ebx, esi
mov edi, dword [esp + 0x1c]
jmp 0x40a060
mov edi, dword [esp + 0x1c]
jmp 0x40a062
movzx eax, byte [esp + 0x60]
mov byte [ecx + 0x10], al
movaps xmm0, xmmword [esp + 0x50]
movups xmmword [ecx], xmm0
test byte [ecx + 0x14], 1
mov esi, ecx
je 0x40a193
push dword [esi + 0x1c]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea ecx, [esp + 0x64]
mov eax, dword [ecx + 8]
mov edx, dword [esp + 0x34]
mov dword [edx + 8], eax
movsd xmm0, qword [ecx]
movsd qword [edx], xmm0
lea eax, [esi + 0x20]
movsd xmm0, qword [ecx + 0x3c]
movsd qword [eax + 0x30], xmm0
movups xmm0, xmmword [ecx + 0x2c]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [ecx + 0xc]
movups xmm1, xmmword [ecx + 0x1c]
movups xmmword [eax + 0x10], xmm1
movups xmmword [eax], xmm0
lea edi, [esi + 0x58]
test byte [edi], 1
je 0x409f30
push dword [esi + 0x60]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x409f30
mov ecx, 0x4ec4ec4f
mov eax, dword [esp + 0x40]
mul ecx
shr edx, 5
lea eax, [edi + 0x14]
mov dword [esp + 0xcc], eax
lea eax, [edi + 0x16]
mov dword [esp + 0xc8], eax
lea eax, [edi + 0x20]
mov dword [esp + 0xc4], eax
lea eax, [edi + 0x58]
mov dword [esp + 0xc0], eax
lea eax, [edi + 0x5a]
mov dword [esp + 0xbc], eax
jmp 0x40a2c5
movzx eax, byte [esp + 0x13]
mov byte [ecx + 0x14], al
movzx eax, byte [esp + 0x2c]
mov byte [ecx + 0x15], al
mov eax, dword [esp + 0x38]
mov dword [ecx + 0x16], eax
movzx eax, word [esp + 0x3c]
mov word [ecx + 0x1a], ax
mov eax, dword [esp + 0x30]
mov dword [ecx + 0x1c], eax
movsd xmm0, qword [esp + 0x100]
mov eax, dword [esp + 0x1c]
movsd qword [eax + 0x30], xmm0
movaps xmm0, xmmword [esp + 0xf0]
movups xmmword [eax + 0x20], xmm0
movaps xmm0, xmmword [esp + 0xd0]
movaps xmm1, xmmword [esp + 0xe0]
movups xmmword [eax + 0x10], xmm1
movups xmmword [eax], xmm0
mov esi, dword [esp + 0x24]
movzx eax, byte [esp + 0x28]
mov byte [ecx + 0x58], al
movzx eax, byte [esp + 0x34]
mov byte [ecx + 0x59], al
mov eax, dword [esp + 0x44]
mov dword [ecx + 0x5a], eax
movzx eax, word [esp + 0x48]
mov word [ecx + 0x5e], ax
mov dword [ecx + 0x60], esi
mov ecx, dword [esp + 0x20]
lea edx, [ecx - 1]
cmp ecx, 2
mov edi, dword [esp + 0xc]
jle case.0x409c52.0
mov eax, dword [esp + 0x18]
mov dword [esp + 0x40], eax
movups xmm0, xmmword [edi]
movaps xmmword [esp + 0x110], xmm0
movzx eax, byte [edi + 0x10]
mov byte [esp + 0x120], al
movzx eax, byte [edi + 0x14]
mov byte [esp + 0x13], al
movzx eax, byte [edi + 0x15]
mov byte [esp + 0x2c], al
mov ecx, dword [esp + 0xc8]
movzx eax, word [ecx + 4]
mov word [esp + 0x3c], ax
mov eax, dword [ecx]
mov dword [esp + 0x38], eax
mov eax, dword [edi + 0x1c]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xcc]
xorps xmm2, xmm2
movsd qword [eax], xmm2
mov dword [eax + 8], 0
mov eax, dword [esp + 0xc4]
movsd xmm0, qword [eax + 0x30]
movsd qword [esp + 0x100], xmm0
movups xmm0, xmmword [eax + 0x20]
movaps xmmword [esp + 0xf0], xmm0
movups xmm0, xmmword [eax]
movups xmm1, xmmword [eax + 0x10]
movaps xmmword [esp + 0xe0], xmm1
movaps xmmword [esp + 0xd0], xmm0
movzx eax, byte [edi + 0x58]
mov byte [esp + 0x28], al
movzx eax, byte [edi + 0x59]
mov byte [esp + 0x34], al
mov ecx, dword [esp + 0xbc]
movzx eax, word [ecx + 4]
mov word [esp + 0x48], ax
mov eax, dword [ecx]
mov dword [esp + 0x44], eax
mov eax, dword [edi + 0x60]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xc0]
movsd qword [eax], xmm2
mov dword [eax + 8], 0
mov dword [esp + 0x20], edx
lea eax, [edx - 2]
shr eax, 1
mov dword [esp + 0x18], eax
xor ebx, ebx
jmp 0x40a3d4
add edi, 0x58
mov eax, dword [ecx + 0x60]
mov dword [edi + 8], eax
movsd xmm0, qword [ecx + 0x58]
movsd qword [edi], xmm0
mov word [ecx + 0x58], 0
mov edi, ecx
cmp ebx, dword [esp + 0x18]
jg 0x40a4b0
mov eax, ebx
imul esi, ebx, 0x68
lea ecx, [edi + esi]
add ecx, 0x68
lea ebx, [ebx*2 + 2]
lea eax, [eax*2 + 1]
cmp ebx, dword [esp + 0x20]
jge 0x40a420
mov dword [esp + 0x14], eax
add esi, edi
add esi, 0xd0
mov dword [esp + 8], ecx
mov edx, esi
call fcn.00408bd0
test al, al
jne 0x40a416
mov esi, dword [esp + 8]
mov ebx, dword [esp + 0x14]
mov ecx, esi
jmp 0x40a422
mov ebx, eax
movzx eax, byte [ecx + 0x10]
mov byte [edi + 0x10], al
movups xmm0, xmmword [ecx]
movups xmmword [edi], xmm0
test byte [edi + 0x14], 1
mov dword [esp + 8], ecx
je 0x40a448
push dword [edi + 0x1c]
call sub.libc.dll_operator_delete_void_
mov ecx, dword [esp + 0xc]
add esp, 4
lea eax, [edi + 0x14]
lea esi, [ecx + 0x14]
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
movsd xmm0, qword [esi]
movsd qword [eax], xmm0
mov word [ecx + 0x14], 0
movsd xmm0, qword [ecx + 0x50]
movsd qword [edi + 0x50], xmm0
movups xmm0, xmmword [ecx + 0x40]
movups xmmword [edi + 0x40], xmm0
movups xmm0, xmmword [ecx + 0x20]
movups xmm1, xmmword [ecx + 0x30]
movups xmmword [edi + 0x30], xmm1
movups xmmword [edi + 0x20], xmm0
test byte [edi + 0x58], 1
je 0x40a3b0
push dword [edi + 0x60]
call sub.libc.dll_operator_delete_void_
mov ecx, dword [esp + 0xc]
add esp, 4
jmp 0x40a3b0
lea eax, [ecx + 0x20]
mov dword [esp + 0x1c], eax
mov edi, dword [esp + 0x40]
lea edx, [edi - 0x68]
cmp ecx, edx
mov dword [esp + 0x18], edx
je 0x40a5e0
movzx eax, byte [edx + 0x10]
mov byte [ecx + 0x10], al
movups xmm0, xmmword [edx]
movups xmmword [ecx], xmm0
test byte [ecx + 0x14], 1
je 0x40a4ec
push dword [ecx + 0x1c]
call sub.libc.dll_operator_delete_void_
mov ecx, dword [esp + 0xc]
add esp, 4
lea eax, [edi - 0x54]
mov edx, dword [eax + 8]
mov dword [esi + 8], edx
movsd xmm0, qword [eax]
lea edx, [ecx + 0x58]
movsd qword [esi], xmm0
mov word [edi - 0x54], 0
movsd xmm0, qword [edi - 0x18]
mov eax, dword [esp + 0x1c]
movsd qword [eax + 0x30], xmm0
movups xmm0, xmmword [edi - 0x28]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [edi - 0x48]
movups xmm1, xmmword [edi - 0x38]
movups xmmword [eax + 0x10], xmm1
movups xmmword [eax], xmm0
test byte [edx], 1
mov dword [esp + 0x4c], edx
je 0x40a547
push dword [ecx + 0x60]
call sub.libc.dll_operator_delete_void_
mov edx, dword [esp + 0x50]
mov ecx, dword [esp + 0xc]
add esp, 4
lea ebx, [edi - 0x48]
mov eax, dword [edi - 8]
mov dword [edx + 8], eax
movsd xmm0, qword [edi - 0x10]
movsd qword [edx], xmm0
mov word [edi - 0x10], 0
movzx eax, byte [esp + 0x120]
mov edx, dword [esp + 0x18]
mov byte [edx + 0x10], al
movaps xmm0, xmmword [esp + 0x110]
movups xmmword [edx], xmm0
test byte [edi - 0x54], 1
jne 0x40a690
movzx eax, byte [esp + 0x13]
mov byte [edi - 0x54], al
movzx eax, byte [esp + 0x2c]
mov byte [edi - 0x53], al
mov eax, dword [esp + 0x38]
mov dword [edi - 0x52], eax
movzx eax, word [esp + 0x3c]
mov word [edi - 0x4e], ax
mov eax, dword [esp + 0x30]
mov dword [edi - 0x4c], eax
movsd xmm0, qword [esp + 0x100]
movsd qword [ebx + 0x30], xmm0
movaps xmm0, xmmword [esp + 0xf0]
movups xmmword [ebx + 0x20], xmm0
movaps xmm0, xmmword [esp + 0xd0]
movaps xmm1, xmmword [esp + 0xe0]
movups xmmword [ebx + 0x10], xmm1
movups xmmword [ebx], xmm0
jmp 0x40a70c
movzx eax, byte [esp + 0x120]
mov byte [ecx + 0x10], al
movaps xmm0, xmmword [esp + 0x110]
movups xmmword [ecx], xmm0
test byte [ecx + 0x14], 1
je 0x40a22e
push dword [ecx + 0x1c]
call sub.libc.dll_operator_delete_void_
mov ecx, dword [esp + 0xc]
add esp, 4
test byte [ecx + 0x58], 1
movzx eax, byte [esp + 0x13]
mov byte [ecx + 0x14], al
movzx eax, byte [esp + 0x2c]
mov byte [ecx + 0x15], al
mov eax, dword [esp + 0x38]
mov dword [ecx + 0x16], eax
movzx eax, word [esp + 0x3c]
mov word [ecx + 0x1a], ax
mov eax, dword [esp + 0x30]
mov dword [ecx + 0x1c], eax
movsd xmm0, qword [esp + 0x100]
mov eax, dword [esp + 0x1c]
movsd qword [eax + 0x30], xmm0
movaps xmm0, xmmword [esp + 0xf0]
movups xmmword [eax + 0x20], xmm0
movaps xmm0, xmmword [esp + 0xd0]
movaps xmm1, xmmword [esp + 0xe0]
movups xmmword [eax + 0x10], xmm1
movups xmmword [eax], xmm0
mov esi, dword [esp + 0x24]
je 0x40a28e
push dword [ecx + 0x60]
call sub.libc.dll_operator_delete_void_
mov ecx, dword [esp + 0xc]
add esp, 4
jmp 0x40a28e
push dword [edi - 0x4c]
call sub.libc.dll_operator_delete_void_
mov ecx, dword [esp + 0xc]
add esp, 4
test byte [edi - 0x10], 1
movzx eax, byte [esp + 0x13]
mov byte [edi - 0x54], al
movzx eax, byte [esp + 0x2c]
mov byte [edi - 0x53], al
mov eax, dword [esp + 0x38]
mov dword [edi - 0x52], eax
movzx eax, word [esp + 0x3c]
mov word [edi - 0x4e], ax
mov eax, dword [esp + 0x30]
mov dword [edi - 0x4c], eax
movsd xmm0, qword [esp + 0x100]
movsd qword [ebx + 0x30], xmm0
movaps xmm0, xmmword [esp + 0xf0]
movups xmmword [ebx + 0x20], xmm0
movaps xmm0, xmmword [esp + 0xd0]
movaps xmm1, xmmword [esp + 0xe0]
movups xmmword [ebx + 0x10], xmm1
movups xmmword [ebx], xmm0
je 0x40a70c
push dword [edi - 8]
call sub.libc.dll_operator_delete_void_
mov ecx, dword [esp + 0xc]
add esp, 4
movzx eax, byte [esp + 0x28]
mov byte [edi - 0x10], al
movzx eax, byte [esp + 0x34]
mov byte [edi - 0xf], al
mov eax, dword [esp + 0x44]
mov dword [edi - 0xe], eax
movzx eax, word [esp + 0x48]
mov word [edi - 0xa], ax
mov eax, dword [esp + 0x24]
mov dword [edi - 8], eax
lea eax, [ecx + 0x68]
sub eax, dword [esp + 0xc]
cmp eax, 0x69
jl 0x40a2b1
mov ecx, 0x4ec4ec4f
mul ecx
shr edx, 5
add edx, 0xfffffffe
shr edx, 1
mov dword [esp + 0x14], edx
imul edi, edx, 0x68
add edi, dword [esp + 0xc]
mov ecx, edi
mov edx, dword [esp + 8]
call fcn.00408bd0
mov ebx, dword [esp + 8]
test al, al
je 0x40a2b1
movzx eax, byte [ebx + 0x10]
mov byte [esp + 0x60], al
movups xmm0, xmmword [ebx]
movaps xmmword [esp + 0x50], xmm0
mov eax, dword [esi + 8]
lea ecx, [esp + 0x64]
mov dword [ecx + 8], eax
movsd xmm0, qword [esi]
movsd qword [ecx], xmm0
xorps xmm2, xmm2
movsd qword [esi], xmm2
mov dword [esi + 8], 0
mov eax, dword [esp + 0x1c]
movsd xmm0, qword [eax + 0x30]
movsd qword [ecx + 0x3c], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [ecx + 0x2c], xmm0
movups xmm0, xmmword [eax]
movups xmm1, xmmword [eax + 0x10]
movups xmmword [ecx + 0x1c], xmm1
movups xmmword [ecx + 0xc], xmm0
mov edx, dword [esp + 0x4c]
mov eax, dword [edx + 8]
mov dword [ecx + 0x4c], eax
movsd xmm0, qword [edx]
movsd qword [ecx + 0x44], xmm0
movsd qword [edx], xmm2
mov dword [edx + 8], 0
mov esi, dword [esp + 0x14]
nop dword [eax + eax]
mov dword [esp + 0x14], esi
movzx eax, byte [edi + 0x10]
mov byte [ebx + 0x10], al
movups xmm0, xmmword [edi]
movups xmmword [ebx], xmm0
test byte [ebx + 0x14], 1
je 0x40a812
push dword [ebx + 0x1c]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea eax, [ebx + 0x14]
lea edx, [edi + 0x14]
mov ecx, dword [edx + 8]
mov dword [eax + 8], ecx
mov dword [esp + 8], edx
movsd xmm0, qword [edx]
movsd qword [eax], xmm0
mov word [edi + 0x14], 0
movsd xmm0, qword [edi + 0x50]
movsd qword [ebx + 0x50], xmm0
movups xmm0, xmmword [edi + 0x40]
movups xmmword [ebx + 0x40], xmm0
movups xmm0, xmmword [edi + 0x20]
movups xmm1, xmmword [edi + 0x30]
movups xmmword [ebx + 0x30], xmm1
movups xmmword [ebx + 0x20], xmm0
test byte [ebx + 0x58], 1
mov esi, dword [esp + 0x14]
je 0x40a867
push dword [ebx + 0x60]
call sub.libc.dll_operator_delete_void_
add esp, 4
add ebx, 0x58
mov eax, dword [edi + 0x60]
mov dword [ebx + 8], eax
movsd xmm0, qword [edi + 0x58]
movsd qword [ebx], xmm0
mov word [edi + 0x58], 0
test esi, esi
mov ecx, edi
je 0x40a8a6
dec esi
shr esi, 1
imul edi, esi, 0x68
add edi, dword [esp + 0xc]
mov ebx, ecx
mov ecx, edi
lea edx, [esp + 0x50]
call fcn.00408bd0
mov ecx, ebx
test al, al
jne 0x40a7f0
movzx eax, byte [esp + 0x60]
mov byte [ecx + 0x10], al
movaps xmm0, xmmword [esp + 0x50]
movups xmmword [ecx], xmm0
test byte [ecx + 0x14], 1
mov esi, ecx
je 0x40a8c9
push dword [esi + 0x1c]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea ecx, [esp + 0x64]
mov eax, dword [ecx + 8]
mov edx, dword [esp + 8]
mov dword [edx + 8], eax
movsd xmm0, qword [ecx]
movsd qword [edx], xmm0
lea eax, [esi + 0x20]
movsd xmm0, qword [ecx + 0x3c]
movsd qword [eax + 0x30], xmm0
movups xmm0, xmmword [ecx + 0x2c]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [ecx + 0xc]
movups xmm1, xmmword [ecx + 0x1c]
movups xmmword [eax + 0x10], xmm1
movups xmmword [eax], xmm0
lea edi, [esi + 0x58]
test byte [edi], 1
je 0x40a916
push dword [esi + 0x60]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea ecx, [esp + 0x64]
mov eax, dword [ecx + 0x4c]
mov dword [edi + 8], eax
movsd xmm0, qword [ecx + 0x44]
movsd qword [edi], xmm0
jmp 0x40a2b1
cmp edi, esi
je case.0x409c52.0
lea eax, [edi + 0x68]
cmp eax, dword [esp + 0x18]
je case.0x409c52.0
lea ebx, [edi - 0x68]
jmp 0x40a97d
lea ecx, [esp + 0x64]
mov eax, dword [ecx + 0x4c]
mov dword [edi + 8], eax
movsd xmm0, qword [ecx + 0x44]
movsd qword [edi], xmm0
mov ebx, dword [esp + 8]
mov esi, dword [esp + 0x20]
lea eax, [esi + 0x68]
add ebx, 0x68
mov edi, esi
cmp eax, dword [esp + 0x18]
je case.0x409c52.0
mov esi, eax
mov ecx, eax
mov edx, edi
call fcn.00408bd0
test al, al
je 0x40a96b
movzx eax, byte [esi + 0x10]
mov byte [esp + 0x60], al
mov dword [esp + 0x20], esi
movups xmm0, xmmword [esi]
movaps xmmword [esp + 0x50], xmm0
mov eax, dword [edi + 0x84]
lea ecx, [esp + 0x64]
mov dword [ecx + 8], eax
movsd xmm0, qword [edi + 0x7c]
movsd qword [ecx], xmm0
xorps xmm2, xmm2
movsd qword [edi + 0x7c], xmm2
mov dword [edi + 0x84], 0
movsd xmm0, qword [edi + 0xb8]
movsd qword [ecx + 0x3c], xmm0
movups xmm0, xmmword [edi + 0xa8]
movups xmmword [ecx + 0x2c], xmm0
movups xmm0, xmmword [edi + 0x88]
movups xmm1, xmmword [edi + 0x98]
movups xmmword [ecx + 0x1c], xmm1
movups xmmword [ecx + 0xc], xmm0
mov eax, dword [edi + 0xc8]
mov dword [ecx + 0x4c], eax
movsd xmm0, qword [edi + 0xc0]
movsd qword [ecx + 0x44], xmm0
movsd qword [edi + 0xc0], xmm2
mov dword [edi + 0xc8], 0
mov dword [esp + 8], ebx
lea esi, [esp + 0x50]
jmp 0x40aa68
lea eax, [ebx + 0x128]
mov ecx, dword [ebx + 0xc8]
mov dword [eax + 8], ecx
movsd xmm0, qword [ebx + 0xc0]
movsd qword [eax], xmm0
mov word [ebx + 0xc0], 0
mov ecx, esi
mov edx, ebx
call fcn.00408bd0
add ebx, 0xffffff98
test al, al
je 0x40ab10
movzx eax, byte [ebx + 0x78]
mov byte [ebx + 0xe0], al
movups xmm0, xmmword [ebx + 0x68]
movups xmmword [ebx + 0xd0], xmm0
test byte [ebx + 0xe4], 1
je 0x40aa94
push dword [ebx + 0xec]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea eax, [ebx + 0xe4]
lea ecx, [ebx + 0x7c]
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
movsd xmm0, qword [ecx]
movsd qword [eax], xmm0
mov word [ebx + 0x7c], 0
movups xmm0, xmmword [ebx + 0x88]
movups xmm1, xmmword [ebx + 0x98]
movups xmmword [ebx + 0xf0], xmm0
movups xmmword [ebx + 0x100], xmm1
movups xmm0, xmmword [ebx + 0xa8]
movups xmmword [ebx + 0x110], xmm0
movsd xmm0, qword [ebx + 0xb8]
movsd qword [ebx + 0x120], xmm0
test byte [ebx + 0x128], 1
je 0x40aa30
push dword [ebx + 0x130]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x40aa30
movzx eax, byte [esp + 0x60]
mov byte [ebx + 0xe0], al
movaps xmm0, xmmword [esp + 0x50]
movups xmmword [ebx + 0xd0], xmm0
test byte [ebx + 0xe4], 1
je 0x40ab3e
push dword [ebx + 0xec]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea eax, [ebx + 0xe4]
lea edx, [esp + 0x64]
mov ecx, dword [edx + 8]
mov dword [eax + 8], ecx
movsd xmm0, qword [edx]
movsd qword [eax], xmm0
lea eax, [ebx + 0xf0]
movsd xmm0, qword [edx + 0x3c]
movsd qword [eax + 0x30], xmm0
movups xmm0, xmmword [edx + 0x2c]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [edx + 0xc]
movups xmm1, xmmword [edx + 0x1c]
movups xmmword [eax + 0x10], xmm1
movups xmmword [eax], xmm0
lea edi, [ebx + 0x128]
test byte [edi], 1
je 0x40a950
push dword [ebx + 0x130]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x40a950
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret