405fc7:	e8 29 2c 00 00       	call   0x408bf5
405fcc:	c9                   	leave
405fcd:	c2 08 00             	ret    $0x8
405fd0:	e8 9e f3 ff ff       	call   0x405373
405fd5:	68 05 40 00 80       	push   $0x80004005
405fda:	e8 e0 b0 ff ff       	call   0x4010bf
405fdf:	cc                   	int3
405fe0:	55                   	push   %ebp
405fe1:	8b ec                	mov    %esp,%ebp
405fe3:	83 ec 28             	sub    $0x28,%esp
405fe6:	a1 18 60 42 00       	mov    0x426018,%eax
405feb:	33 c5                	xor    %ebp,%eax
405fed:	89 45 fc             	mov    %eax,-0x4(%ebp)
405ff0:	57                   	push   %edi
405ff1:	8b f9                	mov    %ecx,%edi
405ff3:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
405ff7:	0f 84 55 01 00 00    	je     0x406152
405ffd:	33 c0                	xor    %eax,%eax
405fff:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
406003:	8d 45 f4             	lea    -0xc(%ebp),%eax
406006:	50                   	push   %eax
406007:	8d 45 f8             	lea    -0x8(%ebp),%eax
40600a:	50                   	push   %eax
40600b:	ff 77 04             	push   0x4(%edi)
40600e:	ff 15 58 c0 41 00    	call   *0x41c058
406014:	85 c0                	test   %eax,%eax
406016:	0f 84 72 01 00 00    	je     0x40618e
40601c:	0f b7 45 f8          	movzwl -0x8(%ebp),%eax
406020:	a9 00 80 00 00       	test   $0x8000,%eax
406025:	0f 84 27 01 00 00    	je     0x406152
40602b:	53                   	push   %ebx
40602c:	56                   	push   %esi
40602d:	33 f6                	xor    %esi,%esi
40602f:	8d 45 f0             	lea    -0x10(%ebp),%eax
406032:	50                   	push   %eax
406033:	56                   	push   %esi
406034:	8d 45 ec             	lea    -0x14(%ebp),%eax
406037:	89 75 e4             	mov    %esi,-0x1c(%ebp)
40603a:	50                   	push   %eax
40603b:	56                   	push   %esi
40603c:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40603f:	89 75 e8             	mov    %esi,-0x18(%ebp)
406042:	50                   	push   %eax
406043:	56                   	push   %esi
406044:	8d 45 e8             	lea    -0x18(%ebp),%eax
406047:	89 75 f0             	mov    %esi,-0x10(%ebp)
40604a:	50                   	push   %eax
40604b:	56                   	push   %esi
40604c:	8d 45 e0             	lea    -0x20(%ebp),%eax
40604f:	89 75 ec             	mov    %esi,-0x14(%ebp)
406052:	50                   	push   %eax
406053:	56                   	push   %esi
406054:	ff 77 04             	push   0x4(%edi)
406057:	89 75 e0             	mov    %esi,-0x20(%ebp)
40605a:	ff 15 3c c0 41 00    	call   *0x41c03c
406060:	ff 15 48 c1 41 00    	call   *0x41c148
406066:	83 f8 7a             	cmp    $0x7a,%eax
406069:	0f 85 29 01 00 00    	jne    0x406198
40606f:	ff 75 e0             	push   -0x20(%ebp)
406072:	e8 1f 62 00 00       	call   0x40c296
406077:	59                   	pop    %ecx
406078:	89 45 dc             	mov    %eax,-0x24(%ebp)
40607b:	39 75 ec             	cmp    %esi,-0x14(%ebp)
40607e:	74 0e                	je     0x40608e
406080:	ff 75 ec             	push   -0x14(%ebp)
406083:	e8 0e 62 00 00       	call   0x40c296
406088:	59                   	pop    %ecx
406089:	89 45 d8             	mov    %eax,-0x28(%ebp)
40608c:	eb 03                	jmp    0x406091
40608e:	89 75 d8             	mov    %esi,-0x28(%ebp)
406091:	39 75 f0             	cmp    %esi,-0x10(%ebp)
406094:	74 0d                	je     0x4060a3
406096:	ff 75 f0             	push   -0x10(%ebp)
406099:	e8 f8 61 00 00       	call   0x40c296
40609e:	59                   	pop    %ecx
40609f:	8b d8                	mov    %eax,%ebx
4060a1:	eb 02                	jmp    0x4060a5
4060a3:	8b de                	mov    %esi,%ebx
4060a5:	8b 45 e8             	mov    -0x18(%ebp),%eax
4060a8:	85 c0                	test   %eax,%eax
4060aa:	74 0f                	je     0x4060bb
4060ac:	50                   	push   %eax
4060ad:	e8 e4 61 00 00       	call   0x40c296
4060b2:	89 45 f4             	mov    %eax,-0xc(%ebp)
4060b5:	8b 45 e8             	mov    -0x18(%ebp),%eax
4060b8:	59                   	pop    %ecx
4060b9:	eb 03                	jmp    0x4060be
4060bb:	89 75 f4             	mov    %esi,-0xc(%ebp)
4060be:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4060c1:	85 c9                	test   %ecx,%ecx
4060c3:	74 0f                	je     0x4060d4
4060c5:	51                   	push   %ecx
4060c6:	e8 cb 61 00 00       	call   0x40c296
4060cb:	59                   	pop    %ecx
4060cc:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4060cf:	8b f0                	mov    %eax,%esi
4060d1:	8b 45 e8             	mov    -0x18(%ebp),%eax
4060d4:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
4060d8:	0f 84 81 00 00 00    	je     0x40615f
4060de:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
4060e2:	8b 55 d8             	mov    -0x28(%ebp),%edx
4060e5:	74 04                	je     0x4060eb
4060e7:	85 d2                	test   %edx,%edx
4060e9:	74 74                	je     0x40615f
4060eb:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
4060ef:	74 04                	je     0x4060f5
4060f1:	85 db                	test   %ebx,%ebx
4060f3:	74 6a                	je     0x40615f
4060f5:	85 c0                	test   %eax,%eax
4060f7:	8b 45 f4             	mov    -0xc(%ebp),%eax
4060fa:	74 04                	je     0x406100
4060fc:	85 c0                	test   %eax,%eax
4060fe:	74 5f                	je     0x40615f
406100:	85 c9                	test   %ecx,%ecx
406102:	74 04                	je     0x406108
406104:	85 f6                	test   %esi,%esi
406106:	74 57                	je     0x40615f
406108:	8d 4d f0             	lea    -0x10(%ebp),%ecx
40610b:	51                   	push   %ecx
40610c:	53                   	push   %ebx
40610d:	8d 4d ec             	lea    -0x14(%ebp),%ecx
406110:	51                   	push   %ecx
406111:	52                   	push   %edx
406112:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
406115:	51                   	push   %ecx
406116:	56                   	push   %esi
406117:	8d 4d e8             	lea    -0x18(%ebp),%ecx
40611a:	51                   	push   %ecx
40611b:	50                   	push   %eax
40611c:	8d 45 e0             	lea    -0x20(%ebp),%eax
40611f:	50                   	push   %eax
406120:	ff 75 dc             	push   -0x24(%ebp)
406123:	ff 77 04             	push   0x4(%edi)
406126:	ff 15 3c c0 41 00    	call   *0x41c03c
40612c:	85 c0                	test   %eax,%eax
40612e:	75 09                	jne    0x406139
406130:	e8 d5 f2 ff ff       	call   0x40540a
406135:	8b f8                	mov    %eax,%edi
406137:	eb 2b                	jmp    0x406164
406139:	8b 07                	mov    (%edi),%eax
40613b:	8b 70 04             	mov    0x4(%eax),%esi
40613e:	8b ce                	mov    %esi,%ecx
406140:	ff 15 50 c2 41 00    	call   *0x41c250
406146:	8b cf                	mov    %edi,%ecx
406148:	ff d6                	call   *%esi
40614a:	8b 45 dc             	mov    -0x24(%ebp),%eax
40614d:	5e                   	pop    %esi
40614e:	89 47 04             	mov    %eax,0x4(%edi)
406151:	5b                   	pop    %ebx
406152:	8b 4d fc             	mov    -0x4(%ebp),%ecx
406155:	33 cd                	xor    %ebp,%ecx
406157:	5f                   	pop    %edi
406158:	e8 98 2a 00 00       	call   0x408bf5
40615d:	c9                   	leave
40615e:	c3                   	ret
40615f:	bf 0e 00 07 80       	mov    $0x8007000e,%edi
406164:	ff 75 dc             	push   -0x24(%ebp)
406167:	e8 0f 61 00 00       	call   0x40c27b
40616c:	ff 75 d8             	push   -0x28(%ebp)
40616f:	e8 07 61 00 00       	call   0x40c27b
406174:	53                   	push   %ebx
406175:	e8 01 61 00 00       	call   0x40c27b
40617a:	ff 75 f4             	push   -0xc(%ebp)
40617d:	e8 f9 60 00 00       	call   0x40c27b
406182:	56                   	push   %esi
406183:	e8 f3 60 00 00       	call   0x40c27b
406188:	83 c4 14             	add    $0x14,%esp
40618b:	57                   	push   %edi
40618c:	eb 05                	jmp    0x406193
40618e:	68 05 40 00 80       	push   $0x80004005
406193:	e8 27 af ff ff       	call   0x4010bf
406198:	e8 d6 f1 ff ff       	call   0x405373
40619d:	cc                   	int3
40619e:	56                   	push   %esi
40619f:	57                   	push   %edi
4061a0:	6a 14                	push   $0x14
4061a2:	8b f9                	mov    %ecx,%edi
4061a4:	e8 ed 60 00 00       	call   0x40c296
4061a9:	89 47 04             	mov    %eax,0x4(%edi)
4061ac:	59                   	pop    %ecx
4061ad:	85 c0                	test   %eax,%eax
4061af:	74 27                	je     0x4061d8
4061b1:	6a 01                	push   $0x1
4061b3:	50                   	push   %eax
4061b4:	ff 15 28 c0 41 00    	call   *0x41c028
4061ba:	85 c0                	test   %eax,%eax
4061bc:	75 17                	jne    0x4061d5
4061be:	e8 47 f2 ff ff       	call   0x40540a
4061c3:	ff 77 04             	push   0x4(%edi)
4061c6:	8b f0                	mov    %eax,%esi
4061c8:	e8 ae 60 00 00       	call   0x40c27b
4061cd:	83 67 04 00          	andl   $0x0,0x4(%edi)
4061d1:	59                   	pop    %ecx
4061d2:	56                   	push   %esi
4061d3:	eb 08                	jmp    0x4061dd
4061d5:	5f                   	pop    %edi
4061d6:	5e                   	pop    %esi
4061d7:	c3                   	ret
4061d8:	68 0e 00 07 80       	push   $0x8007000e
4061dd:	e8 dd ae ff ff       	call   0x4010bf
4061e2:	cc                   	int3
4061e3:	55                   	push   %ebp
4061e4:	8b ec                	mov    %esp,%ebp
4061e6:	83 ec 10             	sub    $0x10,%esp
4061e9:	a1 18 60 42 00       	mov    0x426018,%eax
4061ee:	33 c5                	xor    %ebp,%eax
4061f0:	89 45 fc             	mov    %eax,-0x4(%ebp)
4061f3:	56                   	push   %esi
4061f4:	8b 75 08             	mov    0x8(%ebp),%esi
4061f7:	57                   	push   %edi
4061f8:	56                   	push   %esi
4061f9:	8b f9                	mov    %ecx,%edi
4061fb:	ff 15 34 c0 41 00    	call   *0x41c034
406201:	50                   	push   %eax
406202:	89 45 f0             	mov    %eax,-0x10(%ebp)
406205:	e8 8c 60 00 00       	call   0x40c296
40620a:	89 47 04             	mov    %eax,0x4(%edi)
40620d:	59                   	pop    %ecx
40620e:	85 c0                	test   %eax,%eax
406210:	0f 84 9e 00 00 00    	je     0x4062b4
406216:	8d 45 f4             	lea    -0xc(%ebp),%eax
406219:	50                   	push   %eax
40621a:	8d 45 f8             	lea    -0x8(%ebp),%eax
40621d:	50                   	push   %eax
40621e:	56                   	push   %esi
40621f:	ff 15 58 c0 41 00    	call   *0x41c058
406225:	85 c0                	test   %eax,%eax
406227:	75 17                	jne    0x406240
406229:	e8 dc f1 ff ff       	call   0x40540a
40622e:	ff 77 04             	push   0x4(%edi)
406231:	8b f0                	mov    %eax,%esi
406233:	e8 43 60 00 00       	call   0x40c27b
406238:	83 67 04 00          	andl   $0x0,0x4(%edi)
40623c:	59                   	pop    %ecx
40623d:	56                   	push   %esi
40623e:	eb 79                	jmp    0x4062b9
406240:	0f b7 45 f8          	movzwl -0x8(%ebp),%eax
406244:	8b 4f 04             	mov    0x4(%edi),%ecx
406247:	a9 00 80 00 00       	test   $0x8000,%eax
40624c:	74 46                	je     0x406294
40624e:	8b 45 f0             	mov    -0x10(%ebp),%eax
406251:	85 c0                	test   %eax,%eax
406253:	75 04                	jne    0x406259
406255:	33 f6                	xor    %esi,%esi
406257:	eb 32                	jmp    0x40628b
406259:	85 c9                	test   %ecx,%ecx
40625b:	74 1f                	je     0x40627c
40625d:	50                   	push   %eax
40625e:	85 f6                	test   %esi,%esi
406260:	74 0f                	je     0x406271
406262:	56                   	push   %esi
406263:	51                   	push   %ecx
406264:	0f ae e8             	lfence
406267:	e8 64 39 00 00       	call   0x409bd0
40626c:	83 c4 0c             	add    $0xc,%esp
40626f:	eb e4                	jmp    0x406255
406271:	6a 00                	push   $0x0
406273:	51                   	push   %ecx
406274:	e8 97 2e 00 00       	call   0x409110
406279:	83 c4 0c             	add    $0xc,%esp
40627c:	e8 52 8a 00 00       	call   0x40ecd3
406281:	6a 16                	push   $0x16
406283:	5e                   	pop    %esi
406284:	89 30                	mov    %esi,(%eax)
406286:	e8 8b 89 00 00       	call   0x40ec16
40628b:	56                   	push   %esi
40628c:	e8 4f ae ff ff       	call   0x4010e0
406291:	59                   	pop    %ecx
406292:	eb 10                	jmp    0x4062a4
406294:	8d 45 f0             	lea    -0x10(%ebp),%eax
406297:	50                   	push   %eax
406298:	51                   	push   %ecx
406299:	56                   	push   %esi
40629a:	ff 15 38 c0 41 00    	call   *0x41c038
4062a0:	85 c0                	test   %eax,%eax
4062a2:	74 85                	je     0x406229
4062a4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4062a7:	5f                   	pop    %edi
4062a8:	33 cd                	xor    %ebp,%ecx
4062aa:	5e                   	pop    %esi
4062ab:	e8 45 29 00 00       	call   0x408bf5
4062b0:	c9                   	leave
4062b1:	c2 04 00             	ret    $0x4
4062b4:	68 0e 00 07 80       	push   $0x8007000e
4062b9:	e8 01 ae ff ff       	call   0x4010bf
4062be:	cc                   	int3
4062bf:	55                   	push   %ebp
4062c0:	8b ec                	mov    %esp,%ebp
4062c2:	81 ec 8c 00 00 00    	sub    $0x8c,%esp
4062c8:	a1 18 60 42 00       	mov    0x426018,%eax
4062cd:	33 c5                	xor    %ebp,%eax
4062cf:	89 45 fc             	mov    %eax,-0x4(%ebp)
4062d2:	53                   	push   %ebx
4062d3:	56                   	push   %esi
4062d4:	33 c0                	xor    %eax,%eax
4062d6:	c7 45 e8 02 00 00 00 	movl   $0x2,-0x18(%ebp)
4062dd:	57                   	push   %edi
4062de:	6a 12                	push   $0x12
4062e0:	6a 01                	push   $0x1
4062e2:	66 89 45 e5          	mov    %ax,-0x1b(%ebp)
4062e6:	bb b4 33 42 00       	mov    $0x4233b4,%ebx
4062eb:	88 45 e7             	mov    %al,-0x19(%ebp)
4062ee:	8b f1                	mov    %ecx,%esi
4062f0:	89 45 e0             	mov    %eax,-0x20(%ebp)
4062f3:	88 45 e4             	mov    %al,-0x1c(%ebp)
4062f6:	89 45 ec             	mov    %eax,-0x14(%ebp)
4062f9:	89 45 f0             	mov    %eax,-0x10(%ebp)
4062fc:	89 45 f4             	mov    %eax,-0xc(%ebp)
4062ff:	89 45 f8             	mov    %eax,-0x8(%ebp)
406302:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
406308:	53                   	push   %ebx
406309:	50                   	push   %eax
40630a:	c7 45 dc 1c 34 42 00 	movl   $0x42341c,-0x24(%ebp)
406311:	e8 2c f1 ff ff       	call   0x405442
406316:	59                   	pop    %ecx
406317:	59                   	pop    %ecx
406318:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
40631e:	50                   	push   %eax
40631f:	8d 4d dc             	lea    -0x24(%ebp),%ecx
406322:	e8 b2 f5 ff ff       	call   0x4058d9
406327:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
40632d:	e8 f9 f1 ff ff       	call   0x40552b
406332:	bf 20 02 00 00       	mov    $0x220,%edi
406337:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
40633d:	57                   	push   %edi
40633e:	6a 20                	push   $0x20
406340:	6a 02                	push   $0x2
406342:	53                   	push   %ebx
406343:	50                   	push   %eax
406344:	e8 f9 f0 ff ff       	call   0x405442
406349:	83 c4 0c             	add    $0xc,%esp
40634c:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
406352:	8d 4d dc             	lea    -0x24(%ebp),%ecx
406355:	50                   	push   %eax
406356:	e8 7e f5 ff ff       	call   0x4058d9
40635b:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
406361:	e8 c5 f1 ff ff       	call   0x40552b
406366:	57                   	push   %edi
406367:	6a 20                	push   $0x20
406369:	6a 02                	push   $0x2
40636b:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
406371:	53                   	push   %ebx
406372:	50                   	push   %eax
406373:	e8 ca f0 ff ff       	call   0x405442
406378:	83 c4 10             	add    $0x10,%esp
40637b:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
406381:	8b ce                	mov    %esi,%ecx
406383:	50                   	push   %eax
406384:	e8 88 f9 ff ff       	call   0x405d11
406389:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx