431a96:	75 08                	jne    0x431aa0
431a98:	8b 45 f0             	mov    -0x10(%ebp),%eax
431a9b:	3b 47 74             	cmp    0x74(%edi),%eax
431a9e:	74 4c                	je     0x431aec
431aa0:	e8 8b 86 ff ff       	call   0x42a130
431aa5:	85 c0                	test   %eax,%eax
431aa7:	74 03                	je     0x431aac
431aa9:	ff 40 18             	incl   0x18(%eax)
431aac:	68 ed 0f 00 00       	push   $0xfed
431ab1:	68 60 19 41 00       	push   $0x411960
431ab6:	68 0c 24 41 00       	push   $0x41240c
431abb:	68 50 0d 41 00       	push   $0x410d50
431ac0:	68 50 19 41 00       	push   $0x411950
431ac5:	e8 06 91 ff ff       	call   0x42abd0
431aca:	83 c4 0c             	add    $0xc,%esp
431acd:	50                   	push   %eax
431ace:	e8 bd 67 ff ff       	call   0x428290
431ad3:	83 c4 0c             	add    $0xc,%esp
431ad6:	e8 55 86 ff ff       	call   0x42a130
431adb:	85 c0                	test   %eax,%eax
431add:	74 0d                	je     0x431aec
431adf:	83 40 18 ff          	addl   $0xffffffff,0x18(%eax)
431ae3:	75 07                	jne    0x431aec
431ae5:	8b c8                	mov    %eax,%ecx
431ae7:	e8 64 85 ff ff       	call   0x42a050
431aec:	51                   	push   %ecx
431aed:	8d 45 e4             	lea    -0x1c(%ebp),%eax
431af0:	50                   	push   %eax
431af1:	8d 4e 14             	lea    0x14(%esi),%ecx
431af4:	e8 67 61 00 00       	call   0x437c60
431af9:	85 c0                	test   %eax,%eax
431afb:	74 4c                	je     0x431b49
431afd:	e8 2e 86 ff ff       	call   0x42a130
431b02:	85 c0                	test   %eax,%eax
431b04:	74 03                	je     0x431b09
431b06:	ff 40 18             	incl   0x18(%eax)
431b09:	68 f5 0f 00 00       	push   $0xff5
431b0e:	68 60 19 41 00       	push   $0x411960
431b13:	68 14 23 41 00       	push   $0x412314
431b18:	68 50 0d 41 00       	push   $0x410d50
431b1d:	68 08 0d 41 00       	push   $0x410d08
431b22:	e8 a9 90 ff ff       	call   0x42abd0
431b27:	83 c4 0c             	add    $0xc,%esp
431b2a:	50                   	push   %eax
431b2b:	e8 60 67 ff ff       	call   0x428290
431b30:	83 c4 0c             	add    $0xc,%esp
431b33:	e8 f8 85 ff ff       	call   0x42a130
431b38:	85 c0                	test   %eax,%eax
431b3a:	74 0d                	je     0x431b49
431b3c:	83 40 18 ff          	addl   $0xffffffff,0x18(%eax)
431b40:	75 07                	jne    0x431b49
431b42:	8b c8                	mov    %eax,%ecx
431b44:	e8 07 85 ff ff       	call   0x42a050
431b49:	8b 45 d8             	mov    -0x28(%ebp),%eax
431b4c:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
431b4f:	8b cb                	mov    %ebx,%ecx
431b51:	57                   	push   %edi
431b52:	89 38                	mov    %edi,(%eax)
431b54:	e8 17 11 00 00       	call   0x432c70
431b59:	8b 03                	mov    (%ebx),%eax
431b5b:	83 e8 01             	sub    $0x1,%eax
431b5e:	74 0e                	je     0x431b6e
431b60:	83 e8 01             	sub    $0x1,%eax
431b63:	74 04                	je     0x431b69
431b65:	33 c0                	xor    %eax,%eax
431b67:	eb 0a                	jmp    0x431b73
431b69:	8b 43 10             	mov    0x10(%ebx),%eax
431b6c:	eb 05                	jmp    0x431b73
431b6e:	b8 01 00 00 00       	mov    $0x1,%eax
431b73:	29 46 04             	sub    %eax,0x4(%esi)
431b76:	ff 0e                	decl   (%esi)
431b78:	8b 4d f8             	mov    -0x8(%ebp),%ecx
431b7b:	5f                   	pop    %edi
431b7c:	5e                   	pop    %esi
431b7d:	33 cd                	xor    %ebp,%ecx
431b7f:	5b                   	pop    %ebx
431b80:	e8 cb b3 01 00       	call   0x44cf50
431b85:	8b e5                	mov    %ebp,%esp
431b87:	5d                   	pop    %ebp
431b88:	c2 0c 00             	ret    $0xc
431b8b:	cc                   	int3
431b8c:	cc                   	int3
431b8d:	cc                   	int3
431b8e:	cc                   	int3
431b8f:	cc                   	int3
431b90:	8b ff                	mov    %edi,%edi
431b92:	56                   	push   %esi
431b93:	8b f1                	mov    %ecx,%esi
431b95:	8b 46 08             	mov    0x8(%esi),%eax
431b98:	0b 46 0c             	or     0xc(%esi),%eax
431b9b:	74 24                	je     0x431bc1
431b9d:	e8 ee b9 ff ff       	call   0x42d590
431ba2:	2b 46 08             	sub    0x8(%esi),%eax
431ba5:	1b 56 0c             	sbb    0xc(%esi),%edx
431ba8:	52                   	push   %edx
431ba9:	50                   	push   %eax
431baa:	e8 71 6b 00 00       	call   0x438720
431baf:	85 d2                	test   %edx,%edx
431bb1:	75 07                	jne    0x431bba
431bb3:	3d b8 0b 00 00       	cmp    $0xbb8,%eax
431bb8:	76 07                	jbe    0x431bc1
431bba:	b8 01 00 00 00       	mov    $0x1,%eax
431bbf:	5e                   	pop    %esi
431bc0:	c3                   	ret
431bc1:	33 c0                	xor    %eax,%eax
431bc3:	5e                   	pop    %esi
431bc4:	c3                   	ret
431bc5:	cc                   	int3
431bc6:	cc                   	int3
431bc7:	cc                   	int3
431bc8:	cc                   	int3
431bc9:	cc                   	int3
431bca:	cc                   	int3
431bcb:	cc                   	int3
431bcc:	cc                   	int3
431bcd:	cc                   	int3
431bce:	cc                   	int3
431bcf:	cc                   	int3
431bd0:	8b ff                	mov    %edi,%edi
431bd2:	56                   	push   %esi
431bd3:	8b f1                	mov    %ecx,%esi
431bd5:	57                   	push   %edi
431bd6:	8b 7e 1c             	mov    0x1c(%esi),%edi
431bd9:	85 ff                	test   %edi,%edi
431bdb:	74 3e                	je     0x431c1b
431bdd:	8b 07                	mov    (%edi),%eax
431bdf:	85 c0                	test   %eax,%eax
431be1:	74 1f                	je     0x431c02
431be3:	50                   	push   %eax
431be4:	6a 00                	push   $0x0
431be6:	ff 35 00 12 45 00    	push   0x451200
431bec:	ff 15 18 21 45 00    	call   *0x452118
431bf2:	85 c0                	test   %eax,%eax
431bf4:	75 06                	jne    0x431bfc
431bf6:	ff 15 6c 20 45 00    	call   *0x45206c
431bfc:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
431c02:	57                   	push   %edi
431c03:	6a 00                	push   $0x0
431c05:	ff 35 00 12 45 00    	push   0x451200
431c0b:	ff 15 18 21 45 00    	call   *0x452118
431c11:	85 c0                	test   %eax,%eax
431c13:	75 06                	jne    0x431c1b
431c15:	ff 15 6c 20 45 00    	call   *0x45206c
431c1b:	8b 46 20             	mov    0x20(%esi),%eax
431c1e:	c7 46 1c 00 00 00 00 	movl   $0x0,0x1c(%esi)
431c25:	85 c0                	test   %eax,%eax
431c27:	74 19                	je     0x431c42
431c29:	50                   	push   %eax
431c2a:	6a 00                	push   $0x0
431c2c:	ff 35 00 12 45 00    	push   0x451200
431c32:	ff 15 18 21 45 00    	call   *0x452118
431c38:	85 c0                	test   %eax,%eax
431c3a:	75 06                	jne    0x431c42
431c3c:	ff 15 6c 20 45 00    	call   *0x45206c
431c42:	5f                   	pop    %edi
431c43:	c7 46 20 00 00 00 00 	movl   $0x0,0x20(%esi)
431c4a:	5e                   	pop    %esi
431c4b:	c3                   	ret
431c4c:	cc                   	int3
431c4d:	cc                   	int3
431c4e:	cc                   	int3
431c4f:	cc                   	int3
431c50:	8b ff                	mov    %edi,%edi
431c52:	55                   	push   %ebp
431c53:	8b ec                	mov    %esp,%ebp
431c55:	53                   	push   %ebx
431c56:	56                   	push   %esi
431c57:	57                   	push   %edi
431c58:	6a 10                	push   $0x10
431c5a:	6a 00                	push   $0x0
431c5c:	ff 35 00 12 45 00    	push   0x451200
431c62:	8b d9                	mov    %ecx,%ebx
431c64:	ff 15 24 21 45 00    	call   *0x452124
431c6a:	8b f0                	mov    %eax,%esi
431c6c:	85 f6                	test   %esi,%esi
431c6e:	0f 84 21 02 00 00    	je     0x431e95
431c74:	8b 4b 10             	mov    0x10(%ebx),%ecx
431c77:	6a 10                	push   $0x10
431c79:	6a 00                	push   $0x0
431c7b:	ff 35 00 12 45 00    	push   0x451200
431c81:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
431c87:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
431c8e:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
431c95:	89 4e 0c             	mov    %ecx,0xc(%esi)
431c98:	ff 15 24 21 45 00    	call   *0x452124
431c9e:	8b f8                	mov    %eax,%edi
431ca0:	85 ff                	test   %edi,%edi
431ca2:	0f 84 48 01 00 00    	je     0x431df0
431ca8:	8b 4b 10             	mov    0x10(%ebx),%ecx
431cab:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
431cb0:	89 4f 0c             	mov    %ecx,0xc(%edi)
431cb3:	8b 4d 08             	mov    0x8(%ebp),%ecx
431cb6:	99                   	cltd
431cb7:	f7 f9                	idiv   %ecx
431cb9:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
431cbf:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
431cc6:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%edi)
431ccd:	89 4b 14             	mov    %ecx,0x14(%ebx)
431cd0:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
431cd6:	89 4e 04             	mov    %ecx,0x4(%esi)
431cd9:	83 f8 04             	cmp    $0x4,%eax
431cdc:	0f 86 a5 00 00 00    	jbe    0x431d87
431ce2:	8b c1                	mov    %ecx,%eax
431ce4:	83 f9 04             	cmp    $0x4,%ecx
431ce7:	77 05                	ja     0x431cee
431ce9:	b8 04 00 00 00       	mov    $0x4,%eax
431cee:	c1 e1 02             	shl    $0x2,%ecx
431cf1:	3b c8                	cmp    %eax,%ecx
431cf3:	0f 82 8e 00 00 00    	jb     0x431d87
431cf9:	51                   	push   %ecx
431cfa:	6a 00                	push   $0x0
431cfc:	ff 35 00 12 45 00    	push   0x451200
431d02:	ff 15 24 21 45 00    	call   *0x452124
431d08:	85 c0                	test   %eax,%eax
431d0a:	75 28                	jne    0x431d34
431d0c:	89 06                	mov    %eax,(%esi)
431d0e:	e8 dd bf 00 00       	call   0x43dcf0
431d13:	83 c0 10             	add    $0x10,%eax
431d16:	74 11                	je     0x431d29
431d18:	e8 d3 bf 00 00       	call   0x43dcf0
431d1d:	83 c0 14             	add    $0x14,%eax
431d20:	c7 40 04 43 0d 00 00 	movl   $0xd43,0x4(%eax)
431d27:	eb 7b                	jmp    0x431da4
431d29:	33 c0                	xor    %eax,%eax
431d2b:	c7 40 04 43 0d 00 00 	movl   $0xd43,0x4(%eax)
431d32:	eb 70                	jmp    0x431da4
431d34:	8b 4e 04             	mov    0x4(%esi),%ecx
431d37:	89 06                	mov    %eax,(%esi)
431d39:	8b 06                	mov    (%esi),%eax
431d3b:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
431d42:	89 4f 04             	mov    %ecx,0x4(%edi)
431d45:	89 07                	mov    %eax,(%edi)
431d47:	89 4f 08             	mov    %ecx,0x8(%edi)
431d4a:	8d 4b 18             	lea    0x18(%ebx),%ecx
431d4d:	ff 73 14             	push   0x14(%ebx)
431d50:	89 73 1c             	mov    %esi,0x1c(%ebx)
431d53:	89 7b 20             	mov    %edi,0x20(%ebx)
431d56:	e8 e5 30 fe ff       	call   0x414e40
431d5b:	5f                   	pop    %edi
431d5c:	5e                   	pop    %esi
431d5d:	c7 43 24 01 00 00 00 	movl   $0x1,0x24(%ebx)
431d64:	33 c0                	xor    %eax,%eax
431d66:	c7 43 28 00 00 00 00 	movl   $0x0,0x28(%ebx)
431d6d:	c7 43 2c 00 00 00 00 	movl   $0x0,0x2c(%ebx)
431d74:	c7 43 30 00 00 00 00 	movl   $0x0,0x30(%ebx)
431d7b:	c7 43 34 00 00 00 00 	movl   $0x0,0x34(%ebx)
431d82:	5b                   	pop    %ebx
431d83:	5d                   	pop    %ebp
431d84:	c2 04 00             	ret    $0x4
431d87:	e8 64 bf 00 00       	call   0x43dcf0
431d8c:	83 c0 10             	add    $0x10,%eax
431d8f:	74 0a                	je     0x431d9b
431d91:	e8 5a bf 00 00       	call   0x43dcf0
431d96:	83 c0 14             	add    $0x14,%eax
431d99:	eb 02                	jmp    0x431d9d
431d9b:	33 c0                	xor    %eax,%eax
431d9d:	c7 40 04 3c 0d 00 00 	movl   $0xd3c,0x4(%eax)
431da4:	81 3d 30 1a 45 00 0d 	cmpl   $0xfffffc0d,0x451a30
431dab:	fc ff ff
431dae:	c7 40 08 0d fc ff ff 	movl   $0xfffffc0d,0x8(%eax)
431db5:	c7 00 60 19 41 00    	movl   $0x411960,(%eax)
431dbb:	75 06                	jne    0x431dc3
431dbd:	ff 15 58 20 45 00    	call   *0x452058
431dc3:	8b 06                	mov    (%esi),%eax
431dc5:	85 c0                	test   %eax,%eax
431dc7:	0f 84 86 00 00 00    	je     0x431e53
431dcd:	50                   	push   %eax
431dce:	6a 00                	push   $0x0
431dd0:	ff 35 00 12 45 00    	push   0x451200
431dd6:	ff 15 18 21 45 00    	call   *0x452118
431ddc:	85 c0                	test   %eax,%eax
431dde:	75 06                	jne    0x431de6
431de0:	ff 15 6c 20 45 00    	call   *0x45206c
431de6:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
431dec:	33 c0                	xor    %eax,%eax
431dee:	eb 40                	jmp    0x431e30
431df0:	33 ff                	xor    %edi,%edi
431df2:	e8 f9 be 00 00       	call   0x43dcf0
431df7:	83 c0 10             	add    $0x10,%eax
431dfa:	74 0a                	je     0x431e06
431dfc:	e8 ef be 00 00       	call   0x43dcf0
431e01:	83 c0 14             	add    $0x14,%eax
431e04:	eb 02                	jmp    0x431e08
431e06:	33 c0                	xor    %eax,%eax
431e08:	81 3d 30 1a 45 00 0d 	cmpl   $0xfffffc0d,0x451a30
431e0f:	fc ff ff
431e12:	c7 00 60 19 41 00    	movl   $0x411960,(%eax)
431e18:	c7 40 04 8c 10 00 00 	movl   $0x108c,0x4(%eax)
431e1f:	c7 40 08 0d fc ff ff 	movl   $0xfffffc0d,0x8(%eax)
431e26:	75 06                	jne    0x431e2e
431e28:	ff 15 58 20 45 00    	call   *0x452058
431e2e:	8b 06                	mov    (%esi),%eax
431e30:	85 c0                	test   %eax,%eax
431e32:	74 1f                	je     0x431e53
431e34:	50                   	push   %eax
431e35:	6a 00                	push   $0x0
431e37:	ff 35 00 12 45 00    	push   0x451200
431e3d:	ff 15 18 21 45 00    	call   *0x452118
431e43:	85 c0                	test   %eax,%eax
431e45:	75 06                	jne    0x431e4d
431e47:	ff 15 6c 20 45 00    	call   *0x45206c
431e4d:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
431e53:	56                   	push   %esi
431e54:	6a 00                	push   $0x0
431e56:	ff 35 00 12 45 00    	push   0x451200
431e5c:	ff 15 18 21 45 00    	call   *0x452118
431e62:	85 c0                	test   %eax,%eax
431e64:	75 06                	jne    0x431e6c
431e66:	ff 15 6c 20 45 00    	call   *0x45206c
431e6c:	85 ff                	test   %edi,%edi
431e6e:	74 61                	je     0x431ed1
431e70:	57                   	push   %edi
431e71:	6a 00                	push   $0x0
431e73:	ff 35 00 12 45 00    	push   0x451200
431e79:	ff 15 18 21 45 00    	call   *0x452118
431e7f:	85 c0                	test   %eax,%eax
431e81:	75 4e                	jne    0x431ed1
431e83:	ff 15 6c 20 45 00    	call   *0x45206c
431e89:	5f                   	pop    %edi
431e8a:	5e                   	pop    %esi
431e8b:	b8 0d fc ff ff       	mov    $0xfffffc0d,%eax
431e90:	5b                   	pop    %ebx
431e91:	5d                   	pop    %ebp
431e92:	c2 04 00             	ret    $0x4
431e95:	e8 56 be 00 00       	call   0x43dcf0
431e9a:	83 c0 10             	add    $0x10,%eax
431e9d:	74 0a                	je     0x431ea9
431e9f:	e8 4c be 00 00       	call   0x43dcf0
431ea4:	83 c0 14             	add    $0x14,%eax
431ea7:	eb 02                	jmp    0x431eab
431ea9:	33 c0                	xor    %eax,%eax
431eab:	81 3d 30 1a 45 00 0d 	cmpl   $0xfffffc0d,0x451a30
431eb2:	fc ff ff
431eb5:	c7 00 60 19 41 00    	movl   $0x411960,(%eax)
431ebb:	c7 40 04 8a 10 00 00 	movl   $0x108a,0x4(%eax)
431ec2:	c7 40 08 0d fc ff ff 	movl   $0xfffffc0d,0x8(%eax)
431ec9:	75 06                	jne    0x431ed1
431ecb:	ff 15 58 20 45 00    	call   *0x452058
431ed1:	5f                   	pop    %edi
431ed2:	5e                   	pop    %esi
431ed3:	b8 0d fc ff ff       	mov    $0xfffffc0d,%eax
431ed8:	5b                   	pop    %ebx
431ed9:	5d                   	pop    %ebp
431eda:	c2 04 00             	ret    $0x4
431edd:	cc                   	int3
431ede:	cc                   	int3
431edf:	cc                   	int3
431ee0:	8b 41 1c             	mov    0x1c(%ecx),%eax
431ee3:	8b 40 08             	mov    0x8(%eax),%eax
431ee6:	85 c0                	test   %eax,%eax