409f4f:	00 90 96 40 00 3f    	add    %dl,0x3f004096(%eax)
409f55:	99                   	cltd
409f56:	40                   	inc    %eax
409f57:	00 df                	add    %bl,%bh
409f59:	9b                   	fwait
409f5a:	40                   	inc    %eax
409f5b:	00 a9 93 40 00 37    	add    %ch,0x37004093(%ecx)
409f61:	96                   	xchg   %eax,%esi
409f62:	40                   	inc    %eax
409f63:	00 e2                	add    %ah,%dl
409f65:	98                   	cwtl
409f66:	40                   	inc    %eax
409f67:	00 81 9b 40 00 cc    	add    %al,-0x33ffbf65(%ecx)
409f6d:	cc                   	int3
409f6e:	cc                   	int3
409f6f:	cc                   	int3
409f70:	55                   	push   %ebp
409f71:	8b ec                	mov    %esp,%ebp
409f73:	56                   	push   %esi
409f74:	8b 75 08             	mov    0x8(%ebp),%esi
409f77:	57                   	push   %edi
409f78:	8b 7d 0c             	mov    0xc(%ebp),%edi
409f7b:	8b 06                	mov    (%esi),%eax
409f7d:	83 f8 fe             	cmp    $0xfffffffe,%eax
409f80:	74 0d                	je     0x409f8f
409f82:	8b 4e 04             	mov    0x4(%esi),%ecx
409f85:	03 cf                	add    %edi,%ecx
409f87:	33 0c 38             	xor    (%eax,%edi,1),%ecx
409f8a:	e8 7d d4 ff ff       	call   0x40740c
409f8f:	8b 46 08             	mov    0x8(%esi),%eax
409f92:	8b 4e 0c             	mov    0xc(%esi),%ecx
409f95:	03 cf                	add    %edi,%ecx
409f97:	33 0c 38             	xor    (%eax,%edi,1),%ecx
409f9a:	5f                   	pop    %edi
409f9b:	5e                   	pop    %esi
409f9c:	5d                   	pop    %ebp
409f9d:	e9 6a d4 ff ff       	jmp    0x40740c
409fa2:	cc                   	int3
409fa3:	cc                   	int3
409fa4:	cc                   	int3
409fa5:	cc                   	int3
409fa6:	cc                   	int3
409fa7:	cc                   	int3
409fa8:	cc                   	int3
409fa9:	cc                   	int3
409faa:	cc                   	int3
409fab:	cc                   	int3
409fac:	cc                   	int3
409fad:	cc                   	int3
409fae:	cc                   	int3
409faf:	cc                   	int3
409fb0:	55                   	push   %ebp
409fb1:	8b ec                	mov    %esp,%ebp
409fb3:	83 ec 1c             	sub    $0x1c,%esp
409fb6:	53                   	push   %ebx
409fb7:	8b 5d 08             	mov    0x8(%ebp),%ebx
409fba:	56                   	push   %esi
409fbb:	57                   	push   %edi
409fbc:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
409fc0:	ff 33                	push   (%ebx)
409fc2:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
409fc9:	e8 62 89 01 00       	call   0x422930
409fce:	89 03                	mov    %eax,(%ebx)
409fd0:	8b 5d 0c             	mov    0xc(%ebp),%ebx
409fd3:	8b 43 08             	mov    0x8(%ebx),%eax
409fd6:	8d 73 10             	lea    0x10(%ebx),%esi
409fd9:	33 05 14 30 43 00    	xor    0x433014,%eax
409fdf:	56                   	push   %esi
409fe0:	50                   	push   %eax
409fe1:	89 75 f0             	mov    %esi,-0x10(%ebp)
409fe4:	89 45 f8             	mov    %eax,-0x8(%ebp)
409fe7:	e8 84 ff ff ff       	call   0x409f70
409fec:	ff 75 10             	push   0x10(%ebp)
409fef:	e8 48 10 00 00       	call   0x40b03c
409ff4:	8b 45 08             	mov    0x8(%ebp),%eax
409ff7:	83 c4 10             	add    $0x10,%esp
409ffa:	8b 7b 0c             	mov    0xc(%ebx),%edi
409ffd:	f6 40 04 66          	testb  $0x66,0x4(%eax)
40a001:	75 5a                	jne    0x40a05d
40a003:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40a006:	8b 45 10             	mov    0x10(%ebp),%eax
40a009:	89 45 e8             	mov    %eax,-0x18(%ebp)
40a00c:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40a00f:	89 43 fc             	mov    %eax,-0x4(%ebx)
40a012:	83 ff fe             	cmp    $0xfffffffe,%edi
40a015:	74 69                	je     0x40a080
40a017:	8b 4d f8             	mov    -0x8(%ebp),%ecx
40a01a:	8d 47 02             	lea    0x2(%edi),%eax
40a01d:	8d 04 47             	lea    (%edi,%eax,2),%eax
40a020:	8b 1c 81             	mov    (%ecx,%eax,4),%ebx
40a023:	8d 04 81             	lea    (%ecx,%eax,4),%eax
40a026:	8b 48 04             	mov    0x4(%eax),%ecx
40a029:	89 45 ec             	mov    %eax,-0x14(%ebp)
40a02c:	85 c9                	test   %ecx,%ecx
40a02e:	74 14                	je     0x40a044
40a030:	8b d6                	mov    %esi,%edx
40a032:	e8 29 11 00 00       	call   0x40b160
40a037:	b1 01                	mov    $0x1,%cl
40a039:	88 4d ff             	mov    %cl,-0x1(%ebp)
40a03c:	85 c0                	test   %eax,%eax
40a03e:	78 14                	js     0x40a054
40a040:	7f 48                	jg     0x40a08a
40a042:	eb 03                	jmp    0x40a047
40a044:	8a 4d ff             	mov    -0x1(%ebp),%cl
40a047:	8b fb                	mov    %ebx,%edi
40a049:	83 fb fe             	cmp    $0xfffffffe,%ebx
40a04c:	75 c9                	jne    0x40a017
40a04e:	84 c9                	test   %cl,%cl
40a050:	74 2e                	je     0x40a080
40a052:	eb 20                	jmp    0x40a074
40a054:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
40a05b:	eb 17                	jmp    0x40a074
40a05d:	83 ff fe             	cmp    $0xfffffffe,%edi
40a060:	74 1e                	je     0x40a080
40a062:	68 14 30 43 00       	push   $0x433014
40a067:	56                   	push   %esi
40a068:	ba fe ff ff ff       	mov    $0xfffffffe,%edx
40a06d:	8b cb                	mov    %ebx,%ecx
40a06f:	e8 4c 11 00 00       	call   0x40b1c0
40a074:	56                   	push   %esi
40a075:	ff 75 f8             	push   -0x8(%ebp)
40a078:	e8 f3 fe ff ff       	call   0x409f70
40a07d:	83 c4 08             	add    $0x8,%esp
40a080:	8b 45 f4             	mov    -0xc(%ebp),%eax
40a083:	5f                   	pop    %edi
40a084:	5e                   	pop    %esi
40a085:	5b                   	pop    %ebx
40a086:	8b e5                	mov    %ebp,%esp
40a088:	5d                   	pop    %ebp
40a089:	c3                   	ret
40a08a:	8b 45 08             	mov    0x8(%ebp),%eax
40a08d:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
40a093:	75 38                	jne    0x40a0cd
40a095:	83 3d e4 51 42 00 00 	cmpl   $0x0,0x4251e4
40a09c:	74 2f                	je     0x40a0cd
40a09e:	68 e4 51 42 00       	push   $0x4251e4
40a0a3:	e8 48 83 01 00       	call   0x4223f0
40a0a8:	83 c4 04             	add    $0x4,%esp
40a0ab:	85 c0                	test   %eax,%eax
40a0ad:	74 1b                	je     0x40a0ca
40a0af:	8b 35 e4 51 42 00    	mov    0x4251e4,%esi
40a0b5:	8b ce                	mov    %esi,%ecx
40a0b7:	6a 01                	push   $0x1
40a0b9:	ff 75 08             	push   0x8(%ebp)
40a0bc:	ff 15 54 41 42 00    	call   *0x424154
40a0c2:	ff d6                	call   *%esi
40a0c4:	8b 75 f0             	mov    -0x10(%ebp),%esi
40a0c7:	83 c4 08             	add    $0x8,%esp
40a0ca:	8b 45 08             	mov    0x8(%ebp),%eax
40a0cd:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40a0d0:	8b d0                	mov    %eax,%edx
40a0d2:	e8 c9 10 00 00       	call   0x40b1a0
40a0d7:	8b 45 0c             	mov    0xc(%ebp),%eax
40a0da:	39 78 0c             	cmp    %edi,0xc(%eax)
40a0dd:	74 12                	je     0x40a0f1
40a0df:	68 14 30 43 00       	push   $0x433014
40a0e4:	56                   	push   %esi
40a0e5:	8b d7                	mov    %edi,%edx
40a0e7:	8b c8                	mov    %eax,%ecx
40a0e9:	e8 d2 10 00 00       	call   0x40b1c0
40a0ee:	8b 45 0c             	mov    0xc(%ebp),%eax
40a0f1:	56                   	push   %esi
40a0f2:	ff 75 f8             	push   -0x8(%ebp)
40a0f5:	89 58 0c             	mov    %ebx,0xc(%eax)
40a0f8:	e8 73 fe ff ff       	call   0x409f70
40a0fd:	8b 4d ec             	mov    -0x14(%ebp),%ecx
40a100:	83 c4 08             	add    $0x8,%esp
40a103:	8b d6                	mov    %esi,%edx
40a105:	8b 49 08             	mov    0x8(%ecx),%ecx
40a108:	e8 73 10 00 00       	call   0x40b180
40a10d:	cc                   	int3
40a10e:	e8 c4 10 00 00       	call   0x40b1d7
40a113:	84 c0                	test   %al,%al
40a115:	75 03                	jne    0x40a11a
40a117:	32 c0                	xor    %al,%al
40a119:	c3                   	ret
40a11a:	e8 54 01 00 00       	call   0x40a273
40a11f:	84 c0                	test   %al,%al
40a121:	75 07                	jne    0x40a12a
40a123:	e8 eb 10 00 00       	call   0x40b213
40a128:	eb ed                	jmp    0x40a117
40a12a:	b0 01                	mov    $0x1,%al
40a12c:	c3                   	ret
40a12d:	55                   	push   %ebp
40a12e:	8b ec                	mov    %esp,%ebp
40a130:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
40a134:	75 0a                	jne    0x40a140
40a136:	e8 6b 01 00 00       	call   0x40a2a6
40a13b:	e8 d3 10 00 00       	call   0x40b213
40a140:	b0 01                	mov    $0x1,%al
40a142:	5d                   	pop    %ebp
40a143:	c3                   	ret
40a144:	55                   	push   %ebp
40a145:	8b ec                	mov    %esp,%ebp
40a147:	8b 45 08             	mov    0x8(%ebp),%eax
40a14a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40a14d:	3b c1                	cmp    %ecx,%eax
40a14f:	75 04                	jne    0x40a155
40a151:	33 c0                	xor    %eax,%eax
40a153:	5d                   	pop    %ebp
40a154:	c3                   	ret
40a155:	83 c1 05             	add    $0x5,%ecx
40a158:	83 c0 05             	add    $0x5,%eax
40a15b:	8a 10                	mov    (%eax),%dl
40a15d:	3a 11                	cmp    (%ecx),%dl
40a15f:	75 18                	jne    0x40a179
40a161:	84 d2                	test   %dl,%dl
40a163:	74 ec                	je     0x40a151
40a165:	8a 50 01             	mov    0x1(%eax),%dl
40a168:	3a 51 01             	cmp    0x1(%ecx),%dl
40a16b:	75 0c                	jne    0x40a179
40a16d:	83 c0 02             	add    $0x2,%eax
40a170:	83 c1 02             	add    $0x2,%ecx
40a173:	84 d2                	test   %dl,%dl
40a175:	75 e4                	jne    0x40a15b
40a177:	eb d8                	jmp    0x40a151
40a179:	1b c0                	sbb    %eax,%eax
40a17b:	83 c8 01             	or     $0x1,%eax
40a17e:	5d                   	pop    %ebp
40a17f:	c3                   	ret
40a180:	55                   	push   %ebp
40a181:	8b ec                	mov    %esp,%ebp
40a183:	8b 45 08             	mov    0x8(%ebp),%eax
40a186:	85 c0                	test   %eax,%eax
40a188:	74 0e                	je     0x40a198
40a18a:	3d 70 45 43 00       	cmp    $0x434570,%eax
40a18f:	74 07                	je     0x40a198
40a191:	50                   	push   %eax
40a192:	e8 7c 2a 00 00       	call   0x40cc13
40a197:	59                   	pop    %ecx
40a198:	5d                   	pop    %ebp
40a199:	c2 04 00             	ret    $0x4
40a19c:	e8 09 00 00 00       	call   0x40a1aa
40a1a1:	85 c0                	test   %eax,%eax
40a1a3:	0f 84 65 4c 00 00    	je     0x40ee0e
40a1a9:	c3                   	ret
40a1aa:	83 3d 40 30 43 00 ff 	cmpl   $0xffffffff,0x433040
40a1b1:	75 03                	jne    0x40a1b6
40a1b3:	33 c0                	xor    %eax,%eax
40a1b5:	c3                   	ret
40a1b6:	53                   	push   %ebx
40a1b7:	57                   	push   %edi
40a1b8:	ff 15 98 40 42 00    	call   *0x424098
40a1be:	ff 35 40 30 43 00    	push   0x433040
40a1c4:	8b f8                	mov    %eax,%edi
40a1c6:	e8 d0 11 00 00       	call   0x40b39b
40a1cb:	8b d8                	mov    %eax,%ebx
40a1cd:	59                   	pop    %ecx
40a1ce:	83 fb ff             	cmp    $0xffffffff,%ebx
40a1d1:	74 17                	je     0x40a1ea
40a1d3:	85 db                	test   %ebx,%ebx
40a1d5:	75 59                	jne    0x40a230
40a1d7:	6a ff                	push   $0xffffffff
40a1d9:	ff 35 40 30 43 00    	push   0x433040
40a1df:	e8 f2 11 00 00       	call   0x40b3d6
40a1e4:	59                   	pop    %ecx
40a1e5:	59                   	pop    %ecx
40a1e6:	85 c0                	test   %eax,%eax
40a1e8:	75 04                	jne    0x40a1ee
40a1ea:	33 db                	xor    %ebx,%ebx
40a1ec:	eb 42                	jmp    0x40a230
40a1ee:	56                   	push   %esi
40a1ef:	6a 28                	push   $0x28
40a1f1:	6a 01                	push   $0x1
40a1f3:	e8 19 14 00 00       	call   0x40b611
40a1f8:	8b f0                	mov    %eax,%esi
40a1fa:	59                   	pop    %ecx
40a1fb:	59                   	pop    %ecx
40a1fc:	85 f6                	test   %esi,%esi
40a1fe:	74 12                	je     0x40a212
40a200:	56                   	push   %esi
40a201:	ff 35 40 30 43 00    	push   0x433040
40a207:	e8 ca 11 00 00       	call   0x40b3d6
40a20c:	59                   	pop    %ecx
40a20d:	59                   	pop    %ecx
40a20e:	85 c0                	test   %eax,%eax
40a210:	75 12                	jne    0x40a224
40a212:	33 db                	xor    %ebx,%ebx
40a214:	53                   	push   %ebx
40a215:	ff 35 40 30 43 00    	push   0x433040
40a21b:	e8 b6 11 00 00       	call   0x40b3d6
40a220:	59                   	pop    %ecx
40a221:	59                   	pop    %ecx
40a222:	eb 04                	jmp    0x40a228
40a224:	8b de                	mov    %esi,%ebx
40a226:	33 f6                	xor    %esi,%esi
40a228:	56                   	push   %esi
40a229:	e8 e5 29 00 00       	call   0x40cc13
40a22e:	59                   	pop    %ecx
40a22f:	5e                   	pop    %esi
40a230:	57                   	push   %edi
40a231:	ff 15 9c 40 42 00    	call   *0x42409c
40a237:	5f                   	pop    %edi
40a238:	8b c3                	mov    %ebx,%eax
40a23a:	5b                   	pop    %ebx
40a23b:	c3                   	ret
40a23c:	83 3d 40 30 43 00 ff 	cmpl   $0xffffffff,0x433040
40a243:	75 03                	jne    0x40a248
40a245:	33 c0                	xor    %eax,%eax
40a247:	c3                   	ret
40a248:	56                   	push   %esi
40a249:	57                   	push   %edi
40a24a:	ff 15 98 40 42 00    	call   *0x424098
40a250:	ff 35 40 30 43 00    	push   0x433040
40a256:	8b f0                	mov    %eax,%esi
40a258:	e8 3e 11 00 00       	call   0x40b39b
40a25d:	59                   	pop    %ecx
40a25e:	56                   	push   %esi
40a25f:	8b f8                	mov    %eax,%edi
40a261:	ff 15 9c 40 42 00    	call   *0x42409c
40a267:	8d 47 01             	lea    0x1(%edi),%eax
40a26a:	f7 d8                	neg    %eax
40a26c:	1b c0                	sbb    %eax,%eax
40a26e:	23 c7                	and    %edi,%eax
40a270:	5f                   	pop    %edi
40a271:	5e                   	pop    %esi
40a272:	c3                   	ret
40a273:	68 80 a1 40 00       	push   $0x40a180
40a278:	e8 a8 10 00 00       	call   0x40b325
40a27d:	a3 40 30 43 00       	mov    %eax,0x433040
40a282:	59                   	pop    %ecx
40a283:	83 f8 ff             	cmp    $0xffffffff,%eax
40a286:	75 03                	jne    0x40a28b
40a288:	32 c0                	xor    %al,%al
40a28a:	c3                   	ret
40a28b:	68 70 45 43 00       	push   $0x434570
40a290:	50                   	push   %eax
40a291:	e8 40 11 00 00       	call   0x40b3d6
40a296:	59                   	pop    %ecx
40a297:	59                   	pop    %ecx
40a298:	85 c0                	test   %eax,%eax
40a29a:	75 07                	jne    0x40a2a3
40a29c:	e8 05 00 00 00       	call   0x40a2a6
40a2a1:	eb e5                	jmp    0x40a288
40a2a3:	b0 01                	mov    $0x1,%al
40a2a5:	c3                   	ret
40a2a6:	a1 40 30 43 00       	mov    0x433040,%eax
40a2ab:	83 f8 ff             	cmp    $0xffffffff,%eax
40a2ae:	74 0e                	je     0x40a2be
40a2b0:	50                   	push   %eax
40a2b1:	e8 aa 10 00 00       	call   0x40b360
40a2b6:	83 0d 40 30 43 00 ff 	orl    $0xffffffff,0x433040
40a2bd:	59                   	pop    %ecx
40a2be:	b0 01                	mov    $0x1,%al
40a2c0:	c3                   	ret
40a2c1:	6a 10                	push   $0x10
40a2c3:	68 20 14 43 00       	push   $0x431420
40a2c8:	e8 f3 dc ff ff       	call   0x407fc0
40a2cd:	33 db                	xor    %ebx,%ebx
40a2cf:	8b 45 10             	mov    0x10(%ebp),%eax