459fad:	50                   	push   %eax
459fae:	89 7d f8             	mov    %edi,-0x8(%ebp)
459fb1:	ff 15 ac 07 4b 00    	call   *0x4b07ac
459fb7:	8d 45 f0             	lea    -0x10(%ebp),%eax
459fba:	50                   	push   %eax
459fbb:	ff 76 1c             	push   0x1c(%esi)
459fbe:	ff 15 b8 08 4b 00    	call   *0x4b08b8
459fc4:	8b 06                	mov    (%esi),%eax
459fc6:	6a 00                	push   $0x0
459fc8:	ff 75 f4             	push   -0xc(%ebp)
459fcb:	8b ce                	mov    %esi,%ecx
459fcd:	ff 75 f0             	push   -0x10(%ebp)
459fd0:	ff 50 6c             	call   *0x6c(%eax)
459fd3:	85 c0                	test   %eax,%eax
459fd5:	89 45 fc             	mov    %eax,-0x4(%ebp)
459fd8:	7c 61                	jl     0x45a03b
459fda:	8b ce                	mov    %esi,%ecx
459fdc:	e8 2c bf fe ff       	call   0x445f0d
459fe1:	8b ce                	mov    %esi,%ecx
459fe3:	8b d8                	mov    %eax,%ebx
459fe5:	e8 4b bf fe ff       	call   0x445f35
459fea:	85 c0                	test   %eax,%eax
459fec:	74 0b                	je     0x459ff9
459fee:	8b cb                	mov    %ebx,%ecx
459ff0:	e8 97 6d fe ff       	call   0x440d8c
459ff5:	85 c0                	test   %eax,%eax
459ff7:	75 04                	jne    0x459ffd
459ff9:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
459ffd:	8b 47 3c             	mov    0x3c(%edi),%eax
45a000:	85 c0                	test   %eax,%eax
45a002:	75 04                	jne    0x45a008
45a004:	33 ff                	xor    %edi,%edi
45a006:	eb 03                	jmp    0x45a00b
45a008:	8b 78 1c             	mov    0x1c(%eax),%edi
45a00b:	ff 15 94 06 4b 00    	call   *0x4b0694
45a011:	50                   	push   %eax
45a012:	e8 8b ac fe ff       	call   0x444ca2
45a017:	3b c6                	cmp    %esi,%eax
45a019:	74 24                	je     0x45a03f
45a01b:	85 c0                	test   %eax,%eax
45a01d:	75 04                	jne    0x45a023
45a01f:	33 d2                	xor    %edx,%edx
45a021:	eb 03                	jmp    0x45a026
45a023:	8b 50 1c             	mov    0x1c(%eax),%edx
45a026:	3b d7                	cmp    %edi,%edx
45a028:	74 15                	je     0x45a03f
45a02a:	8b c8                	mov    %eax,%ecx
45a02c:	e8 dc be fe ff       	call   0x445f0d
45a031:	3b c3                	cmp    %ebx,%eax
45a033:	75 0a                	jne    0x45a03f
45a035:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
45a039:	eb 04                	jmp    0x45a03f
45a03b:	83 4f 78 ff          	orl    $0xffffffff,0x78(%edi)
45a03f:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
45a043:	8b 1d f0 05 4b 00    	mov    0x4b05f0,%ebx
45a049:	7c 54                	jl     0x45a09f
45a04b:	8d 45 f0             	lea    -0x10(%ebp),%eax
45a04e:	50                   	push   %eax
45a04f:	ff 76 1c             	push   0x1c(%esi)
45a052:	ff 15 64 06 4b 00    	call   *0x4b0664
45a058:	ff 75 f4             	push   -0xc(%ebp)
45a05b:	ff 75 f0             	push   -0x10(%ebp)
45a05e:	ff 15 40 06 4b 00    	call   *0x4b0640
45a064:	8b f8                	mov    %eax,%edi
45a066:	85 ff                	test   %edi,%edi
45a068:	74 24                	je     0x45a08e
45a06a:	8b 46 1c             	mov    0x1c(%esi),%eax
45a06d:	3b f8                	cmp    %eax,%edi
45a06f:	74 28                	je     0x45a099
45a071:	57                   	push   %edi
45a072:	50                   	push   %eax
45a073:	ff 15 b4 06 4b 00    	call   *0x4b06b4
45a079:	85 c0                	test   %eax,%eax
45a07b:	75 1c                	jne    0x45a099
45a07d:	8b 45 f8             	mov    -0x8(%ebp),%eax
45a080:	8b 40 3c             	mov    0x3c(%eax),%eax
45a083:	85 c0                	test   %eax,%eax
45a085:	74 03                	je     0x45a08a
45a087:	8b 40 1c             	mov    0x1c(%eax),%eax
45a08a:	3b c7                	cmp    %edi,%eax
45a08c:	74 0b                	je     0x45a099
45a08e:	8b 45 f8             	mov    -0x8(%ebp),%eax
45a091:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
45a095:	83 48 78 ff          	orl    $0xffffffff,0x78(%eax)
45a099:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
45a09d:	7d 1f                	jge    0x45a0be
45a09f:	8b 45 f8             	mov    -0x8(%ebp),%eax
45a0a2:	83 78 78 ff          	cmpl   $0xffffffff,0x78(%eax)
45a0a6:	75 0a                	jne    0x45a0b2
45a0a8:	68 01 e0 00 00       	push   $0xe001
45a0ad:	ff 76 1c             	push   0x1c(%esi)
45a0b0:	ff d3                	call   *%ebx
45a0b2:	8b 06                	mov    (%esi),%eax
45a0b4:	6a ff                	push   $0xffffffff
45a0b6:	8b ce                	mov    %esi,%ecx
45a0b8:	ff 90 60 01 00 00    	call   *0x160(%eax)
45a0be:	b8 00 e0 00 00       	mov    $0xe000,%eax
45a0c3:	39 45 08             	cmp    %eax,0x8(%ebp)
45a0c6:	75 19                	jne    0x45a0e1
45a0c8:	50                   	push   %eax
45a0c9:	ff 76 1c             	push   0x1c(%esi)
45a0cc:	ff d3                	call   *%ebx
45a0ce:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
45a0d2:	7c 0d                	jl     0x45a0e1
45a0d4:	ff 75 fc             	push   -0x4(%ebp)
45a0d7:	8b 06                	mov    (%esi),%eax
45a0d9:	8b ce                	mov    %esi,%ecx
45a0db:	ff 90 60 01 00 00    	call   *0x160(%eax)
45a0e1:	5f                   	pop    %edi
45a0e2:	5b                   	pop    %ebx
45a0e3:	5e                   	pop    %esi
45a0e4:	c9                   	leave
45a0e5:	c2 04 00             	ret    $0x4
45a0e8:	8b 44 24 08          	mov    0x8(%esp),%eax
45a0ec:	56                   	push   %esi
45a0ed:	0f bf d0             	movswl %ax,%edx
45a0f0:	6a 00                	push   $0x0
45a0f2:	51                   	push   %ecx
45a0f3:	c1 e8 10             	shr    $0x10,%eax
45a0f6:	8b f1                	mov    %ecx,%esi
45a0f8:	51                   	push   %ecx
45a0f9:	0f bf c0             	movswl %ax,%eax
45a0fc:	8b cc                	mov    %esp,%ecx
45a0fe:	89 11                	mov    %edx,(%ecx)
45a100:	89 41 04             	mov    %eax,0x4(%ecx)
45a103:	8b 06                	mov    (%esi),%eax
45a105:	8b ce                	mov    %esi,%ecx
45a107:	ff 50 6c             	call   *0x6c(%eax)
45a10a:	83 f8 ff             	cmp    $0xffffffff,%eax
45a10d:	74 07                	je     0x45a116
45a10f:	05 00 00 01 00       	add    $0x10000,%eax
45a114:	eb 18                	jmp    0x45a12e
45a116:	ff 76 1c             	push   0x1c(%esi)
45a119:	ff 15 0c 08 4b 00    	call   *0x4b080c
45a11f:	0f b7 c0             	movzwl %ax,%eax
45a122:	8d 88 00 00 05 00    	lea    0x50000(%eax),%ecx
45a128:	f7 d8                	neg    %eax
45a12a:	1b c0                	sbb    %eax,%eax
45a12c:	23 c1                	and    %ecx,%eax
45a12e:	5e                   	pop    %esi
45a12f:	c2 08 00             	ret    $0x8
45a132:	55                   	push   %ebp
45a133:	8b ec                	mov    %esp,%ebp
45a135:	83 ec 14             	sub    $0x14,%esp
45a138:	56                   	push   %esi
45a139:	8b 75 08             	mov    0x8(%ebp),%esi
45a13c:	57                   	push   %edi
45a13d:	56                   	push   %esi
45a13e:	6a 00                	push   $0x0
45a140:	8b f9                	mov    %ecx,%edi
45a142:	6a 46                	push   $0x46
45a144:	ff 77 1c             	push   0x1c(%edi)
45a147:	ff 15 28 07 4b 00    	call   *0x4b0728
45a14d:	f6 46 18 01          	testb  $0x1,0x18(%esi)
45a151:	0f 85 d6 00 00 00    	jne    0x45a22d
45a157:	53                   	push   %ebx
45a158:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a15b:	50                   	push   %eax
45a15c:	ff 77 1c             	push   0x1c(%edi)
45a15f:	ff 15 40 07 4b 00    	call   *0x4b0740
45a165:	8b 45 08             	mov    0x8(%ebp),%eax
45a168:	8b 75 f4             	mov    -0xc(%ebp),%esi
45a16b:	8b 48 10             	mov    0x10(%eax),%ecx
45a16e:	2b 75 ec             	sub    -0x14(%ebp),%esi
45a171:	8b 5d f8             	mov    -0x8(%ebp),%ebx
45a174:	2b 5d f0             	sub    -0x10(%ebp),%ebx
45a177:	3b ce                	cmp    %esi,%ecx
45a179:	8b 40 14             	mov    0x14(%eax),%eax
45a17c:	89 4d fc             	mov    %ecx,-0x4(%ebp)
45a17f:	89 45 08             	mov    %eax,0x8(%ebp)
45a182:	74 56                	je     0x45a1da
45a184:	f6 47 7d 04          	testb  $0x4,0x7d(%edi)
45a188:	74 50                	je     0x45a1da
45a18a:	50                   	push   %eax
45a18b:	51                   	push   %ecx
45a18c:	2b 0d e8 c3 4a 00    	sub    0x4ac3e8,%ecx
45a192:	6a 00                	push   $0x0
45a194:	51                   	push   %ecx
45a195:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a198:	50                   	push   %eax
45a199:	ff 15 1c 06 4b 00    	call   *0x4b061c
45a19f:	6a 01                	push   $0x1
45a1a1:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a1a4:	50                   	push   %eax
45a1a5:	ff 77 1c             	push   0x1c(%edi)
45a1a8:	ff 15 14 06 4b 00    	call   *0x4b0614
45a1ae:	ff 75 08             	push   0x8(%ebp)
45a1b1:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a1b4:	56                   	push   %esi
45a1b5:	2b 35 e8 c3 4a 00    	sub    0x4ac3e8,%esi
45a1bb:	6a 00                	push   $0x0
45a1bd:	56                   	push   %esi
45a1be:	50                   	push   %eax
45a1bf:	ff 15 1c 06 4b 00    	call   *0x4b061c
45a1c5:	6a 01                	push   $0x1
45a1c7:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a1ca:	50                   	push   %eax
45a1cb:	ff 77 1c             	push   0x1c(%edi)
45a1ce:	ff 15 14 06 4b 00    	call   *0x4b0614
45a1d4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45a1d7:	8b 45 08             	mov    0x8(%ebp),%eax
45a1da:	3b c3                	cmp    %ebx,%eax
45a1dc:	74 4e                	je     0x45a22c
45a1de:	f6 47 7d 08          	testb  $0x8,0x7d(%edi)
45a1e2:	74 48                	je     0x45a22c
45a1e4:	8b 35 1c 06 4b 00    	mov    0x4b061c,%esi
45a1ea:	50                   	push   %eax
45a1eb:	2b 05 ec c3 4a 00    	sub    0x4ac3ec,%eax
45a1f1:	51                   	push   %ecx
45a1f2:	50                   	push   %eax
45a1f3:	6a 00                	push   $0x0
45a1f5:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a1f8:	50                   	push   %eax
45a1f9:	ff d6                	call   *%esi
45a1fb:	6a 01                	push   $0x1
45a1fd:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a200:	50                   	push   %eax
45a201:	ff 77 1c             	push   0x1c(%edi)
45a204:	ff 15 14 06 4b 00    	call   *0x4b0614
45a20a:	53                   	push   %ebx
45a20b:	ff 75 fc             	push   -0x4(%ebp)
45a20e:	2b 1d ec c3 4a 00    	sub    0x4ac3ec,%ebx
45a214:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a217:	53                   	push   %ebx
45a218:	6a 00                	push   $0x0
45a21a:	50                   	push   %eax
45a21b:	ff d6                	call   *%esi
45a21d:	6a 01                	push   $0x1
45a21f:	8d 45 ec             	lea    -0x14(%ebp),%eax
45a222:	50                   	push   %eax
45a223:	ff 77 1c             	push   0x1c(%edi)
45a226:	ff 15 14 06 4b 00    	call   *0x4b0614
45a22c:	5b                   	pop    %ebx
45a22d:	5f                   	pop    %edi
45a22e:	5e                   	pop    %esi
45a22f:	c9                   	leave
45a230:	c2 04 00             	ret    $0x4
45a233:	56                   	push   %esi
45a234:	8b f1                	mov    %ecx,%esi
45a236:	e8 c4 a9 fe ff       	call   0x444bff
45a23b:	83 f8 ff             	cmp    $0xffffffff,%eax
45a23e:	75 04                	jne    0x45a244
45a240:	0b c0                	or     %eax,%eax
45a242:	eb 44                	jmp    0x45a288
45a244:	f6 46 7c 10          	testb  $0x10,0x7c(%esi)
45a248:	74 09                	je     0x45a253
45a24a:	6a 01                	push   $0x1
45a24c:	8b ce                	mov    %esi,%ecx
45a24e:	e8 23 07 fe ff       	call   0x43a976
45a253:	57                   	push   %edi
45a254:	ff 76 1c             	push   0x1c(%esi)
45a257:	ff 15 d8 07 4b 00    	call   *0x4b07d8
45a25d:	50                   	push   %eax
45a25e:	e8 3f aa fe ff       	call   0x444ca2
45a263:	8b f8                	mov    %eax,%edi
45a265:	8b 07                	mov    (%edi),%eax
45a267:	8b cf                	mov    %edi,%ecx
45a269:	ff 90 20 01 00 00    	call   *0x120(%eax)
45a26f:	85 c0                	test   %eax,%eax
45a271:	74 12                	je     0x45a285
45a273:	56                   	push   %esi
45a274:	8d 8f 80 00 00 00    	lea    0x80(%edi),%ecx
45a27a:	89 be 84 00 00 00    	mov    %edi,0x84(%esi)
45a280:	e8 ac 24 fe ff       	call   0x43c731
45a285:	33 c0                	xor    %eax,%eax
45a287:	5f                   	pop    %edi
45a288:	5e                   	pop    %esi
45a289:	c2 04 00             	ret    $0x4
45a28c:	56                   	push   %esi
45a28d:	8b f1                	mov    %ecx,%esi
45a28f:	e8 e2 65 00 00       	call   0x460876
45a294:	85 c0                	test   %eax,%eax
45a296:	8b ce                	mov    %esi,%ecx
45a298:	75 07                	jne    0x45a2a1
45a29a:	e8 60 a9 fe ff       	call   0x444bff
45a29f:	eb 08                	jmp    0x45a2a9
45a2a1:	e8 bb bc fe ff       	call   0x445f61
45a2a6:	6a 03                	push   $0x3
45a2a8:	58                   	pop    %eax
45a2a9:	5e                   	pop    %esi
45a2aa:	c2 0c 00             	ret    $0xc
45a2ad:	b8 06 40 48 00       	mov    $0x484006,%eax
45a2b2:	e8 c5 d9 fb ff       	call   0x417c7c
45a2b7:	83 ec 34             	sub    $0x34,%esp
45a2ba:	56                   	push   %esi
45a2bb:	8b f1                	mov    %ecx,%esi
45a2bd:	57                   	push   %edi
45a2be:	56                   	push   %esi
45a2bf:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45a2c2:	e8 d4 51 ff ff       	call   0x44f49b
45a2c7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
45a2cb:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45a2ce:	50                   	push   %eax
45a2cf:	ff 76 1c             	push   0x1c(%esi)
45a2d2:	ff 15 8c 08 4b 00    	call   *0x4b088c
45a2d8:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45a2db:	50                   	push   %eax
45a2dc:	ff 76 1c             	push   0x1c(%esi)
45a2df:	ff 15 40 07 4b 00    	call   *0x4b0740
45a2e5:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45a2e8:	50                   	push   %eax
45a2e9:	8b ce                	mov    %esi,%ecx
45a2eb:	e8 2e 4d ff ff       	call   0x44f01e
45a2f0:	8b 45 e8             	mov    -0x18(%ebp),%eax
45a2f3:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45a2f6:	8b 3d 30 07 4b 00    	mov    0x4b0730,%edi
45a2fc:	f7 d8                	neg    %eax
45a2fe:	50                   	push   %eax
45a2ff:	f7 d9                	neg    %ecx
45a301:	51                   	push   %ecx
45a302:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45a305:	50                   	push   %eax
45a306:	ff d7                	call   *%edi
45a308:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45a30b:	50                   	push   %eax
45a30c:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45a30f:	e8 d9 45 ff ff       	call   0x44e8ed
45a314:	8b 45 e8             	mov    -0x18(%ebp),%eax
45a317:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45a31a:	f7 d8                	neg    %eax
45a31c:	50                   	push   %eax
45a31d:	f7 d9                	neg    %ecx
45a31f:	51                   	push   %ecx
45a320:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45a323:	50                   	push   %eax
45a324:	ff d7                	call   *%edi
45a326:	8b 06                	mov    (%esi),%eax
45a328:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
45a32b:	51                   	push   %ecx
45a32c:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45a32f:	51                   	push   %ecx
45a330:	8b ce                	mov    %esi,%ecx
45a332:	ff 90 44 01 00 00    	call   *0x144(%eax)
45a338:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45a33b:	50                   	push   %eax
45a33c:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45a33f:	e8 2d 46 ff ff       	call   0x44e971
45a344:	6a 00                	push   $0x0
45a346:	ff 75 c4             	push   -0x3c(%ebp)
45a349:	6a 14                	push   $0x14
45a34b:	ff 76 1c             	push   0x1c(%esi)
45a34e:	ff 15 98 08 4b 00    	call   *0x4b0898
45a354:	8b 06                	mov    (%esi),%eax
45a356:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
45a359:	51                   	push   %ecx
45a35a:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45a35d:	51                   	push   %ecx
45a35e:	8b ce                	mov    %esi,%ecx
45a360:	ff 90 48 01 00 00    	call   *0x148(%eax)
45a366:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)