412071:	56                   	push   %esi
412072:	53                   	push   %ebx
412073:	e8 bb f6 ff ff       	call   0x411733
412078:	85 c0                	test   %eax,%eax
41207a:	0f 85 c6 00 00 00    	jne    0x412146
412080:	83 7e 44 02          	cmpl   $0x2,0x44(%esi)
412084:	74 3a                	je     0x4120c0
412086:	8b 46 60             	mov    0x60(%esi),%eax
412089:	83 f8 01             	cmp    $0x1,%eax
41208c:	7f 0d                	jg     0x41209b
41208e:	83 be 8c 00 00 00 01 	cmpl   $0x1,0x8c(%esi)
412095:	75 29                	jne    0x4120c0
412097:	85 c0                	test   %eax,%eax
412099:	74 25                	je     0x4120c0
41209b:	50                   	push   %eax
41209c:	e8 0f 1b 00 00       	call   0x413bb0
4120a1:	50                   	push   %eax
4120a2:	ff 76 44             	push   0x44(%esi)
4120a5:	e8 2a 1c 00 00       	call   0x413cd4
4120aa:	50                   	push   %eax
4120ab:	ff 36                	push   (%esi)
4120ad:	68 d0 00 00 a0       	push   $0xa00000d0
4120b2:	6a 02                	push   $0x2
4120b4:	e8 56 34 ff ff       	call   0x40550f
4120b9:	83 c4 14             	add    $0x14,%esp
4120bc:	83 66 60 00          	andl   $0x0,0x60(%esi)
4120c0:	83 7e 50 04          	cmpl   $0x4,0x50(%esi)
4120c4:	74 12                	je     0x4120d8
4120c6:	83 7e 40 04          	cmpl   $0x4,0x40(%esi)
4120ca:	75 06                	jne    0x4120d2
4120cc:	83 7e 50 02          	cmpl   $0x2,0x50(%esi)
4120d0:	7f 06                	jg     0x4120d8
4120d2:	83 7e 20 02          	cmpl   $0x2,0x20(%esi)
4120d6:	75 39                	jne    0x412111
4120d8:	83 7e 20 01          	cmpl   $0x1,0x20(%esi)
4120dc:	7c 0c                	jl     0x4120ea
4120de:	8b 46 30             	mov    0x30(%esi),%eax
4120e1:	01 43 28             	add    %eax,0x28(%ebx)
4120e4:	8b 46 34             	mov    0x34(%esi),%eax
4120e7:	11 43 2c             	adc    %eax,0x2c(%ebx)
4120ea:	83 7e 50 03          	cmpl   $0x3,0x50(%esi)
4120ee:	7e 21                	jle    0x412111
4120f0:	83 be 8c 00 00 00 03 	cmpl   $0x3,0x8c(%esi)
4120f7:	75 0c                	jne    0x412105
4120f9:	8b 46 30             	mov    0x30(%esi),%eax
4120fc:	01 43 28             	add    %eax,0x28(%ebx)
4120ff:	8b 46 34             	mov    0x34(%esi),%eax
412102:	11 43 2c             	adc    %eax,0x2c(%ebx)
412105:	8b 46 28             	mov    0x28(%esi),%eax
412108:	01 43 28             	add    %eax,0x28(%ebx)
41210b:	8b 46 2c             	mov    0x2c(%esi),%eax
41210e:	11 43 2c             	adc    %eax,0x2c(%ebx)
412111:	8b 86 8c 00 00 00    	mov    0x8c(%esi),%eax
412117:	83 e8 01             	sub    $0x1,%eax
41211a:	0f 84 8c 00 00 00    	je     0x4121ac
412120:	83 e8 01             	sub    $0x1,%eax
412123:	74 6d                	je     0x412192
412125:	83 e8 01             	sub    $0x1,%eax
412128:	74 4e                	je     0x412178
41212a:	83 e8 01             	sub    $0x1,%eax
41212d:	74 32                	je     0x412161
41212f:	bf ff ff 00 80       	mov    $0x8000ffff,%edi
412134:	68 48 2b 45 00       	push   $0x452b48
412139:	57                   	push   %edi
41213a:	e8 f0 df 02 00       	call   0x44012f
41213f:	59                   	pop    %ecx
412140:	59                   	pop    %ecx
412141:	e9 cf 00 00 00       	jmp    0x412215
412146:	ff 75 24             	push   0x24(%ebp)
412149:	56                   	push   %esi
41214a:	53                   	push   %ebx
41214b:	e8 07 e9 ff ff       	call   0x410a57
412150:	8b f8                	mov    %eax,%edi
412152:	85 ff                	test   %edi,%edi
412154:	0f 89 66 ff ff ff    	jns    0x4120c0
41215a:	68 54 29 45 00       	push   $0x452954
41215f:	eb d8                	jmp    0x412139
412161:	ff 76 54             	push   0x54(%esi)
412164:	8b 45 24             	mov    0x24(%ebp),%eax
412167:	ff 30                	push   (%eax)
412169:	ff 75 20             	push   0x20(%ebp)
41216c:	ff 75 1c             	push   0x1c(%ebp)
41216f:	53                   	push   %ebx
412170:	56                   	push   %esi
412171:	e8 29 4e 01 00       	call   0x426f9f
412176:	eb 4b                	jmp    0x4121c3
412178:	ff 76 54             	push   0x54(%esi)
41217b:	8b 45 24             	mov    0x24(%ebp),%eax
41217e:	ff 30                	push   (%eax)
412180:	ff 75 20             	push   0x20(%ebp)
412183:	ff 75 1c             	push   0x1c(%ebp)
412186:	53                   	push   %ebx
412187:	56                   	push   %esi
412188:	ff 75 0c             	push   0xc(%ebp)
41218b:	e8 46 43 01 00       	call   0x4264d6
412190:	eb 31                	jmp    0x4121c3
412192:	ff 76 54             	push   0x54(%esi)
412195:	8b 45 24             	mov    0x24(%ebp),%eax
412198:	ff 30                	push   (%eax)
41219a:	ff 75 20             	push   0x20(%ebp)
41219d:	ff 75 1c             	push   0x1c(%ebp)
4121a0:	53                   	push   %ebx
4121a1:	56                   	push   %esi
4121a2:	ff 75 0c             	push   0xc(%ebp)
4121a5:	e8 eb 2d 01 00       	call   0x424f95
4121aa:	eb 17                	jmp    0x4121c3
4121ac:	ff 76 54             	push   0x54(%esi)
4121af:	8b 45 24             	mov    0x24(%ebp),%eax
4121b2:	ff 30                	push   (%eax)
4121b4:	ff 75 20             	push   0x20(%ebp)
4121b7:	ff 75 1c             	push   0x1c(%ebp)
4121ba:	53                   	push   %ebx
4121bb:	56                   	push   %esi
4121bc:	6a 00                	push   $0x0
4121be:	e8 9e 05 01 00       	call   0x422761
4121c3:	8b f8                	mov    %eax,%edi
4121c5:	85 ff                	test   %edi,%edi
4121c7:	79 09                	jns    0x4121d2
4121c9:	ff 36                	push   (%esi)
4121cb:	68 60 2b 45 00       	push   $0x452b60
4121d0:	eb 14                	jmp    0x4121e6
4121d2:	53                   	push   %ebx
4121d3:	56                   	push   %esi
4121d4:	e8 9f 60 01 00       	call   0x428278
4121d9:	8b f8                	mov    %eax,%edi
4121db:	85 ff                	test   %edi,%edi
4121dd:	79 12                	jns    0x4121f1
4121df:	ff 36                	push   (%esi)
4121e1:	68 8c 2b 45 00       	push   $0x452b8c
4121e6:	57                   	push   %edi
4121e7:	e8 43 df 02 00       	call   0x44012f
4121ec:	83 c4 0c             	add    $0xc,%esp
4121ef:	eb 24                	jmp    0x412215
4121f1:	83 7e 5c 00          	cmpl   $0x0,0x5c(%esi)
4121f5:	75 06                	jne    0x4121fd
4121f7:	83 7e 60 00          	cmpl   $0x0,0x60(%esi)
4121fb:	74 18                	je     0x412215
4121fd:	e8 38 1b 00 00       	call   0x413d3a
412202:	ff 43 30             	incl   0x30(%ebx)
412205:	ff 43 34             	incl   0x34(%ebx)
412208:	83 7e 14 00          	cmpl   $0x0,0x14(%esi)
41220c:	74 07                	je     0x412215
41220e:	c7 43 0c 01 00 00 00 	movl   $0x1,0xc(%ebx)
412215:	5b                   	pop    %ebx
412216:	8b c7                	mov    %edi,%eax
412218:	5f                   	pop    %edi
412219:	5e                   	pop    %esi
41221a:	8b e5                	mov    %ebp,%esp
41221c:	5d                   	pop    %ebp
41221d:	c2 20 00             	ret    $0x20
412220:	55                   	push   %ebp
412221:	8b ec                	mov    %esp,%ebp
412223:	56                   	push   %esi
412224:	57                   	push   %edi
412225:	8b 7d 08             	mov    0x8(%ebp),%edi
412228:	ff 77 60             	push   0x60(%edi)
41222b:	ff 77 5c             	push   0x5c(%edi)
41222e:	6a 01                	push   $0x1
412230:	e8 41 f8 ff ff       	call   0x411a76
412235:	8b f0                	mov    %eax,%esi
412237:	85 f6                	test   %esi,%esi
412239:	79 07                	jns    0x412242
41223b:	68 60 2f 45 00       	push   $0x452f60
412240:	eb 45                	jmp    0x412287
412242:	ff 77 68             	push   0x68(%edi)
412245:	ff 77 64             	push   0x64(%edi)
412248:	6a 00                	push   $0x0
41224a:	e8 27 f8 ff ff       	call   0x411a76
41224f:	8b f0                	mov    %eax,%esi
412251:	85 f6                	test   %esi,%esi
412253:	78 e6                	js     0x41223b
412255:	ff 77 60             	push   0x60(%edi)
412258:	ff 77 5c             	push   0x5c(%edi)
41225b:	6a 01                	push   $0x1
41225d:	e8 8c f2 ff ff       	call   0x4114ee
412262:	8b f0                	mov    %eax,%esi
412264:	85 f6                	test   %esi,%esi
412266:	79 07                	jns    0x41226f
412268:	68 90 2f 45 00       	push   $0x452f90
41226d:	eb 18                	jmp    0x412287
41226f:	ff 77 68             	push   0x68(%edi)
412272:	ff 77 64             	push   0x64(%edi)
412275:	6a 00                	push   $0x0
412277:	e8 72 f2 ff ff       	call   0x4114ee
41227c:	8b f0                	mov    %eax,%esi
41227e:	85 f6                	test   %esi,%esi
412280:	79 0d                	jns    0x41228f
412282:	68 c0 2f 45 00       	push   $0x452fc0
412287:	56                   	push   %esi
412288:	e8 a2 de 02 00       	call   0x44012f
41228d:	59                   	pop    %ecx
41228e:	59                   	pop    %ecx
41228f:	5f                   	pop    %edi
412290:	8b c6                	mov    %esi,%eax
412292:	5e                   	pop    %esi
412293:	5d                   	pop    %ebp
412294:	c2 04 00             	ret    $0x4
412297:	55                   	push   %ebp
412298:	8b ec                	mov    %esp,%ebp
41229a:	53                   	push   %ebx
41229b:	56                   	push   %esi
41229c:	57                   	push   %edi
41229d:	8b 7d 0c             	mov    0xc(%ebp),%edi
4122a0:	6a 05                	push   $0x5
4122a2:	6a 30                	push   $0x30
4122a4:	8b 47 60             	mov    0x60(%edi),%eax
4122a7:	8d 5f 5c             	lea    0x5c(%edi),%ebx
4122aa:	40                   	inc    %eax
4122ab:	50                   	push   %eax
4122ac:	6a 01                	push   $0x1
4122ae:	ff 75 08             	push   0x8(%ebp)
4122b1:	53                   	push   %ebx
4122b2:	e8 18 17 ff ff       	call   0x4039cf
4122b7:	8b f0                	mov    %eax,%esi
4122b9:	85 f6                	test   %esi,%esi
4122bb:	79 0f                	jns    0x4122cc
4122bd:	68 a8 30 45 00       	push   $0x4530a8
4122c2:	56                   	push   %esi
4122c3:	e8 67 de 02 00       	call   0x44012f
4122c8:	59                   	pop    %ecx
4122c9:	59                   	pop    %ecx
4122ca:	eb 0e                	jmp    0x4122da
4122cc:	6b 4d 08 30          	imul   $0x30,0x8(%ebp),%ecx
4122d0:	8b 45 10             	mov    0x10(%ebp),%eax
4122d3:	03 0b                	add    (%ebx),%ecx
4122d5:	89 08                	mov    %ecx,(%eax)
4122d7:	ff 47 60             	incl   0x60(%edi)
4122da:	5f                   	pop    %edi
4122db:	8b c6                	mov    %esi,%eax
4122dd:	5e                   	pop    %esi
4122de:	5b                   	pop    %ebx
4122df:	5d                   	pop    %ebp
4122e0:	c2 0c 00             	ret    $0xc
4122e3:	55                   	push   %ebp
4122e4:	8b ec                	mov    %esp,%ebp
4122e6:	53                   	push   %ebx
4122e7:	56                   	push   %esi
4122e8:	57                   	push   %edi
4122e9:	8b 7d 0c             	mov    0xc(%ebp),%edi
4122ec:	6a 05                	push   $0x5
4122ee:	6a 30                	push   $0x30
4122f0:	8b 47 68             	mov    0x68(%edi),%eax
4122f3:	8d 5f 64             	lea    0x64(%edi),%ebx
4122f6:	40                   	inc    %eax
4122f7:	50                   	push   %eax
4122f8:	6a 01                	push   $0x1
4122fa:	ff 75 08             	push   0x8(%ebp)
4122fd:	53                   	push   %ebx
4122fe:	e8 cc 16 ff ff       	call   0x4039cf
412303:	8b f0                	mov    %eax,%esi
412305:	85 f6                	test   %esi,%esi
412307:	79 0f                	jns    0x412318
412309:	68 d8 30 45 00       	push   $0x4530d8
41230e:	56                   	push   %esi
41230f:	e8 1b de 02 00       	call   0x44012f
412314:	59                   	pop    %ecx
412315:	59                   	pop    %ecx
412316:	eb 0e                	jmp    0x412326
412318:	6b 4d 08 30          	imul   $0x30,0x8(%ebp),%ecx
41231c:	8b 45 10             	mov    0x10(%ebp),%eax
41231f:	03 0b                	add    (%ebx),%ecx
412321:	89 08                	mov    %ecx,(%eax)
412323:	ff 47 68             	incl   0x68(%edi)
412326:	5f                   	pop    %edi
412327:	8b c6                	mov    %esi,%eax
412329:	5e                   	pop    %esi
41232a:	5b                   	pop    %ebx
41232b:	5d                   	pop    %ebp
41232c:	c2 0c 00             	ret    $0xc
41232f:	55                   	push   %ebp
412330:	8b ec                	mov    %esp,%ebp
412332:	51                   	push   %ecx
412333:	53                   	push   %ebx
412334:	56                   	push   %esi
412335:	57                   	push   %edi
412336:	33 f6                	xor    %esi,%esi
412338:	bb 00 00 00 80       	mov    $0x80000000,%ebx
41233d:	21 75 fc             	and    %esi,-0x4(%ebp)
412340:	6a 0d                	push   $0xd
412342:	5f                   	pop    %edi
412343:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
412346:	74 30                	je     0x412378
412348:	8d 45 fc             	lea    -0x4(%ebp),%eax
41234b:	50                   	push   %eax
41234c:	ff 75 08             	push   0x8(%ebp)
41234f:	ff 75 0c             	push   0xc(%ebp)
412352:	e8 40 ff ff ff       	call   0x412297
412357:	8b f0                	mov    %eax,%esi
412359:	85 f6                	test   %esi,%esi
41235b:	79 0f                	jns    0x41236c
41235d:	68 0c 31 45 00       	push   $0x45310c
412362:	56                   	push   %esi
412363:	e8 c7 dd 02 00       	call   0x44012f
412368:	59                   	pop    %ecx
412369:	59                   	pop    %ecx
41236a:	eb 36                	jmp    0x4123a2
41236c:	8b 45 fc             	mov    -0x4(%ebp),%eax
41236f:	89 38                	mov    %edi,(%eax)
412371:	c7 40 08 01 00 00 00 	movl   $0x1,0x8(%eax)
412378:	39 5d 10             	cmp    %ebx,0x10(%ebp)
41237b:	74 25                	je     0x4123a2
41237d:	8d 45 fc             	lea    -0x4(%ebp),%eax
412380:	50                   	push   %eax
412381:	ff 75 08             	push   0x8(%ebp)
412384:	ff 75 10             	push   0x10(%ebp)
412387:	e8 57 ff ff ff       	call   0x4122e3
41238c:	8b f0                	mov    %eax,%esi
41238e:	85 f6                	test   %esi,%esi
412390:	79 07                	jns    0x412399
412392:	68 40 31 45 00       	push   $0x453140
412397:	eb c9                	jmp    0x412362
412399:	8b 45 fc             	mov    -0x4(%ebp),%eax
41239c:	89 38                	mov    %edi,(%eax)
41239e:	83 60 08 00          	andl   $0x0,0x8(%eax)
4123a2:	5f                   	pop    %edi
4123a3:	8b c6                	mov    %esi,%eax
4123a5:	5e                   	pop    %esi
4123a6:	5b                   	pop    %ebx
4123a7:	8b e5                	mov    %ebp,%esp
4123a9:	5d                   	pop    %ebp
4123aa:	c2 0c 00             	ret    $0xc
4123ad:	55                   	push   %ebp
4123ae:	8b ec                	mov    %esp,%ebp
4123b0:	83 ec 0c             	sub    $0xc,%esp
4123b3:	53                   	push   %ebx
4123b4:	56                   	push   %esi
4123b5:	57                   	push   %edi
4123b6:	8d 45 fc             	lea    -0x4(%ebp),%eax
4123b9:	33 db                	xor    %ebx,%ebx
4123bb:	50                   	push   %eax
4123bc:	68 c0 b8 44 00       	push   $0x44b8c0
4123c1:	ff 75 18             	push   0x18(%ebp)
4123c4:	89 5d f4             	mov    %ebx,-0xc(%ebp)
4123c7:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4123ca:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4123cd:	e8 bc 4f ff ff       	call   0x40738e
4123d2:	8b f0                	mov    %eax,%esi
4123d4:	bf 90 04 07 80       	mov    $0x80070490,%edi
4123d9:	3b f7                	cmp    %edi,%esi
4123db:	75 52                	jne    0x41242f
4123dd:	8d 45 fc             	lea    -0x4(%ebp),%eax
4123e0:	50                   	push   %eax
4123e1:	68 58 c3 44 00       	push   $0x44c358
4123e6:	ff 75 18             	push   0x18(%ebp)
4123e9:	e8 a0 4f ff ff       	call   0x40738e
4123ee:	8b f0                	mov    %eax,%esi
4123f0:	3b f7                	cmp    %edi,%esi
4123f2:	75 3b                	jne    0x41242f
4123f4:	53                   	push   %ebx
4123f5:	8d 45 f8             	lea    -0x8(%ebp),%eax