408f51:	e9 a4 03 00 00       	jmp    0x4092fa
408f56:	8b 7d d4             	mov    -0x2c(%ebp),%edi
408f59:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
408f5d:	74 13                	je     0x408f72
408f5f:	81 7f 0c 84 00 00 00 	cmpl   $0x84,0xc(%edi)
408f66:	74 0a                	je     0x408f72
408f68:	68 c0 2c 40 00       	push   $0x402cc0
408f6d:	e9 22 f8 ff ff       	jmp    0x408794
408f72:	68 e8 2c 40 00       	push   $0x402ce8
408f77:	56                   	push   %esi
408f78:	e8 cb f3 ff ff       	call   0x408348
408f7d:	33 c0                	xor    %eax,%eax
408f7f:	59                   	pop    %ecx
408f80:	59                   	pop    %ecx
408f81:	39 47 0c             	cmp    %eax,0xc(%edi)
408f84:	74 23                	je     0x408fa9
408f86:	39 47 08             	cmp    %eax,0x8(%edi)
408f89:	76 1e                	jbe    0x408fa9
408f8b:	8b d8                	mov    %eax,%ebx
408f8d:	8b 07                	mov    (%edi),%eax
408f8f:	ff 34 98             	push   (%eax,%ebx,4)
408f92:	68 18 2d 40 00       	push   $0x402d18
408f97:	56                   	push   %esi
408f98:	e8 ab f3 ff ff       	call   0x408348
408f9d:	83 c4 0c             	add    $0xc,%esp
408fa0:	43                   	inc    %ebx
408fa1:	3b 5f 08             	cmp    0x8(%edi),%ebx
408fa4:	72 e7                	jb     0x408f8d
408fa6:	8b 5d bc             	mov    -0x44(%ebp),%ebx
408fa9:	8d 45 d4             	lea    -0x2c(%ebp),%eax
408fac:	50                   	push   %eax
408fad:	8d 45 c8             	lea    -0x38(%ebp),%eax
408fb0:	50                   	push   %eax
408fb1:	51                   	push   %ecx
408fb2:	6a 1d                	push   $0x1d
408fb4:	5a                   	pop    %edx
408fb5:	8b cb                	mov    %ebx,%ecx
408fb7:	e8 a9 f0 ff ff       	call   0x408065
408fbc:	85 c0                	test   %eax,%eax
408fbe:	74 0a                	je     0x408fca
408fc0:	68 28 2d 40 00       	push   $0x402d28
408fc5:	e9 30 03 00 00       	jmp    0x4092fa
408fca:	8b 7d d4             	mov    -0x2c(%ebp),%edi
408fcd:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
408fd1:	74 13                	je     0x408fe6
408fd3:	81 7f 0c 84 00 00 00 	cmpl   $0x84,0xc(%edi)
408fda:	74 0a                	je     0x408fe6
408fdc:	68 28 2d 40 00       	push   $0x402d28
408fe1:	e9 ae f7 ff ff       	jmp    0x408794
408fe6:	68 50 2d 40 00       	push   $0x402d50
408feb:	56                   	push   %esi
408fec:	e8 57 f3 ff ff       	call   0x408348
408ff1:	33 c0                	xor    %eax,%eax
408ff3:	59                   	pop    %ecx
408ff4:	59                   	pop    %ecx
408ff5:	39 47 0c             	cmp    %eax,0xc(%edi)
408ff8:	74 23                	je     0x40901d
408ffa:	39 47 08             	cmp    %eax,0x8(%edi)
408ffd:	76 1e                	jbe    0x40901d
408fff:	8b d8                	mov    %eax,%ebx
409001:	8b 07                	mov    (%edi),%eax
409003:	ff 34 98             	push   (%eax,%ebx,4)
409006:	68 18 2d 40 00       	push   $0x402d18
40900b:	56                   	push   %esi
40900c:	e8 37 f3 ff ff       	call   0x408348
409011:	83 c4 0c             	add    $0xc,%esp
409014:	43                   	inc    %ebx
409015:	3b 5f 08             	cmp    0x8(%edi),%ebx
409018:	72 e7                	jb     0x409001
40901a:	8b 5d bc             	mov    -0x44(%ebp),%ebx
40901d:	8d 45 d4             	lea    -0x2c(%ebp),%eax
409020:	50                   	push   %eax
409021:	8d 45 c8             	lea    -0x38(%ebp),%eax
409024:	50                   	push   %eax
409025:	51                   	push   %ecx
409026:	6a 1e                	push   $0x1e
409028:	5a                   	pop    %edx
409029:	8b cb                	mov    %ebx,%ecx
40902b:	e8 35 f0 ff ff       	call   0x408065
409030:	85 c0                	test   %eax,%eax
409032:	74 0a                	je     0x40903e
409034:	68 7c 2d 40 00       	push   $0x402d7c
409039:	e9 bc 02 00 00       	jmp    0x4092fa
40903e:	8b 7d d4             	mov    -0x2c(%ebp),%edi
409041:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
409045:	74 13                	je     0x40905a
409047:	81 7f 0c 84 00 00 00 	cmpl   $0x84,0xc(%edi)
40904e:	74 0a                	je     0x40905a
409050:	68 7c 2d 40 00       	push   $0x402d7c
409055:	e9 3a f7 ff ff       	jmp    0x408794
40905a:	68 a0 2d 40 00       	push   $0x402da0
40905f:	56                   	push   %esi
409060:	e8 e3 f2 ff ff       	call   0x408348
409065:	33 c0                	xor    %eax,%eax
409067:	59                   	pop    %ecx
409068:	59                   	pop    %ecx
409069:	39 47 0c             	cmp    %eax,0xc(%edi)
40906c:	74 23                	je     0x409091
40906e:	39 47 08             	cmp    %eax,0x8(%edi)
409071:	76 1e                	jbe    0x409091
409073:	8b d8                	mov    %eax,%ebx
409075:	8b 07                	mov    (%edi),%eax
409077:	ff 34 98             	push   (%eax,%ebx,4)
40907a:	68 18 2d 40 00       	push   $0x402d18
40907f:	56                   	push   %esi
409080:	e8 c3 f2 ff ff       	call   0x408348
409085:	83 c4 0c             	add    $0xc,%esp
409088:	43                   	inc    %ebx
409089:	3b 5f 08             	cmp    0x8(%edi),%ebx
40908c:	72 e7                	jb     0x409075
40908e:	8b 5d bc             	mov    -0x44(%ebp),%ebx
409091:	8d 45 d4             	lea    -0x2c(%ebp),%eax
409094:	50                   	push   %eax
409095:	8d 45 c8             	lea    -0x38(%ebp),%eax
409098:	50                   	push   %eax
409099:	51                   	push   %ecx
40909a:	6a 1f                	push   $0x1f
40909c:	5a                   	pop    %edx
40909d:	8b cb                	mov    %ebx,%ecx
40909f:	e8 c1 ef ff ff       	call   0x408065
4090a4:	85 c0                	test   %eax,%eax
4090a6:	74 0a                	je     0x4090b2
4090a8:	68 cc 2d 40 00       	push   $0x402dcc
4090ad:	e9 48 02 00 00       	jmp    0x4092fa
4090b2:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
4090b5:	8b 41 0c             	mov    0xc(%ecx),%eax
4090b8:	85 c0                	test   %eax,%eax
4090ba:	74 23                	je     0x4090df
4090bc:	83 f8 04             	cmp    $0x4,%eax
4090bf:	74 0a                	je     0x4090cb
4090c1:	68 cc 2d 40 00       	push   $0x402dcc
4090c6:	e9 c9 f6 ff ff       	jmp    0x408794
4090cb:	85 c0                	test   %eax,%eax
4090cd:	74 10                	je     0x4090df
4090cf:	ff 31                	push   (%ecx)
4090d1:	68 08 2e 40 00       	push   $0x402e08
4090d6:	56                   	push   %esi
4090d7:	e8 6c f2 ff ff       	call   0x408348
4090dc:	83 c4 0c             	add    $0xc,%esp
4090df:	33 c0                	xor    %eax,%eax
4090e1:	33 d2                	xor    %edx,%edx
4090e3:	89 45 b8             	mov    %eax,-0x48(%ebp)
4090e6:	42                   	inc    %edx
4090e7:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4090ea:	50                   	push   %eax
4090eb:	8d 45 c8             	lea    -0x38(%ebp),%eax
4090ee:	50                   	push   %eax
4090ef:	51                   	push   %ecx
4090f0:	8b cb                	mov    %ebx,%ecx
4090f2:	e8 6e ef ff ff       	call   0x408065
4090f7:	85 c0                	test   %eax,%eax
4090f9:	74 0a                	je     0x409105
4090fb:	68 50 2e 40 00       	push   $0x402e50
409100:	e9 f5 01 00 00       	jmp    0x4092fa
409105:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
409108:	8b 43 0c             	mov    0xc(%ebx),%eax
40910b:	85 c0                	test   %eax,%eax
40910d:	0f 84 89 01 00 00    	je     0x40929c
409113:	83 f8 05             	cmp    $0x5,%eax
409116:	74 0a                	je     0x409122
409118:	68 50 2e 40 00       	push   $0x402e50
40911d:	e9 72 f6 ff ff       	jmp    0x408794
409122:	85 c0                	test   %eax,%eax
409124:	0f 84 72 01 00 00    	je     0x40929c
40912a:	8b 1b                	mov    (%ebx),%ebx
40912c:	8d 45 b8             	lea    -0x48(%ebp),%eax
40912f:	50                   	push   %eax
409130:	53                   	push   %ebx
409131:	ff 15 24 20 41 00    	call   *0x412024
409137:	85 c0                	test   %eax,%eax
409139:	75 10                	jne    0x40914b
40913b:	ff 15 70 20 41 00    	call   *0x412070
409141:	68 6c 2e 40 00       	push   $0x402e6c
409146:	e9 af 01 00 00       	jmp    0x4092fa
40914b:	85 db                	test   %ebx,%ebx
40914d:	0f 84 49 01 00 00    	je     0x40929c
409153:	33 c0                	xor    %eax,%eax
409155:	89 5d b4             	mov    %ebx,-0x4c(%ebp)
409158:	88 45 ac             	mov    %al,-0x54(%ebp)
40915b:	a1 30 20 41 00       	mov    0x412030,%eax
409160:	89 45 b0             	mov    %eax,-0x50(%ebp)
409163:	68 90 2e 40 00       	push   $0x402e90
409168:	56                   	push   %esi
409169:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
40916d:	e8 d6 f1 ff ff       	call   0x408348
409172:	33 c0                	xor    %eax,%eax
409174:	8b f8                	mov    %eax,%edi
409176:	59                   	pop    %ecx
409177:	59                   	pop    %ecx
409178:	39 45 b8             	cmp    %eax,-0x48(%ebp)
40917b:	0f 86 13 01 00 00    	jbe    0x409294
409181:	57                   	push   %edi
409182:	68 98 2e 40 00       	push   $0x402e98
409187:	56                   	push   %esi
409188:	e8 bb f1 ff ff       	call   0x408348
40918d:	83 c4 0c             	add    $0xc,%esp
409190:	8d 45 d4             	lea    -0x2c(%ebp),%eax
409193:	50                   	push   %eax
409194:	8d 45 c8             	lea    -0x38(%ebp),%eax
409197:	50                   	push   %eax
409198:	51                   	push   %ecx
409199:	57                   	push   %edi
40919a:	6a 02                	push   $0x2
40919c:	5a                   	pop    %edx
40919d:	8b cb                	mov    %ebx,%ecx
40919f:	e8 57 ef ff ff       	call   0x4080fb
4091a4:	85 c0                	test   %eax,%eax
4091a6:	0f 85 32 01 00 00    	jne    0x4092de
4091ac:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
4091af:	8b 41 0c             	mov    0xc(%ecx),%eax
4091b2:	85 c0                	test   %eax,%eax
4091b4:	74 1d                	je     0x4091d3
4091b6:	83 f8 04             	cmp    $0x4,%eax
4091b9:	0f 85 f3 00 00 00    	jne    0x4092b2
4091bf:	85 c0                	test   %eax,%eax
4091c1:	74 10                	je     0x4091d3
4091c3:	ff 31                	push   (%ecx)
4091c5:	68 e8 2e 40 00       	push   $0x402ee8
4091ca:	56                   	push   %esi
4091cb:	e8 78 f1 ff ff       	call   0x408348
4091d0:	83 c4 0c             	add    $0xc,%esp
4091d3:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4091d6:	50                   	push   %eax
4091d7:	8d 45 c8             	lea    -0x38(%ebp),%eax
4091da:	50                   	push   %eax
4091db:	51                   	push   %ecx
4091dc:	57                   	push   %edi
4091dd:	6a 03                	push   $0x3
4091df:	5a                   	pop    %edx
4091e0:	8b cb                	mov    %ebx,%ecx
4091e2:	e8 14 ef ff ff       	call   0x4080fb
4091e7:	85 c0                	test   %eax,%eax
4091e9:	0f 85 e8 00 00 00    	jne    0x4092d7
4091ef:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
4091f2:	8b 41 0c             	mov    0xc(%ecx),%eax
4091f5:	85 c0                	test   %eax,%eax
4091f7:	74 2c                	je     0x409225
4091f9:	83 f8 01             	cmp    $0x1,%eax
4091fc:	0f 85 ba 00 00 00    	jne    0x4092bc
409202:	85 c0                	test   %eax,%eax
409204:	74 1f                	je     0x409225
409206:	33 c0                	xor    %eax,%eax
409208:	39 01                	cmp    %eax,(%ecx)
40920a:	b8 80 24 40 00       	mov    $0x402480,%eax
40920f:	75 05                	jne    0x409216
409211:	b8 8c 24 40 00       	mov    $0x40248c,%eax
409216:	50                   	push   %eax
409217:	68 30 2f 40 00       	push   $0x402f30
40921c:	56                   	push   %esi
40921d:	e8 26 f1 ff ff       	call   0x408348
409222:	83 c4 0c             	add    $0xc,%esp
409225:	83 7d c0 01          	cmpl   $0x1,-0x40(%ebp)
409229:	75 5f                	jne    0x40928a
40922b:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40922e:	50                   	push   %eax
40922f:	8d 45 c8             	lea    -0x38(%ebp),%eax
409232:	50                   	push   %eax
409233:	51                   	push   %ecx
409234:	57                   	push   %edi
409235:	6a 04                	push   $0x4
409237:	5a                   	pop    %edx
409238:	8b cb                	mov    %ebx,%ecx
40923a:	e8 bc ee ff ff       	call   0x4080fb
40923f:	85 c0                	test   %eax,%eax
409241:	0f 85 89 00 00 00    	jne    0x4092d0
409247:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
40924a:	8b 41 0c             	mov    0xc(%ecx),%eax
40924d:	85 c0                	test   %eax,%eax
40924f:	74 05                	je     0x409256
409251:	83 f8 04             	cmp    $0x4,%eax
409254:	75 70                	jne    0x4092c6
409256:	83 f8 04             	cmp    $0x4,%eax
409259:	75 2f                	jne    0x40928a
40925b:	8b 01                	mov    (%ecx),%eax
40925d:	85 c0                	test   %eax,%eax
40925f:	74 29                	je     0x40928a
409261:	33 c9                	xor    %ecx,%ecx
409263:	66 39 08             	cmp    %cx,(%eax)
409266:	74 22                	je     0x40928a
409268:	50                   	push   %eax
409269:	68 64 2f 40 00       	push   $0x402f64
40926e:	56                   	push   %esi
40926f:	e8 d4 f0 ff ff       	call   0x408348
409274:	83 c4 0c             	add    $0xc,%esp
409277:	68 88 2c 40 00       	push   $0x402c88
40927c:	68 84 2f 40 00       	push   $0x402f84
409281:	56                   	push   %esi
409282:	e8 c1 f0 ff ff       	call   0x408348
409287:	83 c4 0c             	add    $0xc,%esp
40928a:	47                   	inc    %edi
40928b:	3b 7d b8             	cmp    -0x48(%ebp),%edi
40928e:	0f 82 ed fe ff ff    	jb     0x409181
409294:	8d 4d ac             	lea    -0x54(%ebp),%ecx
409297:	e8 c7 cb ff ff       	call   0x405e63
40929c:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40929f:	e8 73 cc ff ff       	call   0x405f17
4092a4:	8d 4d a0             	lea    -0x60(%ebp),%ecx
4092a7:	e8 b7 cb ff ff       	call   0x405e63
4092ac:	e8 7f 53 00 00       	call   0x40e630
4092b1:	c3                   	ret
4092b2:	68 c0 2e 40 00       	push   $0x402ec0
4092b7:	e9 d8 f4 ff ff       	jmp    0x408794
4092bc:	68 08 2f 40 00       	push   $0x402f08
4092c1:	e9 ce f4 ff ff       	jmp    0x408794
4092c6:	68 50 2f 40 00       	push   $0x402f50
4092cb:	e9 c4 f4 ff ff       	jmp    0x408794
4092d0:	68 50 2f 40 00       	push   $0x402f50
4092d5:	eb 23                	jmp    0x4092fa
4092d7:	68 08 2f 40 00       	push   $0x402f08
4092dc:	eb 1c                	jmp    0x4092fa
4092de:	68 c0 2e 40 00       	push   $0x402ec0
4092e3:	eb 15                	jmp    0x4092fa
4092e5:	ff 15 70 20 41 00    	call   *0x412070
4092eb:	6a 08                	push   $0x8
4092ed:	5a                   	pop    %edx
4092ee:	8b c8                	mov    %eax,%ecx
4092f0:	e8 ee e2 ff ff       	call   0x4075e3
4092f5:	68 f8 26 40 00       	push   $0x4026f8
4092fa:	6a 0e                	push   $0xe
4092fc:	50                   	push   %eax
4092fd:	e8 13 e3 ff ff       	call   0x407615
409302:	cc                   	int3
409303:	6a 54                	push   $0x54
409305:	b8 77 f0 40 00       	mov    $0x40f077,%eax
40930a:	e8 72 53 00 00       	call   0x40e681
40930f:	8b f1                	mov    %ecx,%esi
409311:	8d 7e 18             	lea    0x18(%esi),%edi
409314:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
409318:	72 04                	jb     0x40931e
40931a:	8b 07                	mov    (%edi),%eax
40931c:	eb 02                	jmp    0x409320
40931e:	8b c7                	mov    %edi,%eax
409320:	6a 02                	push   $0x2
409322:	6a 01                	push   $0x1
409324:	50                   	push   %eax
409325:	ff 15 28 20 41 00    	call   *0x412028
40932b:	8b d8                	mov    %eax,%ebx
40932d:	89 5d b8             	mov    %ebx,-0x48(%ebp)
409330:	85 db                	test   %ebx,%ebx
409332:	0f 84 f5 0e 00 00    	je     0x40a22d
409338:	a1 30 20 41 00       	mov    0x412030,%eax
40933d:	33 c9                	xor    %ecx,%ecx
40933f:	88 4d a0             	mov    %cl,-0x60(%ebp)
409342:	89 45 a4             	mov    %eax,-0x5c(%ebp)
409345:	89 5d a8             	mov    %ebx,-0x58(%ebp)
409348:	89 4d fc             	mov    %ecx,-0x4(%ebp)
40934b:	ba b0 2f 40 00       	mov    $0x402fb0,%edx
409350:	38 0d 04 17 41 00    	cmp    %cl,0x411704
409356:	74 05                	je     0x40935d
409358:	ba 08 30 40 00       	mov    $0x403008,%edx