43b95e:	50                   	push   %eax
43b95f:	66 89 4d a4          	mov    %cx,-0x5c(%ebp)
43b963:	66 89 4d bc          	mov    %cx,-0x44(%ebp)
43b967:	b9 70 2e 41 00       	mov    $0x412e70,%ecx
43b96c:	68 90 2a 41 00       	push   $0x412a90
43b971:	c7 45 84 90 2a 41 00 	movl   $0x412a90,-0x7c(%ebp)
43b978:	c7 45 88 50 95 42 00 	movl   $0x429550,-0x78(%ebp)
43b97f:	c7 45 98 08 2e 41 00 	movl   $0x412e08,-0x68(%ebp)
43b986:	c7 45 9c a4 2a 41 00 	movl   $0x412aa4,-0x64(%ebp)
43b98d:	c7 45 a0 20 db 43 00 	movl   $0x43db20,-0x60(%ebp)
43b994:	c7 45 b0 98 2d 41 00 	movl   $0x412d98,-0x50(%ebp)
43b99b:	c7 45 b4 bc 2a 41 00 	movl   $0x412abc,-0x4c(%ebp)
43b9a2:	c7 45 b8 50 95 42 00 	movl   $0x429550,-0x48(%ebp)
43b9a9:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
43b9b0:	e8 2b 3b 00 00       	call   0x43f4e0
43b9b5:	8b f0                	mov    %eax,%esi
43b9b7:	8b 45 d4             	mov    -0x2c(%ebp),%eax
43b9ba:	89 45 d0             	mov    %eax,-0x30(%ebp)
43b9bd:	85 c0                	test   %eax,%eax
43b9bf:	75 06                	jne    0x43b9c7
43b9c1:	8b 45 88             	mov    -0x78(%ebp),%eax
43b9c4:	89 45 d0             	mov    %eax,-0x30(%ebp)
43b9c7:	85 f6                	test   %esi,%esi
43b9c9:	0f 88 c2 01 00 00    	js     0x43bb91
43b9cf:	8d 45 d4             	lea    -0x2c(%ebp),%eax
43b9d2:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
43b9d9:	50                   	push   %eax
43b9da:	8d 45 a6             	lea    -0x5a(%ebp),%eax
43b9dd:	33 d2                	xor    %edx,%edx
43b9df:	50                   	push   %eax
43b9e0:	68 a4 2a 41 00       	push   $0x412aa4
43b9e5:	b9 08 2e 41 00       	mov    $0x412e08,%ecx
43b9ea:	e8 f1 3a 00 00       	call   0x43f4e0
43b9ef:	8b 7d d4             	mov    -0x2c(%ebp),%edi
43b9f2:	8b f0                	mov    %eax,%esi
43b9f4:	85 ff                	test   %edi,%edi
43b9f6:	75 03                	jne    0x43b9fb
43b9f8:	8b 7d a0             	mov    -0x60(%ebp),%edi
43b9fb:	85 f6                	test   %esi,%esi
43b9fd:	0f 88 8e 01 00 00    	js     0x43bb91
43ba03:	8d 45 d4             	lea    -0x2c(%ebp),%eax
43ba06:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
43ba0d:	50                   	push   %eax
43ba0e:	8d 45 be             	lea    -0x42(%ebp),%eax
43ba11:	33 d2                	xor    %edx,%edx
43ba13:	50                   	push   %eax
43ba14:	68 bc 2a 41 00       	push   $0x412abc
43ba19:	b9 98 2d 41 00       	mov    $0x412d98,%ecx
43ba1e:	e8 bd 3a 00 00       	call   0x43f4e0
43ba23:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
43ba26:	8b f0                	mov    %eax,%esi
43ba28:	85 db                	test   %ebx,%ebx
43ba2a:	75 03                	jne    0x43ba2f
43ba2c:	8b 5d b8             	mov    -0x48(%ebp),%ebx
43ba2f:	85 f6                	test   %esi,%esi
43ba31:	0f 88 5a 01 00 00    	js     0x43bb91
43ba37:	8b 45 0c             	mov    0xc(%ebp),%eax
43ba3a:	f7 d8                	neg    %eax
43ba3c:	c7 45 e8 01 00 00 00 	movl   $0x1,-0x18(%ebp)
43ba43:	1b c0                	sbb    %eax,%eax
43ba45:	83 e0 02             	and    $0x2,%eax
43ba48:	89 45 f4             	mov    %eax,-0xc(%ebp)
43ba4b:	85 db                	test   %ebx,%ebx
43ba4d:	75 2c                	jne    0x43ba7b
43ba4f:	8b 55 bc             	mov    -0x44(%ebp),%edx
43ba52:	8d 45 d4             	lea    -0x2c(%ebp),%eax
43ba55:	8b 4d b0             	mov    -0x50(%ebp),%ecx
43ba58:	81 e2 00 08 00 00    	and    $0x800,%edx
43ba5e:	50                   	push   %eax
43ba5f:	8d 45 be             	lea    -0x42(%ebp),%eax
43ba62:	c1 ea 0b             	shr    $0xb,%edx
43ba65:	50                   	push   %eax
43ba66:	ff 75 b4             	push   -0x4c(%ebp)
43ba69:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
43ba6c:	e8 6f 3a 00 00       	call   0x43f4e0
43ba71:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
43ba74:	85 db                	test   %ebx,%ebx
43ba76:	75 03                	jne    0x43ba7b
43ba78:	8b 5d b8             	mov    -0x48(%ebp),%ebx
43ba7b:	8d 45 ec             	lea    -0x14(%ebp),%eax
43ba7e:	8b cb                	mov    %ebx,%ecx
43ba80:	50                   	push   %eax
43ba81:	ff b5 7c ff ff ff    	push   -0x84(%ebp)
43ba87:	6a 00                	push   $0x0
43ba89:	ff 15 84 23 45 00    	call   *0x452384
43ba8f:	ff d3                	call   *%ebx
43ba91:	85 c0                	test   %eax,%eax
43ba93:	75 25                	jne    0x43baba
43ba95:	8b 5d c8             	mov    -0x38(%ebp),%ebx
43ba98:	8b 33                	mov    (%ebx),%esi
43ba9a:	ff 15 6c 20 45 00    	call   *0x45206c
43baa0:	8b 76 10             	mov    0x10(%esi),%esi
43baa3:	8b ce                	mov    %esi,%ecx
43baa5:	50                   	push   %eax
43baa6:	ff 15 84 23 45 00    	call   *0x452384
43baac:	8b cb                	mov    %ebx,%ecx
43baae:	ff d6                	call   *%esi
43bab0:	8b f0                	mov    %eax,%esi
43bab2:	85 f6                	test   %esi,%esi
43bab4:	0f 88 d7 00 00 00    	js     0x43bb91
43baba:	8b 5d d0             	mov    -0x30(%ebp),%ebx
43babd:	85 db                	test   %ebx,%ebx
43babf:	75 2c                	jne    0x43baed
43bac1:	8b 55 8c             	mov    -0x74(%ebp),%edx
43bac4:	8d 45 d0             	lea    -0x30(%ebp),%eax
43bac7:	8b 4d 80             	mov    -0x80(%ebp),%ecx
43baca:	81 e2 00 08 00 00    	and    $0x800,%edx
43bad0:	50                   	push   %eax
43bad1:	8d 45 8e             	lea    -0x72(%ebp),%eax
43bad4:	c1 ea 0b             	shr    $0xb,%edx
43bad7:	50                   	push   %eax
43bad8:	ff 75 84             	push   -0x7c(%ebp)
43badb:	89 5d d0             	mov    %ebx,-0x30(%ebp)
43bade:	e8 fd 39 00 00       	call   0x43f4e0
43bae3:	8b 5d d0             	mov    -0x30(%ebp),%ebx
43bae6:	85 db                	test   %ebx,%ebx
43bae8:	75 03                	jne    0x43baed
43baea:	8b 5d 88             	mov    -0x78(%ebp),%ebx
43baed:	8d 45 cc             	lea    -0x34(%ebp),%eax
43baf0:	50                   	push   %eax
43baf1:	6a 28                	push   $0x28
43baf3:	ff 15 c4 21 45 00    	call   *0x4521c4
43baf9:	50                   	push   %eax
43bafa:	8b cb                	mov    %ebx,%ecx
43bafc:	ff 15 84 23 45 00    	call   *0x452384
43bb02:	ff d3                	call   *%ebx
43bb04:	85 c0                	test   %eax,%eax
43bb06:	74 54                	je     0x43bb5c
43bb08:	85 ff                	test   %edi,%edi
43bb0a:	75 2c                	jne    0x43bb38
43bb0c:	8b 55 a4             	mov    -0x5c(%ebp),%edx
43bb0f:	8d 45 d0             	lea    -0x30(%ebp),%eax
43bb12:	8b 4d 98             	mov    -0x68(%ebp),%ecx
43bb15:	81 e2 00 08 00 00    	and    $0x800,%edx
43bb1b:	50                   	push   %eax
43bb1c:	8d 45 a6             	lea    -0x5a(%ebp),%eax
43bb1f:	c1 ea 0b             	shr    $0xb,%edx
43bb22:	50                   	push   %eax
43bb23:	ff 75 9c             	push   -0x64(%ebp)
43bb26:	89 7d d0             	mov    %edi,-0x30(%ebp)
43bb29:	e8 b2 39 00 00       	call   0x43f4e0
43bb2e:	8b 7d d0             	mov    -0x30(%ebp),%edi
43bb31:	85 ff                	test   %edi,%edi
43bb33:	75 03                	jne    0x43bb38
43bb35:	8b 7d a0             	mov    -0x60(%ebp),%edi
43bb38:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
43bb3e:	8b cf                	mov    %edi,%ecx
43bb40:	50                   	push   %eax
43bb41:	8d 45 d8             	lea    -0x28(%ebp),%eax
43bb44:	50                   	push   %eax
43bb45:	6a 10                	push   $0x10
43bb47:	8d 45 e8             	lea    -0x18(%ebp),%eax
43bb4a:	50                   	push   %eax
43bb4b:	6a 00                	push   $0x0
43bb4d:	ff 75 cc             	push   -0x34(%ebp)
43bb50:	ff 15 84 23 45 00    	call   *0x452384
43bb56:	ff d7                	call   *%edi
43bb58:	85 c0                	test   %eax,%eax
43bb5a:	75 21                	jne    0x43bb7d
43bb5c:	8b 5d c8             	mov    -0x38(%ebp),%ebx
43bb5f:	8b 33                	mov    (%ebx),%esi
43bb61:	ff 15 6c 20 45 00    	call   *0x45206c
43bb67:	8b 76 10             	mov    0x10(%esi),%esi
43bb6a:	8b ce                	mov    %esi,%ecx
43bb6c:	50                   	push   %eax
43bb6d:	ff 15 84 23 45 00    	call   *0x452384
43bb73:	8b cb                	mov    %ebx,%ecx
43bb75:	ff d6                	call   *%esi
43bb77:	8b f0                	mov    %eax,%esi
43bb79:	85 f6                	test   %esi,%esi
43bb7b:	78 14                	js     0x43bb91
43bb7d:	8b 8d 74 ff ff ff    	mov    -0x8c(%ebp),%ecx
43bb83:	85 c9                	test   %ecx,%ecx
43bb85:	74 0a                	je     0x43bb91
43bb87:	33 c0                	xor    %eax,%eax
43bb89:	39 45 d8             	cmp    %eax,-0x28(%ebp)
43bb8c:	0f 95 c0             	setne  %al
43bb8f:	89 01                	mov    %eax,(%ecx)
43bb91:	8b 45 cc             	mov    -0x34(%ebp),%eax
43bb94:	85 c0                	test   %eax,%eax
43bb96:	74 07                	je     0x43bb9f
43bb98:	50                   	push   %eax
43bb99:	ff 15 10 21 45 00    	call   *0x452110
43bb9f:	f7 45 bc 00 10 00 00 	testl  $0x1000,-0x44(%ebp)
43bba6:	74 25                	je     0x43bbcd
43bba8:	66 8b 45 be          	mov    -0x42(%ebp),%ax
43bbac:	66 83 f8 ff          	cmp    $0xffff,%ax
43bbb0:	74 1b                	je     0x43bbcd
43bbb2:	0f bf c8             	movswl %ax,%ecx
43bbb5:	8b 45 b0             	mov    -0x50(%ebp),%eax
43bbb8:	8d 04 48             	lea    (%eax,%ecx,2),%eax
43bbbb:	50                   	push   %eax
43bbbc:	ff 15 64 21 45 00    	call   *0x452164
43bbc2:	85 c0                	test   %eax,%eax
43bbc4:	74 07                	je     0x43bbcd
43bbc6:	50                   	push   %eax
43bbc7:	ff 15 60 21 45 00    	call   *0x452160
43bbcd:	f7 45 a4 00 10 00 00 	testl  $0x1000,-0x5c(%ebp)
43bbd4:	74 25                	je     0x43bbfb
43bbd6:	66 8b 45 a6          	mov    -0x5a(%ebp),%ax
43bbda:	66 83 f8 ff          	cmp    $0xffff,%ax
43bbde:	74 1b                	je     0x43bbfb
43bbe0:	0f bf c8             	movswl %ax,%ecx
43bbe3:	8b 45 98             	mov    -0x68(%ebp),%eax
43bbe6:	8d 04 48             	lea    (%eax,%ecx,2),%eax
43bbe9:	50                   	push   %eax
43bbea:	ff 15 64 21 45 00    	call   *0x452164
43bbf0:	85 c0                	test   %eax,%eax
43bbf2:	74 07                	je     0x43bbfb
43bbf4:	50                   	push   %eax
43bbf5:	ff 15 60 21 45 00    	call   *0x452160
43bbfb:	f7 45 8c 00 10 00 00 	testl  $0x1000,-0x74(%ebp)
43bc02:	74 25                	je     0x43bc29
43bc04:	66 8b 45 8e          	mov    -0x72(%ebp),%ax
43bc08:	66 83 f8 ff          	cmp    $0xffff,%ax
43bc0c:	74 1b                	je     0x43bc29
43bc0e:	0f bf c8             	movswl %ax,%ecx
43bc11:	8b 45 80             	mov    -0x80(%ebp),%eax
43bc14:	8d 04 48             	lea    (%eax,%ecx,2),%eax
43bc17:	50                   	push   %eax
43bc18:	ff 15 64 21 45 00    	call   *0x452164
43bc1e:	85 c0                	test   %eax,%eax
43bc20:	74 07                	je     0x43bc29
43bc22:	50                   	push   %eax
43bc23:	ff 15 60 21 45 00    	call   *0x452160
43bc29:	8b 4d f8             	mov    -0x8(%ebp),%ecx
43bc2c:	8b c6                	mov    %esi,%eax
43bc2e:	5f                   	pop    %edi
43bc2f:	5e                   	pop    %esi
43bc30:	33 cd                	xor    %ebp,%ecx
43bc32:	5b                   	pop    %ebx
43bc33:	e8 18 13 01 00       	call   0x44cf50
43bc38:	8b e5                	mov    %ebp,%esp
43bc3a:	5d                   	pop    %ebp
43bc3b:	c2 0c 00             	ret    $0xc
43bc3e:	cc                   	int3
43bc3f:	cc                   	int3
43bc40:	8b ff                	mov    %edi,%edi
43bc42:	55                   	push   %ebp
43bc43:	8b ec                	mov    %esp,%ebp
43bc45:	81 ec 18 02 00 00    	sub    $0x218,%esp
43bc4b:	a1 e4 f8 44 00       	mov    0x44f8e4,%eax
43bc50:	33 c5                	xor    %ebp,%eax
43bc52:	89 45 f8             	mov    %eax,-0x8(%ebp)
43bc55:	53                   	push   %ebx
43bc56:	8b d9                	mov    %ecx,%ebx
43bc58:	c7 85 e8 fd ff ff 00 	movl   $0x0,-0x218(%ebp)
43bc5f:	00 00 00
43bc62:	8b 4d 08             	mov    0x8(%ebp),%ecx
43bc65:	8d 95 ec fd ff ff    	lea    -0x214(%ebp),%edx
43bc6b:	56                   	push   %esi
43bc6c:	57                   	push   %edi
43bc6d:	8b 03                	mov    (%ebx),%eax
43bc6f:	52                   	push   %edx
43bc70:	51                   	push   %ecx
43bc71:	8b 70 14             	mov    0x14(%eax),%esi
43bc74:	8b ce                	mov    %esi,%ecx
43bc76:	ff 15 84 23 45 00    	call   *0x452384
43bc7c:	8b cb                	mov    %ebx,%ecx
43bc7e:	ff d6                	call   *%esi
43bc80:	85 c0                	test   %eax,%eax
43bc82:	0f 88 02 01 00 00    	js     0x43bd8a
43bc88:	6a 00                	push   $0x0
43bc8a:	68 00 00 00 02       	push   $0x2000000
43bc8f:	6a 03                	push   $0x3
43bc91:	6a 00                	push   $0x0
43bc93:	6a 03                	push   $0x3
43bc95:	68 00 00 00 40       	push   $0x40000000
43bc9a:	8d 85 ec fd ff ff    	lea    -0x214(%ebp),%eax
43bca0:	50                   	push   %eax
43bca1:	ff 15 ec 20 45 00    	call   *0x4520ec
43bca7:	8b f8                	mov    %eax,%edi
43bca9:	83 ff ff             	cmp    $0xffffffff,%edi
43bcac:	0f 85 86 00 00 00    	jne    0x43bd38
43bcb2:	8b 33                	mov    (%ebx),%esi
43bcb4:	ff 15 6c 20 45 00    	call   *0x45206c
43bcba:	8b 76 10             	mov    0x10(%esi),%esi
43bcbd:	8b ce                	mov    %esi,%ecx
43bcbf:	50                   	push   %eax
43bcc0:	ff 15 84 23 45 00    	call   *0x452384
43bcc6:	8b cb                	mov    %ebx,%ecx
43bcc8:	ff d6                	call   *%esi
43bcca:	3d f8 fb ff ff       	cmp    $0xfffffbf8,%eax
43bccf:	75 49                	jne    0x43bd1a
43bcd1:	8d 85 e8 fd ff ff    	lea    -0x218(%ebp),%eax
43bcd7:	8b cb                	mov    %ebx,%ecx
43bcd9:	50                   	push   %eax
43bcda:	6a 01                	push   $0x1
43bcdc:	68 d4 2a 41 00       	push   $0x412ad4
43bce1:	e8 fa fb ff ff       	call   0x43b8e0
43bce6:	85 c0                	test   %eax,%eax
43bce8:	78 28                	js     0x43bd12
43bcea:	6a 00                	push   $0x0
43bcec:	68 00 00 00 02       	push   $0x2000000
43bcf1:	6a 03                	push   $0x3
43bcf3:	6a 00                	push   $0x0
43bcf5:	6a 03                	push   $0x3
43bcf7:	68 00 00 00 40       	push   $0x40000000
43bcfc:	8d 85 ec fd ff ff    	lea    -0x214(%ebp),%eax
43bd02:	50                   	push   %eax
43bd03:	ff 15 ec 20 45 00    	call   *0x4520ec
43bd09:	8b f8                	mov    %eax,%edi
43bd0b:	83 ff ff             	cmp    $0xffffffff,%edi
43bd0e:	74 0a                	je     0x43bd1a
43bd10:	eb 26                	jmp    0x43bd38
43bd12:	6a 05                	push   $0x5
43bd14:	ff 15 78 20 45 00    	call   *0x452078
43bd1a:	8b 33                	mov    (%ebx),%esi
43bd1c:	ff 15 6c 20 45 00    	call   *0x45206c
43bd22:	8b 76 10             	mov    0x10(%esi),%esi
43bd25:	8b ce                	mov    %esi,%ecx
43bd27:	50                   	push   %eax
43bd28:	ff 15 84 23 45 00    	call   *0x452384
43bd2e:	8b cb                	mov    %ebx,%ecx
43bd30:	ff d6                	call   *%esi
43bd32:	8b f0                	mov    %eax,%esi
43bd34:	85 f6                	test   %esi,%esi
43bd36:	78 37                	js     0x43bd6f
43bd38:	57                   	push   %edi
43bd39:	33 f6                	xor    %esi,%esi
43bd3b:	ff 15 90 20 45 00    	call   *0x452090
43bd41:	85 c0                	test   %eax,%eax
43bd43:	75 1a                	jne    0x43bd5f
43bd45:	8b 33                	mov    (%ebx),%esi
43bd47:	ff 15 6c 20 45 00    	call   *0x45206c
43bd4d:	8b 76 10             	mov    0x10(%esi),%esi
43bd50:	8b ce                	mov    %esi,%ecx
43bd52:	50                   	push   %eax
43bd53:	ff 15 84 23 45 00    	call   *0x452384
43bd59:	8b cb                	mov    %ebx,%ecx
43bd5b:	ff d6                	call   *%esi
43bd5d:	8b f0                	mov    %eax,%esi
43bd5f:	85 ff                	test   %edi,%edi
43bd61:	74 0c                	je     0x43bd6f
43bd63:	83 ff ff             	cmp    $0xffffffff,%edi
43bd66:	74 07                	je     0x43bd6f
43bd68:	57                   	push   %edi
43bd69:	ff 15 10 21 45 00    	call   *0x452110
43bd6f:	83 bd e8 fd ff ff 00 	cmpl   $0x0,-0x218(%ebp)
43bd76:	74 10                	je     0x43bd88
43bd78:	6a 00                	push   $0x0
43bd7a:	6a 00                	push   $0x0
43bd7c:	68 d4 2a 41 00       	push   $0x412ad4
43bd81:	8b cb                	mov    %ebx,%ecx
43bd83:	e8 58 fb ff ff       	call   0x43b8e0
43bd88:	8b c6                	mov    %esi,%eax
43bd8a:	8b 4d f8             	mov    -0x8(%ebp),%ecx
43bd8d:	5f                   	pop    %edi
43bd8e:	5e                   	pop    %esi
43bd8f:	33 cd                	xor    %ebp,%ecx