42ff52:	8b f0                	mov    %eax,%esi
42ff54:	85 f6                	test   %esi,%esi
42ff56:	79 15                	jns    0x42ff6d
42ff58:	8b 4d 04             	mov    0x4(%ebp),%ecx
42ff5b:	ba bb 00 00 00       	mov    $0xbb,%edx
42ff60:	56                   	push   %esi
42ff61:	68 18 5d 40 00       	push   $0x405d18
42ff66:	e8 9f c1 ff ff       	call   0x42c10a
42ff6b:	eb 02                	jmp    0x42ff6f
42ff6d:	33 f6                	xor    %esi,%esi
42ff6f:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
42ff73:	8d 4d d8             	lea    -0x28(%ebp),%ecx
42ff76:	e8 cd ca fd ff       	call   0x40ca48
42ff7b:	8d 4d d8             	lea    -0x28(%ebp),%ecx
42ff7e:	e8 c5 ca fd ff       	call   0x40ca48
42ff83:	85 f6                	test   %esi,%esi
42ff85:	79 17                	jns    0x42ff9e
42ff87:	8b 4d 04             	mov    0x4(%ebp),%ecx
42ff8a:	ba 13 01 00 00       	mov    $0x113,%edx
42ff8f:	56                   	push   %esi
42ff90:	68 90 56 40 00       	push   $0x405690
42ff95:	e8 70 c1 ff ff       	call   0x42c10a
42ff9a:	8b c6                	mov    %esi,%eax
42ff9c:	eb 02                	jmp    0x42ffa0
42ff9e:	33 c0                	xor    %eax,%eax
42ffa0:	e8 4b ae fe ff       	call   0x41adf0
42ffa5:	c2 04 00             	ret    $0x4
42ffa8:	6a 44                	push   $0x44
42ffaa:	b8 c7 f4 41 00       	mov    $0x41f4c7,%eax
42ffaf:	e8 5a ae fe ff       	call   0x41ae0e
42ffb4:	8b f1                	mov    %ecx,%esi
42ffb6:	8b 4e 0c             	mov    0xc(%esi),%ecx
42ffb9:	ff 76 1c             	push   0x1c(%esi)
42ffbc:	0f af 4e 1c          	imul   0x1c(%esi),%ecx
42ffc0:	ff 76 20             	push   0x20(%esi)
42ffc3:	e8 fb c7 fd ff       	call   0x40c7c3
42ffc8:	50                   	push   %eax
42ffc9:	ff 76 08             	push   0x8(%esi)
42ffcc:	8d 4d b0             	lea    -0x50(%ebp),%ecx
42ffcf:	ff 76 04             	push   0x4(%esi)
42ffd2:	e8 1b c7 fd ff       	call   0x40c6f2
42ffd7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42ffdb:	8d 4d d8             	lea    -0x28(%ebp),%ecx
42ffde:	56                   	push   %esi
42ffdf:	e8 c1 fb ff ff       	call   0x42fba5
42ffe4:	8d 4d d8             	lea    -0x28(%ebp),%ecx
42ffe7:	e8 2f ef ff ff       	call   0x42ef1b
42ffec:	85 c0                	test   %eax,%eax
42ffee:	74 4a                	je     0x43003a
42fff0:	8b 45 ec             	mov    -0x14(%ebp),%eax
42fff3:	8b c8                	mov    %eax,%ecx
42fff5:	f7 d9                	neg    %ecx
42fff7:	1b c9                	sbb    %ecx,%ecx
42fff9:	23 4d e8             	and    -0x18(%ebp),%ecx
42fffc:	74 03                	je     0x430001
42fffe:	8b 49 08             	mov    0x8(%ecx),%ecx
430001:	f7 d8                	neg    %eax
430003:	1b c0                	sbb    %eax,%eax
430005:	23 45 e8             	and    -0x18(%ebp),%eax
430008:	75 07                	jne    0x430011
43000a:	b8 0c 8f 43 00       	mov    $0x438f0c,%eax
43000f:	eb 03                	jmp    0x430014
430011:	83 c0 04             	add    $0x4,%eax
430014:	ff 30                	push   (%eax)
430016:	51                   	push   %ecx
430017:	8d 4d b0             	lea    -0x50(%ebp),%ecx
43001a:	e8 6d dd fd ff       	call   0x40dd8c
43001f:	85 c0                	test   %eax,%eax
430021:	75 c1                	jne    0x42ffe4
430023:	8b 4d 04             	mov    0x4(%ebp),%ecx
430026:	ba 34 01 00 00       	mov    $0x134,%edx
43002b:	68 0e 00 07 80       	push   $0x8007000e
430030:	68 64 78 40 00       	push   $0x407864
430035:	e8 ff d2 ff ff       	call   0x42d339
43003a:	8b 45 b4             	mov    -0x4c(%ebp),%eax
43003d:	8b 4e 24             	mov    0x24(%esi),%ecx
430040:	89 46 04             	mov    %eax,0x4(%esi)
430043:	8b 45 b8             	mov    -0x48(%ebp),%eax
430046:	89 46 08             	mov    %eax,0x8(%esi)
430049:	8b 45 bc             	mov    -0x44(%ebp),%eax
43004c:	89 46 0c             	mov    %eax,0xc(%esi)
43004f:	8b 45 c0             	mov    -0x40(%ebp),%eax
430052:	89 46 10             	mov    %eax,0x10(%esi)
430055:	8b 45 c4             	mov    -0x3c(%ebp),%eax
430058:	89 46 14             	mov    %eax,0x14(%esi)
43005b:	8b 45 c8             	mov    -0x38(%ebp),%eax
43005e:	89 46 18             	mov    %eax,0x18(%esi)
430061:	8b 45 cc             	mov    -0x34(%ebp),%eax
430064:	89 46 1c             	mov    %eax,0x1c(%esi)
430067:	8b 45 d0             	mov    -0x30(%ebp),%eax
43006a:	89 46 20             	mov    %eax,0x20(%esi)
43006d:	85 c9                	test   %ecx,%ecx
43006f:	74 06                	je     0x430077
430071:	51                   	push   %ecx
430072:	e8 1f 5c ff ff       	call   0x425c96
430077:	8b 45 d4             	mov    -0x2c(%ebp),%eax
43007a:	89 46 24             	mov    %eax,0x24(%esi)
43007d:	e8 5a ad fe ff       	call   0x41addc
430082:	c3                   	ret
430083:	8b ff                	mov    %edi,%edi
430085:	55                   	push   %ebp
430086:	8b ec                	mov    %esp,%ebp
430088:	57                   	push   %edi
430089:	8b b9 80 00 00 00    	mov    0x80(%ecx),%edi
43008f:	85 ff                	test   %edi,%edi
430091:	78 28                	js     0x4300bb
430093:	8b 51 64             	mov    0x64(%ecx),%edx
430096:	85 d2                	test   %edx,%edx
430098:	75 07                	jne    0x4300a1
43009a:	bf 02 40 00 80       	mov    $0x80004002,%edi
43009f:	eb 1a                	jmp    0x4300bb
4300a1:	8b 45 08             	mov    0x8(%ebp),%eax
4300a4:	56                   	push   %esi
4300a5:	89 10                	mov    %edx,(%eax)
4300a7:	8b 49 64             	mov    0x64(%ecx),%ecx
4300aa:	51                   	push   %ecx
4300ab:	8b 11                	mov    (%ecx),%edx
4300ad:	8b 72 04             	mov    0x4(%edx),%esi
4300b0:	8b ce                	mov    %esi,%ecx
4300b2:	ff 15 20 a5 43 00    	call   *0x43a520
4300b8:	ff d6                	call   *%esi
4300ba:	5e                   	pop    %esi
4300bb:	8b c7                	mov    %edi,%eax
4300bd:	5f                   	pop    %edi
4300be:	5d                   	pop    %ebp
4300bf:	c2 04 00             	ret    $0x4
4300c2:	8b ff                	mov    %edi,%edi
4300c4:	55                   	push   %ebp
4300c5:	8b ec                	mov    %esp,%ebp
4300c7:	6a ff                	push   $0xffffffff
4300c9:	68 ec f5 41 00       	push   $0x41f5ec
4300ce:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4300d4:	50                   	push   %eax
4300d5:	b8 b4 11 00 00       	mov    $0x11b4,%eax
4300da:	e8 51 df fe ff       	call   0x41e030
4300df:	a1 08 85 43 00       	mov    0x438508,%eax
4300e4:	33 c5                	xor    %ebp,%eax
4300e6:	89 45 f0             	mov    %eax,-0x10(%ebp)
4300e9:	56                   	push   %esi
4300ea:	57                   	push   %edi
4300eb:	50                   	push   %eax
4300ec:	8d 45 f4             	lea    -0xc(%ebp),%eax
4300ef:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4300f5:	8b fa                	mov    %edx,%edi
4300f7:	8b f1                	mov    %ecx,%esi
4300f9:	68 ec 56 40 00       	push   $0x4056ec
4300fe:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
430101:	e8 a1 53 fe ff       	call   0x4154a7
430106:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
43010a:	6a 03                	push   $0x3
43010c:	58                   	pop    %eax
43010d:	66 89 45 ec          	mov    %ax,-0x14(%ebp)
430111:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
430115:	8d 45 94             	lea    -0x6c(%ebp),%eax
430118:	8d 8d 58 f6 ff ff    	lea    -0x9a8(%ebp),%ecx
43011e:	89 85 54 f6 ff ff    	mov    %eax,-0x9ac(%ebp)
430124:	e8 f2 33 fe ff       	call   0x41351b
430129:	8d 8d ec f6 ff ff    	lea    -0x914(%ebp),%ecx
43012f:	e8 e7 33 fe ff       	call   0x41351b
430134:	8d 8d 80 f7 ff ff    	lea    -0x880(%ebp),%ecx
43013a:	e8 03 56 fe ff       	call   0x415742
43013f:	51                   	push   %ecx
430140:	56                   	push   %esi
430141:	8d 8d 40 ee ff ff    	lea    -0x11c0(%ebp),%ecx
430147:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
43014b:	e8 19 0c 00 00       	call   0x430d69
430150:	6a 00                	push   $0x0
430152:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
430156:	ff 70 04             	push   0x4(%eax)
430159:	8d 85 54 f6 ff ff    	lea    -0x9ac(%ebp),%eax
43015f:	57                   	push   %edi
430160:	ff 75 08             	push   0x8(%ebp)
430163:	50                   	push   %eax
430164:	e8 ac 00 00 00       	call   0x430215
430169:	8b 85 84 f7 ff ff    	mov    -0x87c(%ebp),%eax
43016f:	83 c4 14             	add    $0x14,%esp
430172:	c7 85 80 f7 ff ff 34 	movl   $0x401234,-0x880(%ebp)
430179:	12 40 00
43017c:	85 c0                	test   %eax,%eax
43017e:	74 12                	je     0x430192
430180:	8d 8d 90 f7 ff ff    	lea    -0x870(%ebp),%ecx
430186:	3b c1                	cmp    %ecx,%eax
430188:	74 08                	je     0x430192
43018a:	50                   	push   %eax
43018b:	ff 15 14 a4 43 00    	call   *0x43a414
430191:	59                   	pop    %ecx
430192:	8b 85 f0 f6 ff ff    	mov    -0x910(%ebp),%eax
430198:	be 80 11 40 00       	mov    $0x401180,%esi
43019d:	89 b5 80 f7 ff ff    	mov    %esi,-0x880(%ebp)
4301a3:	bf c4 11 40 00       	mov    $0x4011c4,%edi
4301a8:	89 bd ec f6 ff ff    	mov    %edi,-0x914(%ebp)
4301ae:	85 c0                	test   %eax,%eax
4301b0:	74 12                	je     0x4301c4
4301b2:	8d 8d fc f6 ff ff    	lea    -0x904(%ebp),%ecx
4301b8:	3b c1                	cmp    %ecx,%eax
4301ba:	74 08                	je     0x4301c4
4301bc:	50                   	push   %eax
4301bd:	ff 15 14 a4 43 00    	call   *0x43a414
4301c3:	59                   	pop    %ecx
4301c4:	8b 85 5c f6 ff ff    	mov    -0x9a4(%ebp),%eax
4301ca:	89 b5 ec f6 ff ff    	mov    %esi,-0x914(%ebp)
4301d0:	89 bd 58 f6 ff ff    	mov    %edi,-0x9a8(%ebp)
4301d6:	85 c0                	test   %eax,%eax
4301d8:	74 12                	je     0x4301ec
4301da:	8d 8d 68 f6 ff ff    	lea    -0x998(%ebp),%ecx
4301e0:	3b c1                	cmp    %ecx,%eax
4301e2:	74 08                	je     0x4301ec
4301e4:	50                   	push   %eax
4301e5:	ff 15 14 a4 43 00    	call   *0x43a414
4301eb:	59                   	pop    %ecx
4301ec:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
4301ef:	89 b5 58 f6 ff ff    	mov    %esi,-0x9a8(%ebp)
4301f5:	e8 7c 1c 00 00       	call   0x431e76
4301fa:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4301fd:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
430204:	59                   	pop    %ecx
430205:	5f                   	pop    %edi
430206:	5e                   	pop    %esi
430207:	8b 4d f0             	mov    -0x10(%ebp),%ecx
43020a:	33 cd                	xor    %ebp,%ecx
43020c:	e8 af a5 fe ff       	call   0x41a7c0
430211:	c9                   	leave
430212:	c2 04 00             	ret    $0x4
430215:	8b ff                	mov    %edi,%edi
430217:	55                   	push   %ebp
430218:	8b ec                	mov    %esp,%ebp
43021a:	8d 45 10             	lea    0x10(%ebp),%eax
43021d:	50                   	push   %eax
43021e:	51                   	push   %ecx
43021f:	ff 75 0c             	push   0xc(%ebp)
430222:	8b 4d 08             	mov    0x8(%ebp),%ecx
430225:	e8 d0 1f 00 00       	call   0x4321fa
43022a:	5d                   	pop    %ebp
43022b:	c3                   	ret
43022c:	8b ff                	mov    %edi,%edi
43022e:	53                   	push   %ebx
43022f:	56                   	push   %esi
430230:	57                   	push   %edi
430231:	8b f9                	mov    %ecx,%edi
430233:	33 f6                	xor    %esi,%esi
430235:	8b 57 70             	mov    0x70(%edi),%edx
430238:	85 d2                	test   %edx,%edx
43023a:	74 1b                	je     0x430257
43023c:	8b 02                	mov    (%edx),%eax
43023e:	52                   	push   %edx
43023f:	8b 70 18             	mov    0x18(%eax),%esi
430242:	8b ce                	mov    %esi,%ecx
430244:	ff 15 20 a5 43 00    	call   *0x43a520
43024a:	ff d6                	call   *%esi
43024c:	33 f6                	xor    %esi,%esi
43024e:	8d 4f 70             	lea    0x70(%edi),%ecx
430251:	56                   	push   %esi
430252:	e8 62 c1 fd ff       	call   0x40c3b9
430257:	8d 4f 74             	lea    0x74(%edi),%ecx
43025a:	39 31                	cmp    %esi,(%ecx)
43025c:	74 06                	je     0x430264
43025e:	51                   	push   %ecx
43025f:	e8 26 fb ff ff       	call   0x42fd8a
430264:	8d 4f 64             	lea    0x64(%edi),%ecx
430267:	39 31                	cmp    %esi,(%ecx)
430269:	74 06                	je     0x430271
43026b:	56                   	push   %esi
43026c:	e8 48 c1 fd ff       	call   0x40c3b9
430271:	8d 4f 68             	lea    0x68(%edi),%ecx
430274:	39 31                	cmp    %esi,(%ecx)
430276:	74 06                	je     0x43027e
430278:	51                   	push   %ecx
430279:	e8 0c fb ff ff       	call   0x42fd8a
43027e:	8d 4f 6c             	lea    0x6c(%edi),%ecx
430281:	39 31                	cmp    %esi,(%ecx)
430283:	74 06                	je     0x43028b
430285:	51                   	push   %ecx
430286:	e8 ff fa ff ff       	call   0x42fd8a
43028b:	8d 4f 78             	lea    0x78(%edi),%ecx
43028e:	39 31                	cmp    %esi,(%ecx)
430290:	5f                   	pop    %edi
430291:	5e                   	pop    %esi
430292:	5b                   	pop    %ebx
430293:	74 06                	je     0x43029b
430295:	51                   	push   %ecx
430296:	e8 ef fa ff ff       	call   0x42fd8a
43029b:	c3                   	ret
43029c:	6a 1c                	push   $0x1c
43029e:	b8 1c f6 41 00       	mov    $0x41f61c,%eax
4302a3:	e8 66 ab fe ff       	call   0x41ae0e
4302a8:	8b 1d 78 8a 43 00    	mov    0x438a78,%ebx
4302ae:	8d 73 28             	lea    0x28(%ebx),%esi
4302b1:	56                   	push   %esi
4302b2:	89 75 f0             	mov    %esi,-0x10(%ebp)
4302b5:	ff 15 d4 a2 43 00    	call   *0x43a2d4
4302bb:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4302bf:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4302c2:	53                   	push   %ebx
4302c3:	e8 dd f8 ff ff       	call   0x42fba5
4302c8:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4302cb:	e8 4b ec ff ff       	call   0x42ef1b
4302d0:	85 c0                	test   %eax,%eax
4302d2:	74 1d                	je     0x4302f1
4302d4:	8b 45 ec             	mov    -0x14(%ebp),%eax
4302d7:	b9 0c 8f 43 00       	mov    $0x438f0c,%ecx
4302dc:	f7 d8                	neg    %eax
4302de:	1b c0                	sbb    %eax,%eax
4302e0:	23 45 e8             	and    -0x18(%ebp),%eax
4302e3:	74 03                	je     0x4302e8
4302e5:	8d 48 04             	lea    0x4(%eax),%ecx
4302e8:	8b 09                	mov    (%ecx),%ecx
4302ea:	e8 3d ff ff ff       	call   0x43022c
4302ef:	eb d7                	jmp    0x4302c8
4302f1:	33 c0                	xor    %eax,%eax
4302f3:	c7 45 e0 01 00 00 00 	movl   $0x1,-0x20(%ebp)
4302fa:	89 45 dc             	mov    %eax,-0x24(%ebp)
4302fd:	89 45 e4             	mov    %eax,-0x1c(%ebp)
430300:	89 45 e8             	mov    %eax,-0x18(%ebp)
430303:	89 45 ec             	mov    %eax,-0x14(%ebp)
430306:	8d 4d d8             	lea    -0x28(%ebp),%ecx
430309:	e8 0d ec ff ff       	call   0x42ef1b
43030e:	85 c0                	test   %eax,%eax
430310:	74 3c                	je     0x43034e
430312:	8b 45 ec             	mov    -0x14(%ebp),%eax
430315:	bf 0c 8f 43 00       	mov    $0x438f0c,%edi
43031a:	f7 d8                	neg    %eax
43031c:	1b c0                	sbb    %eax,%eax
43031e:	23 45 e8             	and    -0x18(%ebp),%eax
430321:	74 03                	je     0x430326
430323:	8d 78 04             	lea    0x4(%eax),%edi
430326:	8b 3f                	mov    (%edi),%edi
430328:	85 ff                	test   %edi,%edi
43032a:	74 da                	je     0x430306
43032c:	8b cf                	mov    %edi,%ecx
43032e:	e8 31 f9 ff ff       	call   0x42fc64
430333:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
430337:	57                   	push   %edi
430338:	8b 3d 40 1a 40 00    	mov    0x401a40,%edi
43033e:	8b cf                	mov    %edi,%ecx
430340:	ff 15 20 a5 43 00    	call   *0x43a520
430346:	ff d7                	call   *%edi
430348:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
43034c:	eb b8                	jmp    0x430306
43034e:	8b 03                	mov    (%ebx),%eax
430350:	8b 78 04             	mov    0x4(%eax),%edi
430353:	8b cf                	mov    %edi,%ecx
430355:	ff 15 20 a5 43 00    	call   *0x43a520
43035b:	8b cb                	mov    %ebx,%ecx
43035d:	ff d7                	call   *%edi
43035f:	85 f6                	test   %esi,%esi
430361:	74 07                	je     0x43036a
430363:	56                   	push   %esi
430364:	ff 15 9c a2 43 00    	call   *0x43a29c
43036a:	e8 6d aa fe ff       	call   0x41addc
43036f:	c3                   	ret