43cfc0:	8b 01                	mov    (%ecx),%eax
43cfc2:	ff 50 30             	call   *0x30(%eax)
43cfc5:	83 7f 38 00          	cmpl   $0x0,0x38(%edi)
43cfc9:	66 89 47 40          	mov    %ax,0x40(%edi)
43cfcd:	75 10                	jne    0x43cfdf
43cfcf:	8b 47 0c             	mov    0xc(%edi),%eax
43cfd2:	8b cf                	mov    %edi,%ecx
43cfd4:	83 c8 04             	or     $0x4,%eax
43cfd7:	6a 00                	push   $0x0
43cfd9:	50                   	push   %eax
43cfda:	e8 e1 d5 ff ff       	call   0x43a5c0
43cfdf:	8d 53 10             	lea    0x10(%ebx),%edx
43cfe2:	89 55 e8             	mov    %edx,-0x18(%ebp)
43cfe5:	8b 02                	mov    (%edx),%eax
43cfe7:	8b 40 04             	mov    0x4(%eax),%eax
43cfea:	c7 04 02 5c fd 68 00 	movl   $0x68fd5c,(%edx,%eax,1)
43cff1:	8b 02                	mov    (%edx),%eax
43cff3:	8b 48 04             	mov    0x4(%eax),%ecx
43cff6:	8d 41 f8             	lea    -0x8(%ecx),%eax
43cff9:	89 44 11 fc          	mov    %eax,-0x4(%ecx,%edx,1)
43cffd:	8b 03                	mov    (%ebx),%eax
43cfff:	8b 40 04             	mov    0x4(%eax),%eax
43d002:	c7 04 03 e4 33 69 00 	movl   $0x6933e4,(%ebx,%eax,1)
43d009:	8b 03                	mov    (%ebx),%eax
43d00b:	8b 48 04             	mov    0x4(%eax),%ecx
43d00e:	8d 41 e0             	lea    -0x20(%ecx),%eax
43d011:	89 44 19 fc          	mov    %eax,-0x4(%ecx,%ebx,1)
43d015:	c7 45 fc 08 00 00 00 	movl   $0x8,-0x4(%ebp)
43d01c:	8b 03                	mov    (%ebx),%eax
43d01e:	6a 08                	push   $0x8
43d020:	8b 40 04             	mov    0x4(%eax),%eax
43d023:	c7 04 03 ec 33 69 00 	movl   $0x6933ec,(%ebx,%eax,1)
43d02a:	8b 03                	mov    (%ebx),%eax
43d02c:	8b 48 04             	mov    0x4(%eax),%ecx
43d02f:	89 75 e8             	mov    %esi,-0x18(%ebp)
43d032:	8d 41 98             	lea    -0x68(%ecx),%eax
43d035:	89 44 19 fc          	mov    %eax,-0x4(%ecx,%ebx,1)
43d039:	c7 06 64 fd 68 00    	movl   $0x68fd64,(%esi)
43d03f:	e8 fe 3f 1a 00       	call   0x5e1042
43d044:	8b f0                	mov    %eax,%esi
43d046:	6a 01                	push   $0x1
43d048:	c6 45 fc 09          	movb   $0x9,-0x4(%ebp)
43d04c:	e8 23 17 19 00       	call   0x5ce774
43d051:	89 46 04             	mov    %eax,0x4(%esi)
43d054:	83 c4 08             	add    $0x8,%esp
43d057:	8d 43 18             	lea    0x18(%ebx),%eax
43d05a:	89 70 34             	mov    %esi,0x34(%eax)
43d05d:	8d 58 04             	lea    0x4(%eax),%ebx
43d060:	89 58 0c             	mov    %ebx,0xc(%eax)
43d063:	8d 70 08             	lea    0x8(%eax),%esi
43d066:	89 70 10             	mov    %esi,0x10(%eax)
43d069:	8d 78 14             	lea    0x14(%eax),%edi
43d06c:	89 78 1c             	mov    %edi,0x1c(%eax)
43d06f:	8d 48 18             	lea    0x18(%eax),%ecx
43d072:	89 48 20             	mov    %ecx,0x20(%eax)
43d075:	8d 50 24             	lea    0x24(%eax),%edx
43d078:	89 50 2c             	mov    %edx,0x2c(%eax)
43d07b:	83 c0 28             	add    $0x28,%eax
43d07e:	89 5d e8             	mov    %ebx,-0x18(%ebp)
43d081:	8b 5d f0             	mov    -0x10(%ebp),%ebx
43d084:	89 43 30             	mov    %eax,0x30(%ebx)
43d087:	8b 5d e8             	mov    -0x18(%ebp),%ebx
43d08a:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
43d090:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
43d096:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
43d09c:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
43d0a2:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
43d0a8:	c7 02 00 00 00 00    	movl   $0x0,(%edx)
43d0ae:	8b 5d 08             	mov    0x8(%ebp),%ebx
43d0b1:	8b cb                	mov    %ebx,%ecx
43d0b3:	8b 75 f0             	mov    -0x10(%ebp),%esi
43d0b6:	f7 d1                	not    %ecx
43d0b8:	83 e1 01             	and    $0x1,%ecx
43d0bb:	8b c3                	mov    %ebx,%eax
43d0bd:	c1 e1 02             	shl    $0x2,%ecx
43d0c0:	8b d1                	mov    %ecx,%edx
43d0c2:	83 ca 02             	or     $0x2,%edx
43d0c5:	c7 06 a4 fd 68 00    	movl   $0x68fda4,(%esi)
43d0cb:	24 02                	and    $0x2,%al
43d0cd:	c7 46 38 00 00 00 00 	movl   $0x0,0x38(%esi)
43d0d4:	8b c3                	mov    %ebx,%eax
43d0d6:	0f 45 d1             	cmovne %ecx,%edx
43d0d9:	8b ca                	mov    %edx,%ecx
43d0db:	83 c9 08             	or     $0x8,%ecx
43d0de:	24 08                	and    $0x8,%al
43d0e0:	0f 44 ca             	cmove  %edx,%ecx
43d0e3:	8b c1                	mov    %ecx,%eax
43d0e5:	83 c8 10             	or     $0x10,%eax
43d0e8:	80 e3 04             	and    $0x4,%bl
43d0eb:	0f 44 c1             	cmove  %ecx,%eax
43d0ee:	89 46 3c             	mov    %eax,0x3c(%esi)
43d0f1:	8b 45 e4             	mov    -0x1c(%ebp),%eax
43d0f4:	8b 4d f4             	mov    -0xc(%ebp),%ecx
43d0f7:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
43d0fe:	59                   	pop    %ecx
43d0ff:	5f                   	pop    %edi
43d100:	5e                   	pop    %esi
43d101:	5b                   	pop    %ebx
43d102:	8b e5                	mov    %ebp,%esp
43d104:	5d                   	pop    %ebp
43d105:	c2 08 00             	ret    $0x8
43d108:	cc                   	int3
43d109:	cc                   	int3
43d10a:	cc                   	int3
43d10b:	cc                   	int3
43d10c:	cc                   	int3
43d10d:	cc                   	int3
43d10e:	cc                   	int3
43d10f:	cc                   	int3
43d110:	55                   	push   %ebp
43d111:	8b ec                	mov    %esp,%ebp
43d113:	83 e4 f8             	and    $0xfffffff8,%esp
43d116:	51                   	push   %ecx
43d117:	53                   	push   %ebx
43d118:	8b 5d 18             	mov    0x18(%ebp),%ebx
43d11b:	56                   	push   %esi
43d11c:	8b 75 14             	mov    0x14(%ebp),%esi
43d11f:	03 75 0c             	add    0xc(%ebp),%esi
43d122:	57                   	push   %edi
43d123:	13 5d 10             	adc    0x10(%ebp),%ebx
43d126:	8b f9                	mov    %ecx,%edi
43d128:	8b 57 20             	mov    0x20(%edi),%edx
43d12b:	8b 02                	mov    (%edx),%eax
43d12d:	85 c0                	test   %eax,%eax
43d12f:	74 08                	je     0x43d139
43d131:	39 47 38             	cmp    %eax,0x38(%edi)
43d134:	73 03                	jae    0x43d139
43d136:	89 47 38             	mov    %eax,0x38(%edi)
43d139:	a1 cc f7 6c 00       	mov    0x6cf7cc,%eax
43d13e:	3b 35 c8 f7 6c 00    	cmp    0x6cf7c8,%esi
43d144:	75 08                	jne    0x43d14e
43d146:	3b d8                	cmp    %eax,%ebx
43d148:	0f 84 ed 00 00 00    	je     0x43d23b
43d14e:	8b 4d 24             	mov    0x24(%ebp),%ecx
43d151:	f6 c1 01             	test   $0x1,%cl
43d154:	0f 84 8b 00 00 00    	je     0x43d1e5
43d15a:	8b 47 1c             	mov    0x1c(%edi),%eax
43d15d:	8b 00                	mov    (%eax),%eax
43d15f:	89 44 24 0c          	mov    %eax,0xc(%esp)
43d163:	85 c0                	test   %eax,%eax
43d165:	74 79                	je     0x43d1e0
43d167:	85 db                	test   %ebx,%ebx
43d169:	7c 6d                	jl     0x43d1d8
43d16b:	7f 04                	jg     0x43d171
43d16d:	85 f6                	test   %esi,%esi
43d16f:	72 67                	jb     0x43d1d8
43d171:	8b 47 0c             	mov    0xc(%edi),%eax
43d174:	8b 08                	mov    (%eax),%ecx
43d176:	8b 47 38             	mov    0x38(%edi),%eax
43d179:	2b c1                	sub    %ecx,%eax
43d17b:	d1 f8                	sar    $1,%eax
43d17d:	99                   	cltd
43d17e:	3b da                	cmp    %edx,%ebx
43d180:	7f 56                	jg     0x43d1d8
43d182:	7c 04                	jl     0x43d188
43d184:	3b f0                	cmp    %eax,%esi
43d186:	77 50                	ja     0x43d1d8
43d188:	2b 4c 24 0c          	sub    0xc(%esp),%ecx
43d18c:	8b 47 2c             	mov    0x2c(%edi),%eax
43d18f:	d1 f9                	sar    $1,%ecx
43d191:	03 ce                	add    %esi,%ecx
43d193:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
43d197:	29 08                	sub    %ecx,(%eax)
43d199:	8b 4f 1c             	mov    0x1c(%edi),%ecx
43d19c:	8b 44 24 0c          	mov    0xc(%esp),%eax
43d1a0:	03 c0                	add    %eax,%eax
43d1a2:	01 01                	add    %eax,(%ecx)
43d1a4:	f6 45 24 02          	testb  $0x2,0x24(%ebp)
43d1a8:	0f 84 8d 00 00 00    	je     0x43d23b
43d1ae:	8b 47 20             	mov    0x20(%edi),%eax
43d1b1:	8b 08                	mov    (%eax),%ecx
43d1b3:	85 c9                	test   %ecx,%ecx
43d1b5:	0f 84 80 00 00 00    	je     0x43d23b
43d1bb:	8b 47 1c             	mov    0x1c(%edi),%eax
43d1be:	8b 10                	mov    (%eax),%edx
43d1c0:	8b 47 30             	mov    0x30(%edi),%eax
43d1c3:	8b 00                	mov    (%eax),%eax
43d1c5:	8d 0c 41             	lea    (%ecx,%eax,2),%ecx
43d1c8:	8b 47 20             	mov    0x20(%edi),%eax
43d1cb:	2b ca                	sub    %edx,%ecx
43d1cd:	d1 f9                	sar    $1,%ecx
43d1cf:	89 10                	mov    %edx,(%eax)
43d1d1:	8b 47 30             	mov    0x30(%edi),%eax
43d1d4:	89 08                	mov    %ecx,(%eax)
43d1d6:	eb 63                	jmp    0x43d23b
43d1d8:	8b 1d cc f7 6c 00    	mov    0x6cf7cc,%ebx
43d1de:	eb 55                	jmp    0x43d235
43d1e0:	a1 cc f7 6c 00       	mov    0x6cf7cc,%eax
43d1e5:	f6 c1 02             	test   $0x2,%cl
43d1e8:	74 49                	je     0x43d233
43d1ea:	8b 0a                	mov    (%edx),%ecx
43d1ec:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
43d1f0:	85 c9                	test   %ecx,%ecx
43d1f2:	74 3f                	je     0x43d233
43d1f4:	85 db                	test   %ebx,%ebx
43d1f6:	7c e0                	jl     0x43d1d8
43d1f8:	7f 04                	jg     0x43d1fe
43d1fa:	85 f6                	test   %esi,%esi
43d1fc:	72 da                	jb     0x43d1d8
43d1fe:	8b 47 0c             	mov    0xc(%edi),%eax
43d201:	8b 08                	mov    (%eax),%ecx
43d203:	8b 47 38             	mov    0x38(%edi),%eax
43d206:	2b c1                	sub    %ecx,%eax
43d208:	d1 f8                	sar    $1,%eax
43d20a:	99                   	cltd
43d20b:	3b da                	cmp    %edx,%ebx
43d20d:	7f c9                	jg     0x43d1d8
43d20f:	7c 04                	jl     0x43d215
43d211:	3b f0                	cmp    %eax,%esi
43d213:	77 c3                	ja     0x43d1d8
43d215:	2b 4c 24 0c          	sub    0xc(%esp),%ecx
43d219:	8b 47 30             	mov    0x30(%edi),%eax
43d21c:	d1 f9                	sar    $1,%ecx
43d21e:	03 ce                	add    %esi,%ecx
43d220:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
43d224:	29 08                	sub    %ecx,(%eax)
43d226:	8b 4f 20             	mov    0x20(%edi),%ecx
43d229:	8b 44 24 0c          	mov    0xc(%esp),%eax
43d22d:	03 c0                	add    %eax,%eax
43d22f:	01 01                	add    %eax,(%ecx)
43d231:	eb 08                	jmp    0x43d23b
43d233:	8b d8                	mov    %eax,%ebx
43d235:	8b 35 c8 f7 6c 00    	mov    0x6cf7c8,%esi
43d23b:	8b 45 08             	mov    0x8(%ebp),%eax
43d23e:	0f 57 c0             	xorps  %xmm0,%xmm0
43d241:	5f                   	pop    %edi
43d242:	89 30                	mov    %esi,(%eax)
43d244:	89 58 04             	mov    %ebx,0x4(%eax)
43d247:	5e                   	pop    %esi
43d248:	c7 40 08 00 00 00 00 	movl   $0x0,0x8(%eax)
43d24f:	c7 40 0c 00 00 00 00 	movl   $0x0,0xc(%eax)
43d256:	66 0f d6 40 10       	movq   %xmm0,0x10(%eax)
43d25b:	5b                   	pop    %ebx
43d25c:	8b e5                	mov    %ebp,%esp
43d25e:	5d                   	pop    %ebp
43d25f:	c2 20 00             	ret    $0x20
43d262:	cc                   	int3
43d263:	cc                   	int3
43d264:	cc                   	int3
43d265:	cc                   	int3
43d266:	cc                   	int3
43d267:	cc                   	int3
43d268:	cc                   	int3
43d269:	cc                   	int3
43d26a:	cc                   	int3
43d26b:	cc                   	int3
43d26c:	cc                   	int3
43d26d:	cc                   	int3
43d26e:	cc                   	int3
43d26f:	cc                   	int3
43d270:	55                   	push   %ebp
43d271:	8b ec                	mov    %esp,%ebp
43d273:	51                   	push   %ecx
43d274:	53                   	push   %ebx
43d275:	8b d9                	mov    %ecx,%ebx
43d277:	56                   	push   %esi
43d278:	57                   	push   %edi
43d279:	8b 53 20             	mov    0x20(%ebx),%edx
43d27c:	8b 02                	mov    (%edx),%eax
43d27e:	85 c0                	test   %eax,%eax
43d280:	74 08                	je     0x43d28a
43d282:	39 43 38             	cmp    %eax,0x38(%ebx)
43d285:	73 03                	jae    0x43d28a
43d287:	89 43 38             	mov    %eax,0x38(%ebx)
43d28a:	8b 4d 18             	mov    0x18(%ebp),%ecx
43d28d:	f6 c1 01             	test   $0x1,%cl
43d290:	0f 84 e8 00 00 00    	je     0x43d37e
43d296:	8b 43 1c             	mov    0x1c(%ebx),%eax
43d299:	8b 30                	mov    (%eax),%esi
43d29b:	89 75 fc             	mov    %esi,-0x4(%ebp)
43d29e:	85 f6                	test   %esi,%esi
43d2a0:	0f 84 d8 00 00 00    	je     0x43d37e
43d2a6:	8b 45 14             	mov    0x14(%ebp),%eax
43d2a9:	83 f8 02             	cmp    $0x2,%eax
43d2ac:	75 17                	jne    0x43d2c5
43d2ae:	8b 4b 0c             	mov    0xc(%ebx),%ecx
43d2b1:	8b 43 38             	mov    0x38(%ebx),%eax
43d2b4:	8b 75 0c             	mov    0xc(%ebp),%esi
43d2b7:	8b 7d 10             	mov    0x10(%ebp),%edi
43d2ba:	2b 01                	sub    (%ecx),%eax
43d2bc:	d1 f8                	sar    $1,%eax
43d2be:	99                   	cltd
43d2bf:	03 f0                	add    %eax,%esi
43d2c1:	13 fa                	adc    %edx,%edi
43d2c3:	eb 38                	jmp    0x43d2fd
43d2c5:	83 f8 01             	cmp    $0x1,%eax
43d2c8:	75 1b                	jne    0x43d2e5
43d2ca:	f6 c1 02             	test   $0x2,%cl
43d2cd:	75 1a                	jne    0x43d2e9
43d2cf:	8b 4b 0c             	mov    0xc(%ebx),%ecx
43d2d2:	8b c6                	mov    %esi,%eax
43d2d4:	8b 75 0c             	mov    0xc(%ebp),%esi
43d2d7:	8b 7d 10             	mov    0x10(%ebp),%edi
43d2da:	2b 01                	sub    (%ecx),%eax
43d2dc:	d1 f8                	sar    $1,%eax
43d2de:	99                   	cltd
43d2df:	03 f0                	add    %eax,%esi
43d2e1:	13 fa                	adc    %edx,%edi
43d2e3:	eb 18                	jmp    0x43d2fd
43d2e5:	85 c0                	test   %eax,%eax
43d2e7:	74 0e                	je     0x43d2f7
43d2e9:	8b 35 c8 f7 6c 00    	mov    0x6cf7c8,%esi
43d2ef:	8b 3d cc f7 6c 00    	mov    0x6cf7cc,%edi
43d2f5:	eb 06                	jmp    0x43d2fd
43d2f7:	8b 7d 10             	mov    0x10(%ebp),%edi
43d2fa:	8b 75 0c             	mov    0xc(%ebp),%esi
43d2fd:	85 ff                	test   %edi,%edi
43d2ff:	0f 8c 29 01 00 00    	jl     0x43d42e
43d305:	7f 08                	jg     0x43d30f
43d307:	85 f6                	test   %esi,%esi
43d309:	0f 82 1f 01 00 00    	jb     0x43d42e
43d30f:	8b 43 0c             	mov    0xc(%ebx),%eax
43d312:	8b 08                	mov    (%eax),%ecx
43d314:	8b 43 38             	mov    0x38(%ebx),%eax
43d317:	2b c1                	sub    %ecx,%eax
43d319:	d1 f8                	sar    $1,%eax
43d31b:	99                   	cltd
43d31c:	3b fa                	cmp    %edx,%edi
43d31e:	0f 8f 0a 01 00 00    	jg     0x43d42e
43d324:	7c 08                	jl     0x43d32e
43d326:	3b f0                	cmp    %eax,%esi
43d328:	0f 87 00 01 00 00    	ja     0x43d42e
43d32e:	2b 4d fc             	sub    -0x4(%ebp),%ecx
43d331:	8b 43 2c             	mov    0x2c(%ebx),%eax
43d334:	d1 f9                	sar    $1,%ecx
43d336:	03 ce                	add    %esi,%ecx
43d338:	89 4d fc             	mov    %ecx,-0x4(%ebp)
43d33b:	29 08                	sub    %ecx,(%eax)
43d33d:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
43d340:	8b 45 fc             	mov    -0x4(%ebp),%eax
43d343:	03 c0                	add    %eax,%eax
43d345:	01 01                	add    %eax,(%ecx)
43d347:	f6 45 18 02          	testb  $0x2,0x18(%ebp)
43d34b:	0f 84 e9 00 00 00    	je     0x43d43a
43d351:	8b 43 20             	mov    0x20(%ebx),%eax
43d354:	8b 08                	mov    (%eax),%ecx
43d356:	85 c9                	test   %ecx,%ecx
43d358:	0f 84 dc 00 00 00    	je     0x43d43a
43d35e:	8b 43 1c             	mov    0x1c(%ebx),%eax
43d361:	8b 10                	mov    (%eax),%edx
43d363:	8b 43 30             	mov    0x30(%ebx),%eax
43d366:	8b 00                	mov    (%eax),%eax
43d368:	8d 0c 41             	lea    (%ecx,%eax,2),%ecx
43d36b:	8b 43 20             	mov    0x20(%ebx),%eax
43d36e:	2b ca                	sub    %edx,%ecx
43d370:	d1 f9                	sar    $1,%ecx
43d372:	89 10                	mov    %edx,(%eax)
43d374:	8b 43 30             	mov    0x30(%ebx),%eax
43d377:	89 08                	mov    %ecx,(%eax)
43d379:	e9 bc 00 00 00       	jmp    0x43d43a