44607b:	83 c4 10             	add    $0x10,%esp
44607e:	5f                   	pop    %edi
44607f:	5e                   	pop    %esi
446080:	5b                   	pop    %ebx
446081:	c3                   	ret
446082:	8b c0                	mov    %eax,%eax
446084:	56                   	push   %esi
446085:	8b f0                	mov    %eax,%esi
446087:	8b d6                	mov    %esi,%edx
446089:	8b 46 38             	mov    0x38(%esi),%eax
44608c:	66 be db ff          	mov    $0xffdb,%si
446090:	e8 df db fb ff       	call   0x403c74
446095:	5e                   	pop    %esi
446096:	c3                   	ret
446097:	90                   	nop
446098:	56                   	push   %esi
446099:	8b f0                	mov    %eax,%esi
44609b:	8b d6                	mov    %esi,%edx
44609d:	8b 46 38             	mov    0x38(%esi),%eax
4460a0:	66 be da ff          	mov    $0xffda,%si
4460a4:	e8 cb db fb ff       	call   0x403c74
4460a9:	5e                   	pop    %esi
4460aa:	c3                   	ret
4460ab:	90                   	nop
4460ac:	55                   	push   %ebp
4460ad:	8b ec                	mov    %esp,%ebp
4460af:	33 c0                	xor    %eax,%eax
4460b1:	5d                   	pop    %ebp
4460b2:	c2 04 00             	ret    $0x4
4460b5:	8d 40 00             	lea    0x0(%eax),%eax
4460b8:	b8 04 00 00 00       	mov    $0x4,%eax
4460bd:	c3                   	ret
4460be:	8b c0                	mov    %eax,%eax
4460c0:	c3                   	ret
4460c1:	8d 40 00             	lea    0x0(%eax),%eax
4460c4:	55                   	push   %ebp
4460c5:	8b ec                	mov    %esp,%ebp
4460c7:	83 c4 f0             	add    $0xfffffff0,%esp
4460ca:	53                   	push   %ebx
4460cb:	56                   	push   %esi
4460cc:	57                   	push   %edi
4460cd:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4460d0:	8b 75 08             	mov    0x8(%ebp),%esi
4460d3:	8b fb                	mov    %ebx,%edi
4460d5:	3b 77 04             	cmp    0x4(%edi),%esi
4460d8:	75 04                	jne    0x4460de
4460da:	33 c0                	xor    %eax,%eax
4460dc:	eb 46                	jmp    0x446124
4460de:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
4460e2:	75 20                	jne    0x446104
4460e4:	8d 45 f0             	lea    -0x10(%ebp),%eax
4460e7:	50                   	push   %eax
4460e8:	56                   	push   %esi
4460e9:	e8 6a 1a fc ff       	call   0x407b58
4460ee:	ff 77 10             	push   0x10(%edi)
4460f1:	ff 77 0c             	push   0xc(%edi)
4460f4:	8d 45 f0             	lea    -0x10(%ebp),%eax
4460f7:	50                   	push   %eax
4460f8:	e8 a3 1b fc ff       	call   0x407ca0
4460fd:	85 c0                	test   %eax,%eax
4460ff:	74 03                	je     0x446104
446101:	89 77 08             	mov    %esi,0x8(%edi)
446104:	8b d3                	mov    %ebx,%edx
446106:	3b 72 08             	cmp    0x8(%edx),%esi
446109:	75 08                	jne    0x446113
44610b:	33 c0                	xor    %eax,%eax
44610d:	c6 42 14 01          	movb   $0x1,0x14(%edx)
446111:	eb 11                	jmp    0x446124
446113:	3b 32                	cmp    (%edx),%esi
446115:	75 0a                	jne    0x446121
446117:	83 c8 ff             	or     $0xffffffff,%eax
44611a:	33 c9                	xor    %ecx,%ecx
44611c:	89 4a 08             	mov    %ecx,0x8(%edx)
44611f:	eb 03                	jmp    0x446124
446121:	83 c8 ff             	or     $0xffffffff,%eax
446124:	5f                   	pop    %edi
446125:	5e                   	pop    %esi
446126:	5b                   	pop    %ebx
446127:	8b e5                	mov    %ebp,%esp
446129:	5d                   	pop    %ebp
44612a:	c2 08 00             	ret    $0x8
44612d:	8d 40 00             	lea    0x0(%eax),%eax
446130:	55                   	push   %ebp
446131:	8b ec                	mov    %esp,%ebp
446133:	83 c4 c4             	add    $0xffffffc4,%esp
446136:	53                   	push   %ebx
446137:	56                   	push   %esi
446138:	57                   	push   %edi
446139:	8b d8                	mov    %eax,%ebx
44613b:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
44613f:	8b 45 08             	mov    0x8(%ebp),%eax
446142:	83 c0 f7             	add    $0xfffffff7,%eax
446145:	e8 1e 04 00 00       	call   0x446568
44614a:	8b f0                	mov    %eax,%esi
44614c:	89 75 ec             	mov    %esi,-0x14(%ebp)
44614f:	6a 04                	push   $0x4
446151:	56                   	push   %esi
446152:	e8 e1 19 fc ff       	call   0x407b38
446157:	8b 15 f4 6f 6a 00    	mov    0x6a6ff4,%edx
44615d:	8b 12                	mov    (%edx),%edx
44615f:	3b 42 30             	cmp    0x30(%edx),%eax
446162:	74 27                	je     0x44618b
446164:	8b 45 ec             	mov    -0x14(%ebp),%eax
446167:	e8 4c f5 ff ff       	call   0x4456b8
44616c:	8b f0                	mov    %eax,%esi
44616e:	85 f6                	test   %esi,%esi
446170:	0f 84 48 01 00 00    	je     0x4462be
446176:	eb 02                	jmp    0x44617a
446178:	8b f0                	mov    %eax,%esi
44617a:	8b 46 30             	mov    0x30(%esi),%eax
44617d:	85 c0                	test   %eax,%eax
44617f:	75 f7                	jne    0x446178
446181:	8b c6                	mov    %esi,%eax
446183:	e8 cc 8d 00 00       	call   0x44ef54
446188:	89 45 ec             	mov    %eax,-0x14(%ebp)
44618b:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
44618f:	0f 84 29 01 00 00    	je     0x4462be
446195:	8b f3                	mov    %ebx,%esi
446197:	eb 02                	jmp    0x44619b
446199:	8b f0                	mov    %eax,%esi
44619b:	8b 46 30             	mov    0x30(%esi),%eax
44619e:	85 c0                	test   %eax,%eax
4461a0:	75 f7                	jne    0x446199
4461a2:	8b c6                	mov    %esi,%eax
4461a4:	e8 ab 8d 00 00       	call   0x44ef54
4461a9:	8b f8                	mov    %eax,%edi
4461ab:	89 7d e8             	mov    %edi,-0x18(%ebp)
4461ae:	3b 7d ec             	cmp    -0x14(%ebp),%edi
4461b1:	0f 84 07 01 00 00    	je     0x4462be
4461b7:	8b 45 08             	mov    0x8(%ebp),%eax
4461ba:	8b 40 f0             	mov    -0x10(%eax),%eax
4461bd:	8b 40 30             	mov    0x30(%eax),%eax
4461c0:	85 c0                	test   %eax,%eax
4461c2:	74 1c                	je     0x4461e0
4461c4:	8b 55 08             	mov    0x8(%ebp),%edx
4461c7:	8b f0                	mov    %eax,%esi
4461c9:	eb 02                	jmp    0x4461cd
4461cb:	8b f0                	mov    %eax,%esi
4461cd:	8b 46 30             	mov    0x30(%esi),%eax
4461d0:	85 c0                	test   %eax,%eax
4461d2:	75 f7                	jne    0x4461cb
4461d4:	8b c6                	mov    %esi,%eax
4461d6:	e8 79 8d 00 00       	call   0x44ef54
4461db:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4461de:	eb 2a                	jmp    0x44620a
4461e0:	8b 45 08             	mov    0x8(%ebp),%eax
4461e3:	8b 40 f0             	mov    -0x10(%eax),%eax
4461e6:	8b 15 e8 45 44 00    	mov    0x4445e8,%edx
4461ec:	e8 13 da fb ff       	call   0x403c04
4461f1:	84 c0                	test   %al,%al
4461f3:	74 10                	je     0x446205
4461f5:	8b 45 08             	mov    0x8(%ebp),%eax
4461f8:	8b 40 f0             	mov    -0x10(%eax),%eax
4461fb:	e8 54 8d 00 00       	call   0x44ef54
446200:	89 45 e4             	mov    %eax,-0x1c(%ebp)
446203:	eb 05                	jmp    0x44620a
446205:	33 c0                	xor    %eax,%eax
446207:	89 45 e4             	mov    %eax,-0x1c(%ebp)
44620a:	c6 45 f8 00          	movb   $0x0,-0x8(%ebp)
44620e:	8b 45 08             	mov    0x8(%ebp),%eax
446211:	8b 50 f7             	mov    -0x9(%eax),%edx
446214:	89 55 f0             	mov    %edx,-0x10(%ebp)
446217:	8b 50 fb             	mov    -0x5(%eax),%edx
44621a:	89 55 f4             	mov    %edx,-0xc(%ebp)
44621d:	8d 45 e4             	lea    -0x1c(%ebp),%eax
446220:	50                   	push   %eax
446221:	68 c4 60 44 00       	push   $0x4460c4
446226:	e8 9d 0f fc ff       	call   0x4071c8
44622b:	50                   	push   %eax
44622c:	e8 4f 17 fc ff       	call   0x407980
446231:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
446235:	0f 84 83 00 00 00    	je     0x4462be
44623b:	8d 45 d4             	lea    -0x2c(%ebp),%eax
44623e:	50                   	push   %eax
44623f:	8b 45 ec             	mov    -0x14(%ebp),%eax
446242:	50                   	push   %eax
446243:	e8 10 19 fc ff       	call   0x407b58
446248:	8b 45 08             	mov    0x8(%ebp),%eax
44624b:	83 c0 f7             	add    $0xfffffff7,%eax
44624e:	50                   	push   %eax
44624f:	8b 45 08             	mov    0x8(%ebp),%eax
446252:	48                   	dec    %eax
446253:	50                   	push   %eax
446254:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
446257:	8b 45 08             	mov    0x8(%ebp),%eax
44625a:	8b 50 f0             	mov    -0x10(%eax),%edx
44625d:	8b c3                	mov    %ebx,%eax
44625f:	66 be bd ff          	mov    $0xffbd,%si
446263:	e8 0c da fb ff       	call   0x403c74
446268:	a1 c4 8b 6a 00       	mov    0x6a8bc4,%eax
44626d:	8b 15 c4 33 44 00    	mov    0x4433c4,%edx
446273:	e8 8c d9 fb ff       	call   0x403c04
446278:	84 c0                	test   %al,%al
44627a:	74 29                	je     0x4462a5
44627c:	a1 c4 8b 6a 00       	mov    0x6a8bc4,%eax
446281:	8b 40 38             	mov    0x38(%eax),%eax
446284:	83 b8 a0 00 00 00 00 	cmpl   $0x0,0xa0(%eax)
44628b:	74 18                	je     0x4462a5
44628d:	a1 c4 8b 6a 00       	mov    0x6a8bc4,%eax
446292:	8b 40 38             	mov    0x38(%eax),%eax
446295:	8b 80 a0 00 00 00    	mov    0xa0(%eax),%eax
44629b:	e8 b4 8c 00 00       	call   0x44ef54
4462a0:	3b 45 ec             	cmp    -0x14(%ebp),%eax
4462a3:	74 19                	je     0x4462be
4462a5:	8d 45 c4             	lea    -0x3c(%ebp),%eax
4462a8:	50                   	push   %eax
4462a9:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4462ac:	50                   	push   %eax
4462ad:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4462b0:	50                   	push   %eax
4462b1:	e8 ea 18 fc ff       	call   0x407ba0
4462b6:	85 c0                	test   %eax,%eax
4462b8:	74 04                	je     0x4462be
4462ba:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
4462be:	8a 45 ff             	mov    -0x1(%ebp),%al
4462c1:	5f                   	pop    %edi
4462c2:	5e                   	pop    %esi
4462c3:	5b                   	pop    %ebx
4462c4:	8b e5                	mov    %ebp,%esp
4462c6:	5d                   	pop    %ebp
4462c7:	c3                   	ret
4462c8:	55                   	push   %ebp
4462c9:	8b ec                	mov    %esp,%ebp
4462cb:	8b 45 08             	mov    0x8(%ebp),%eax
4462ce:	8b 40 f0             	mov    -0x10(%eax),%eax
4462d1:	8b 15 e8 45 44 00    	mov    0x4445e8,%edx
4462d7:	e8 28 d9 fb ff       	call   0x403c04
4462dc:	84 c0                	test   %al,%al
4462de:	74 25                	je     0x446305
4462e0:	8b 45 08             	mov    0x8(%ebp),%eax
4462e3:	8b 40 ec             	mov    -0x14(%eax),%eax
4462e6:	e8 69 8c 00 00       	call   0x44ef54
4462eb:	50                   	push   %eax
4462ec:	8b 45 08             	mov    0x8(%ebp),%eax
4462ef:	8b 40 f0             	mov    -0x10(%eax),%eax
4462f2:	e8 5d 8c 00 00       	call   0x44ef54
4462f7:	50                   	push   %eax
4462f8:	e8 c3 18 fc ff       	call   0x407bc0
4462fd:	83 f8 01             	cmp    $0x1,%eax
446300:	1b c0                	sbb    %eax,%eax
446302:	40                   	inc    %eax
446303:	5d                   	pop    %ebp
446304:	c3                   	ret
446305:	33 c0                	xor    %eax,%eax
446307:	5d                   	pop    %ebp
446308:	c3                   	ret
446309:	8d 40 00             	lea    0x0(%eax),%eax
44630c:	55                   	push   %ebp
44630d:	8b ec                	mov    %esp,%ebp
44630f:	83 c4 d8             	add    $0xffffffd8,%esp
446312:	53                   	push   %ebx
446313:	56                   	push   %esi
446314:	57                   	push   %edi
446315:	8b f0                	mov    %eax,%esi
446317:	8d 7d f7             	lea    -0x9(%ebp),%edi
44631a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44631b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44631c:	89 55 f0             	mov    %edx,-0x10(%ebp)
44631f:	33 c0                	xor    %eax,%eax
446321:	89 45 e8             	mov    %eax,-0x18(%ebp)
446324:	83 3d e8 8b 6a 00 00 	cmpl   $0x0,0x6a8be8
44632b:	0f 84 2a 01 00 00    	je     0x44645b
446331:	6a 11                	push   $0x11
446333:	e8 20 17 fc ff       	call   0x407a58
446338:	66 a9 00 80          	test   $0x8000,%ax
44633c:	0f 95 c0             	setne  %al
44633f:	8b 15 f4 6f 6a 00    	mov    0x6a6ff4,%edx
446345:	8b 12                	mov    (%edx),%edx
446347:	32 82 b4 00 00 00    	xor    0xb4(%edx),%al
44634d:	0f 84 08 01 00 00    	je     0x44645b
446353:	a1 ec 8b 6a 00       	mov    0x6a8bec,%eax
446358:	8b 10                	mov    (%eax),%edx
44635a:	ff 52 08             	call   *0x8(%edx)
44635d:	a1 e8 8b 6a 00       	mov    0x6a8be8,%eax
446362:	8b 58 08             	mov    0x8(%eax),%ebx
446365:	4b                   	dec    %ebx
446366:	85 db                	test   %ebx,%ebx
446368:	0f 8c bc 00 00 00    	jl     0x44642a
44636e:	43                   	inc    %ebx
44636f:	33 ff                	xor    %edi,%edi
446371:	8b d7                	mov    %edi,%edx
446373:	a1 e8 8b 6a 00       	mov    0x6a8be8,%eax
446378:	e8 43 5a fd ff       	call   0x41bdc0
44637d:	89 45 ec             	mov    %eax,-0x14(%ebp)
446380:	8b 45 ec             	mov    -0x14(%ebp),%eax
446383:	3b 45 f0             	cmp    -0x10(%ebp),%eax
446386:	0f 84 96 00 00 00    	je     0x446422
44638c:	8b 45 ec             	mov    -0x14(%ebp),%eax
44638f:	80 b8 a6 01 00 00 00 	cmpb   $0x0,0x1a6(%eax)
446396:	0f 84 86 00 00 00    	je     0x446422
44639c:	8b 45 ec             	mov    -0x14(%ebp),%eax
44639f:	8b 10                	mov    (%eax),%edx
4463a1:	ff 52 50             	call   *0x50(%edx)
4463a4:	84 c0                	test   %al,%al
4463a6:	74 7a                	je     0x446422
4463a8:	8b 45 ec             	mov    -0x14(%ebp),%eax
4463ab:	e8 a4 8b 00 00       	call   0x44ef54
4463b0:	50                   	push   %eax
4463b1:	e8 42 18 fc ff       	call   0x407bf8
4463b6:	85 c0                	test   %eax,%eax
4463b8:	74 68                	je     0x446422
4463ba:	55                   	push   %ebp
4463bb:	e8 08 ff ff ff       	call   0x4462c8
4463c0:	59                   	pop    %ecx
4463c1:	84 c0                	test   %al,%al
4463c3:	75 5d                	jne    0x446422
4463c5:	8b 45 f0             	mov    -0x10(%ebp),%eax
4463c8:	8b 80 a0 00 00 00    	mov    0xa0(%eax),%eax
4463ce:	3b 45 ec             	cmp    -0x14(%ebp),%eax
4463d1:	75 0b                	jne    0x4463de
4463d3:	8b 45 ec             	mov    -0x14(%ebp),%eax
4463d6:	e8 d5 76 00 00       	call   0x44dab0
4463db:	48                   	dec    %eax
4463dc:	7e 44                	jle    0x446422
4463de:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
4463e2:	8d 45 f7             	lea    -0x9(%ebp),%eax
4463e5:	50                   	push   %eax
4463e6:	8d 45 ff             	lea    -0x1(%ebp),%eax
4463e9:	50                   	push   %eax
4463ea:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4463ed:	8b 55 f0             	mov    -0x10(%ebp),%edx
4463f0:	8b 45 ec             	mov    -0x14(%ebp),%eax
4463f3:	66 be bd ff          	mov    $0xffbd,%si
4463f7:	e8 78 d8 fb ff       	call   0x403c74
4463fc:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
446400:	74 20                	je     0x446422
446402:	ff 75 fb             	push   -0x5(%ebp)
446405:	ff 75 f7             	push   -0x9(%ebp)
446408:	8d 45 d8             	lea    -0x28(%ebp),%eax
44640b:	50                   	push   %eax
44640c:	e8 8f 18 fc ff       	call   0x407ca0
446411:	85 c0                	test   %eax,%eax
446413:	74 0d                	je     0x446422
446415:	8b 55 ec             	mov    -0x14(%ebp),%edx
446418:	a1 ec 8b 6a 00       	mov    0x6a8bec,%eax
44641d:	e8 6e f6 ff ff       	call   0x445a90
446422:	47                   	inc    %edi
446423:	4b                   	dec    %ebx
446424:	0f 85 47 ff ff ff    	jne    0x446371
44642a:	a1 ec 8b 6a 00       	mov    0x6a8bec,%eax
44642f:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
446433:	7e 0d                	jle    0x446442
446435:	a1 ec 8b 6a 00       	mov    0x6a8bec,%eax
44643a:	e8 e1 f6 ff ff       	call   0x445b20
44643f:	89 45 e8             	mov    %eax,-0x18(%ebp)
446442:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
446446:	74 13                	je     0x44645b
446448:	55                   	push   %ebp
446449:	8b 45 e8             	mov    -0x18(%ebp),%eax
44644c:	e8 df fc ff ff       	call   0x446130