427f51:	85 f6                	test   %esi,%esi
427f53:	79 0f                	jns    0x427f64
427f55:	68 54 dd 45 00       	push   $0x45dd54
427f5a:	56                   	push   %esi
427f5b:	e8 cf 81 01 00       	call   0x44012f
427f60:	59                   	pop    %ecx
427f61:	59                   	pop    %ecx
427f62:	eb 6c                	jmp    0x427fd0
427f64:	8b 45 fc             	mov    -0x4(%ebp),%eax
427f67:	ff 75 10             	push   0x10(%ebp)
427f6a:	c7 00 0a 00 00 00    	movl   $0xa,(%eax)
427f70:	8b 45 fc             	mov    -0x4(%ebp),%eax
427f73:	89 78 08             	mov    %edi,0x8(%eax)
427f76:	8b 45 fc             	mov    -0x4(%ebp),%eax
427f79:	8b 4f 68             	mov    0x68(%edi),%ecx
427f7c:	89 48 0c             	mov    %ecx,0xc(%eax)
427f7f:	e8 72 b7 fe ff       	call   0x4136f6
427f84:	8b f0                	mov    %eax,%esi
427f86:	85 f6                	test   %esi,%esi
427f88:	79 07                	jns    0x427f91
427f8a:	68 80 dd 45 00       	push   $0x45dd80
427f8f:	eb c9                	jmp    0x427f5a
427f91:	83 7f 64 00          	cmpl   $0x0,0x64(%edi)
427f95:	74 39                	je     0x427fd0
427f97:	8d 45 fc             	lea    -0x4(%ebp),%eax
427f9a:	50                   	push   %eax
427f9b:	ff 75 10             	push   0x10(%ebp)
427f9e:	85 db                	test   %ebx,%ebx
427fa0:	74 39                	je     0x427fdb
427fa2:	ff 33                	push   (%ebx)
427fa4:	e8 ee a2 fe ff       	call   0x412297
427fa9:	8b f0                	mov    %eax,%esi
427fab:	85 f6                	test   %esi,%esi
427fad:	79 07                	jns    0x427fb6
427faf:	68 ac dd 45 00       	push   $0x45ddac
427fb4:	eb a4                	jmp    0x427f5a
427fb6:	ff 03                	incl   (%ebx)
427fb8:	8b 45 fc             	mov    -0x4(%ebp),%eax
427fbb:	c7 00 0a 00 00 00    	movl   $0xa,(%eax)
427fc1:	8b 45 fc             	mov    -0x4(%ebp),%eax
427fc4:	89 78 08             	mov    %edi,0x8(%eax)
427fc7:	8b 45 fc             	mov    -0x4(%ebp),%eax
427fca:	8b 4f 64             	mov    0x64(%edi),%ecx
427fcd:	89 48 0c             	mov    %ecx,0xc(%eax)
427fd0:	5f                   	pop    %edi
427fd1:	8b c6                	mov    %esi,%eax
427fd3:	5e                   	pop    %esi
427fd4:	5b                   	pop    %ebx
427fd5:	8b e5                	mov    %ebp,%esp
427fd7:	5d                   	pop    %ebp
427fd8:	c2 0c 00             	ret    $0xc
427fdb:	e8 ca 9c fe ff       	call   0x411caa
427fe0:	8b f0                	mov    %eax,%esi
427fe2:	85 f6                	test   %esi,%esi
427fe4:	79 d2                	jns    0x427fb8
427fe6:	68 d8 dd 45 00       	push   $0x45ddd8
427feb:	e9 6a ff ff ff       	jmp    0x427f5a
427ff0:	55                   	push   %ebp
427ff1:	8b ec                	mov    %esp,%ebp
427ff3:	83 ec 1c             	sub    $0x1c,%esp
427ff6:	53                   	push   %ebx
427ff7:	56                   	push   %esi
427ff8:	33 f6                	xor    %esi,%esi
427ffa:	33 c9                	xor    %ecx,%ecx
427ffc:	57                   	push   %edi
427ffd:	8b 7d 0c             	mov    0xc(%ebp),%edi
428000:	8b de                	mov    %esi,%ebx
428002:	89 75 f8             	mov    %esi,-0x8(%ebp)
428005:	89 75 f4             	mov    %esi,-0xc(%ebp)
428008:	89 75 fc             	mov    %esi,-0x4(%ebp)
42800b:	8b 47 14             	mov    0x14(%edi),%eax
42800e:	85 c0                	test   %eax,%eax
428010:	89 75 f0             	mov    %esi,-0x10(%ebp)
428013:	0f 95 c1             	setne  %cl
428016:	89 75 ec             	mov    %esi,-0x14(%ebp)
428019:	81 c1 01 00 00 80    	add    $0x80000001,%ecx
42801f:	89 77 6c             	mov    %esi,0x6c(%edi)
428022:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
428025:	89 77 70             	mov    %esi,0x70(%edi)
428028:	39 b7 88 00 00 00    	cmp    %esi,0x88(%edi)
42802e:	75 16                	jne    0x428046
428030:	ff 37                	push   (%edi)
428032:	68 41 01 00 a0       	push   $0xa0000141
428037:	6a 03                	push   $0x3
428039:	e8 d1 d4 fd ff       	call   0x40550f
42803e:	83 c4 0c             	add    $0xc,%esp
428041:	e9 fc 01 00 00       	jmp    0x428242
428046:	39 45 08             	cmp    %eax,0x8(%ebp)
428049:	74 26                	je     0x428071
42804b:	50                   	push   %eax
42804c:	e8 9e c0 fe ff       	call   0x4140ef
428051:	50                   	push   %eax
428052:	ff 75 08             	push   0x8(%ebp)
428055:	e8 95 c0 fe ff       	call   0x4140ef
42805a:	50                   	push   %eax
42805b:	ff 37                	push   (%edi)
42805d:	68 42 01 00 a0       	push   $0xa0000142
428062:	6a 02                	push   $0x2
428064:	e8 a6 d4 fd ff       	call   0x40550f
428069:	83 c4 14             	add    $0x14,%esp
42806c:	e9 d1 01 00 00       	jmp    0x428242
428071:	83 7f 5c 01          	cmpl   $0x1,0x5c(%edi)
428075:	0f 85 b9 00 00 00    	jne    0x428134
42807b:	8d 45 f8             	lea    -0x8(%ebp),%eax
42807e:	50                   	push   %eax
42807f:	ff 75 10             	push   0x10(%ebp)
428082:	57                   	push   %edi
428083:	e8 3e f3 ff ff       	call   0x4273c6
428088:	8b d8                	mov    %eax,%ebx
42808a:	85 db                	test   %ebx,%ebx
42808c:	79 12                	jns    0x4280a0
42808e:	68 78 dc 45 00       	push   $0x45dc78
428093:	53                   	push   %ebx
428094:	e8 96 80 01 00       	call   0x44012f
428099:	59                   	pop    %ecx
42809a:	59                   	pop    %ecx
42809b:	e9 a2 01 00 00       	jmp    0x428242
4280a0:	68 a8 dc 45 00       	push   $0x45dca8
4280a5:	ff 75 f8             	push   -0x8(%ebp)
4280a8:	e8 f6 d3 01 00       	call   0x4454a3
4280ad:	8b d8                	mov    %eax,%ebx
4280af:	81 fb 90 04 07 80    	cmp    $0x80070490,%ebx
4280b5:	74 0b                	je     0x4280c2
4280b7:	85 db                	test   %ebx,%ebx
4280b9:	79 79                	jns    0x428134
4280bb:	68 b0 dc 45 00       	push   $0x45dcb0
4280c0:	eb d1                	jmp    0x428093
4280c2:	89 75 08             	mov    %esi,0x8(%ebp)
4280c5:	39 b7 88 00 00 00    	cmp    %esi,0x88(%edi)
4280cb:	76 67                	jbe    0x428134
4280cd:	8b ce                	mov    %esi,%ecx
4280cf:	8b 75 e4             	mov    -0x1c(%ebp),%esi
4280d2:	89 4d e8             	mov    %ecx,-0x18(%ebp)
4280d5:	8b 87 84 00 00 00    	mov    0x84(%edi),%eax
4280db:	03 c1                	add    %ecx,%eax
4280dd:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4280e0:	51                   	push   %ecx
4280e1:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4280e4:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4280e7:	51                   	push   %ecx
4280e8:	ff 75 f8             	push   -0x8(%ebp)
4280eb:	6a 00                	push   $0x0
4280ed:	ff 30                	push   (%eax)
4280ef:	56                   	push   %esi
4280f0:	e8 12 0d 02 00       	call   0x448e07
4280f5:	8b d8                	mov    %eax,%ebx
4280f7:	81 fb 02 00 07 80    	cmp    $0x80070002,%ebx
4280fd:	74 19                	je     0x428118
4280ff:	85 db                	test   %ebx,%ebx
428101:	79 17                	jns    0x42811a
428103:	8b 45 e4             	mov    -0x1c(%ebp),%eax
428106:	ff 30                	push   (%eax)
428108:	68 e8 dc 45 00       	push   $0x45dce8
42810d:	53                   	push   %ebx
42810e:	e8 1c 80 01 00       	call   0x44012f
428113:	e9 26 ff ff ff       	jmp    0x42803e
428118:	33 db                	xor    %ebx,%ebx
42811a:	8b 45 08             	mov    0x8(%ebp),%eax
42811d:	8b 4d e8             	mov    -0x18(%ebp),%ecx
428120:	40                   	inc    %eax
428121:	83 c1 10             	add    $0x10,%ecx
428124:	89 45 08             	mov    %eax,0x8(%ebp)
428127:	89 4d e8             	mov    %ecx,-0x18(%ebp)
42812a:	3b 87 88 00 00 00    	cmp    0x88(%edi),%eax
428130:	72 a3                	jb     0x4280d5
428132:	33 f6                	xor    %esi,%esi
428134:	8d 45 ec             	lea    -0x14(%ebp),%eax
428137:	50                   	push   %eax
428138:	8d 45 f0             	lea    -0x10(%ebp),%eax
42813b:	50                   	push   %eax
42813c:	8b 45 10             	mov    0x10(%ebp),%eax
42813f:	ff 30                	push   (%eax)
428141:	57                   	push   %edi
428142:	e8 8b f1 ff ff       	call   0x4272d2
428147:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
42814b:	76 58                	jbe    0x4281a5
42814d:	ff 75 fc             	push   -0x4(%ebp)
428150:	ff 37                	push   (%edi)
428152:	68 47 01 00 a0       	push   $0xa0000147
428157:	6a 02                	push   $0x2
428159:	e8 b1 d3 fd ff       	call   0x40550f
42815e:	83 c4 10             	add    $0x10,%esp
428161:	89 75 08             	mov    %esi,0x8(%ebp)
428164:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
428168:	76 2c                	jbe    0x428196
42816a:	8b fe                	mov    %esi,%edi
42816c:	8b 75 f4             	mov    -0xc(%ebp),%esi
42816f:	ff 74 fe 04          	push   0x4(%esi,%edi,8)
428173:	e8 56 c2 fe ff       	call   0x4143ce
428178:	50                   	push   %eax
428179:	ff 34 fe             	push   (%esi,%edi,8)
42817c:	68 48 01 00 a0       	push   $0xa0000148
428181:	6a 03                	push   $0x3
428183:	e8 87 d3 fd ff       	call   0x40550f
428188:	83 c4 10             	add    $0x10,%esp
42818b:	47                   	inc    %edi
42818c:	3b 7d fc             	cmp    -0x4(%ebp),%edi
42818f:	72 db                	jb     0x42816c
428191:	8b 7d 0c             	mov    0xc(%ebp),%edi
428194:	33 f6                	xor    %esi,%esi
428196:	c7 47 74 01 00 00 00 	movl   $0x1,0x74(%edi)
42819d:	89 77 5c             	mov    %esi,0x5c(%edi)
4281a0:	89 77 60             	mov    %esi,0x60(%edi)
4281a3:	eb 35                	jmp    0x4281da
4281a5:	83 7f 40 01          	cmpl   $0x1,0x40(%edi)
4281a9:	74 2f                	je     0x4281da
4281ab:	8b 97 88 00 00 00    	mov    0x88(%edi),%edx
4281b1:	8b ce                	mov    %esi,%ecx
4281b3:	85 d2                	test   %edx,%edx
4281b5:	74 23                	je     0x4281da
4281b7:	8b 87 84 00 00 00    	mov    0x84(%edi),%eax
4281bd:	83 c0 0c             	add    $0xc,%eax
4281c0:	39 30                	cmp    %esi,(%eax)
4281c2:	74 0a                	je     0x4281ce
4281c4:	41                   	inc    %ecx
4281c5:	83 c0 10             	add    $0x10,%eax
4281c8:	3b ca                	cmp    %edx,%ecx
4281ca:	72 f4                	jb     0x4281c0
4281cc:	eb 0c                	jmp    0x4281da
4281ce:	8b 45 f0             	mov    -0x10(%ebp),%eax
4281d1:	89 47 64             	mov    %eax,0x64(%edi)
4281d4:	8b 45 ec             	mov    -0x14(%ebp),%eax
4281d7:	89 47 68             	mov    %eax,0x68(%edi)
4281da:	83 7f 5c 01          	cmpl   $0x1,0x5c(%edi)
4281de:	75 56                	jne    0x428236
4281e0:	89 75 08             	mov    %esi,0x8(%ebp)
4281e3:	39 b7 88 00 00 00    	cmp    %esi,0x88(%edi)
4281e9:	76 4b                	jbe    0x428236
4281eb:	8b 4d 10             	mov    0x10(%ebp),%ecx
4281ee:	89 75 10             	mov    %esi,0x10(%ebp)
4281f1:	8d 41 78             	lea    0x78(%ecx),%eax
4281f4:	8d 51 74             	lea    0x74(%ecx),%edx
4281f7:	89 45 0c             	mov    %eax,0xc(%ebp)
4281fa:	89 55 e4             	mov    %edx,-0x1c(%ebp)
4281fd:	8b ce                	mov    %esi,%ecx
4281ff:	8b b7 84 00 00 00    	mov    0x84(%edi),%esi
428205:	03 f1                	add    %ecx,%esi
428207:	6a 00                	push   $0x0
428209:	ff 36                	push   (%esi)
42820b:	50                   	push   %eax
42820c:	52                   	push   %edx
42820d:	e8 1f 0d 02 00       	call   0x448f31
428212:	8b d8                	mov    %eax,%ebx
428214:	85 db                	test   %ebx,%ebx
428216:	78 54                	js     0x42826c
428218:	8b 45 08             	mov    0x8(%ebp),%eax
42821b:	8b 4d 10             	mov    0x10(%ebp),%ecx
42821e:	40                   	inc    %eax
42821f:	8b 55 e4             	mov    -0x1c(%ebp),%edx
428222:	83 c1 10             	add    $0x10,%ecx
428225:	3b 87 88 00 00 00    	cmp    0x88(%edi),%eax
42822b:	89 45 08             	mov    %eax,0x8(%ebp)
42822e:	8b 45 0c             	mov    0xc(%ebp),%eax
428231:	89 4d 10             	mov    %ecx,0x10(%ebp)
428234:	72 c9                	jb     0x4281ff
428236:	8b 45 f0             	mov    -0x10(%ebp),%eax
428239:	89 47 6c             	mov    %eax,0x6c(%edi)
42823c:	8b 45 ec             	mov    -0x14(%ebp),%eax
42823f:	89 47 70             	mov    %eax,0x70(%edi)
428242:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
428246:	74 0b                	je     0x428253
428248:	ff 75 fc             	push   -0x4(%ebp)
42824b:	ff 75 f4             	push   -0xc(%ebp)
42824e:	e8 72 0d 02 00       	call   0x448fc5
428253:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
428257:	74 08                	je     0x428261
428259:	ff 75 f8             	push   -0x8(%ebp)
42825c:	e8 ef d1 01 00       	call   0x445450
428261:	5f                   	pop    %edi
428262:	5e                   	pop    %esi
428263:	8b c3                	mov    %ebx,%eax
428265:	5b                   	pop    %ebx
428266:	8b e5                	mov    %ebp,%esp
428268:	5d                   	pop    %ebp
428269:	c2 0c 00             	ret    $0xc
42826c:	ff 36                	push   (%esi)
42826e:	68 c8 2c 45 00       	push   $0x452cc8
428273:	e9 95 fe ff ff       	jmp    0x42810d
428278:	55                   	push   %ebp
428279:	8b ec                	mov    %esp,%ebp
42827b:	53                   	push   %ebx
42827c:	56                   	push   %esi
42827d:	57                   	push   %edi
42827e:	8b 7d 08             	mov    0x8(%ebp),%edi
428281:	33 f6                	xor    %esi,%esi
428283:	8d 5f 6c             	lea    0x6c(%edi),%ebx
428286:	83 3b 01             	cmpl   $0x1,(%ebx)
428289:	75 3a                	jne    0x4282c5
42828b:	8d 47 70             	lea    0x70(%edi),%eax
42828e:	50                   	push   %eax
42828f:	8b 45 0c             	mov    0xc(%ebp),%eax
428292:	53                   	push   %ebx
428293:	ff 30                	push   (%eax)
428295:	57                   	push   %edi
428296:	e8 37 f0 ff ff       	call   0x4272d2
42829b:	83 3b 01             	cmpl   $0x1,(%ebx)
42829e:	75 25                	jne    0x4282c5
4282a0:	ff 77 70             	push   0x70(%edi)
4282a3:	6a 01                	push   $0x1
4282a5:	ff 75 0c             	push   0xc(%ebp)
4282a8:	57                   	push   %edi
4282a9:	56                   	push   %esi
4282aa:	e8 2d ef ff ff       	call   0x4271dc
4282af:	8b f0                	mov    %eax,%esi
4282b1:	85 f6                	test   %esi,%esi
4282b3:	79 10                	jns    0x4282c5
4282b5:	ff 37                	push   (%edi)
4282b7:	68 1c dd 45 00       	push   $0x45dd1c
4282bc:	56                   	push   %esi
4282bd:	e8 6d 7e 01 00       	call   0x44012f
4282c2:	83 c4 0c             	add    $0xc,%esp
4282c5:	5f                   	pop    %edi
4282c6:	8b c6                	mov    %esi,%eax
4282c8:	5e                   	pop    %esi
4282c9:	5b                   	pop    %ebx
4282ca:	5d                   	pop    %ebp
4282cb:	c2 08 00             	ret    $0x8
4282ce:	55                   	push   %ebp
4282cf:	8b ec                	mov    %esp,%ebp
4282d1:	56                   	push   %esi
4282d2:	57                   	push   %edi
4282d3:	8b 7d 0c             	mov    0xc(%ebp),%edi
4282d6:	8b 07                	mov    (%edi),%eax
4282d8:	83 e8 01             	sub    $0x1,%eax
4282db:	74 44                	je     0x428321
4282dd:	83 e8 01             	sub    $0x1,%eax
4282e0:	74 1e                	je     0x428300
4282e2:	be 57 00 07 80       	mov    $0x80070057,%esi
4282e7:	56                   	push   %esi
4282e8:	68 78 02 00 00       	push   $0x278
4282ed:	68 6c d9 45 00       	push   $0x45d96c
4282f2:	e8 dc b4 fd ff       	call   0x4037d3
4282f7:	ff 37                	push   (%edi)
4282f9:	68 1c df 45 00       	push   $0x45df1c
4282fe:	eb 45                	jmp    0x428345
428300:	8b 45 08             	mov    0x8(%ebp),%eax
428303:	ff 77 08             	push   0x8(%edi)
428306:	ff 70 44             	push   0x44(%eax)
428309:	ff 70 4c             	push   0x4c(%eax)
42830c:	e8 6e 10 02 00       	call   0x44937f
428311:	8b f0                	mov    %eax,%esi
428313:	85 f6                	test   %esi,%esi
428315:	79 37                	jns    0x42834e
428317:	ff 77 08             	push   0x8(%edi)
42831a:	68 f8 de 45 00       	push   $0x45def8
42831f:	eb 24                	jmp    0x428345
428321:	33 c0                	xor    %eax,%eax
428323:	50                   	push   %eax
428324:	50                   	push   %eax
428325:	50                   	push   %eax