515c89:	74 11                	je     0x515c9c
515c8b:	56                   	push   %esi
515c8c:	ff 75 08             	push   0x8(%ebp)
515c8f:	57                   	push   %edi
515c90:	e8 6b d2 0c 00       	call   0x5e2f00
515c95:	83 c4 0c             	add    $0xc,%esp
515c98:	c6 04 3e 00          	movb   $0x0,(%esi,%edi,1)
515c9c:	8b 45 f8             	mov    -0x8(%ebp),%eax
515c9f:	89 7b f4             	mov    %edi,-0xc(%ebx)
515ca2:	80 b8 c8 00 00 00 02 	cmpb   $0x2,0xc8(%eax)
515ca9:	72 0e                	jb     0x515cb9
515cab:	8d 4d a0             	lea    -0x60(%ebp),%ecx
515cae:	51                   	push   %ecx
515caf:	57                   	push   %edi
515cb0:	50                   	push   %eax
515cb1:	e8 9a 21 02 00       	call   0x537e50
515cb6:	83 c4 0c             	add    $0xc,%esp
515cb9:	8b 45 0c             	mov    0xc(%ebp),%eax
515cbc:	f7 40 04 00 08 00 00 	testl  $0x800,0x4(%eax)
515cc3:	0f 84 ee 00 00 00    	je     0x515db7
515cc9:	8b 4d e8             	mov    -0x18(%ebp),%ecx
515ccc:	8b 75 f4             	mov    -0xc(%ebp),%esi
515ccf:	8b 01                	mov    (%ecx),%eax
515cd1:	8d 58 ff             	lea    -0x1(%eax),%ebx
515cd4:	8d 1c 98             	lea    (%eax,%ebx,4),%ebx
515cd7:	8d 1c 99             	lea    (%ecx,%ebx,4),%ebx
515cda:	8b 4b 04             	mov    0x4(%ebx),%ecx
515cdd:	89 5d ac             	mov    %ebx,-0x54(%ebp)
515ce0:	85 c9                	test   %ecx,%ecx
515ce2:	74 56                	je     0x515d3a
515ce4:	83 be f8 01 00 00 00 	cmpl   $0x0,0x1f8(%esi)
515ceb:	74 0c                	je     0x515cf9
515ced:	51                   	push   %ecx
515cee:	56                   	push   %esi
515cef:	e8 7c 37 ff ff       	call   0x509470
515cf4:	83 c4 08             	add    $0x8,%esp
515cf7:	eb 41                	jmp    0x515d3a
515cf9:	3b 8e 4c 01 00 00    	cmp    0x14c(%esi),%ecx
515cff:	73 30                	jae    0x515d31
515d01:	3b 8e 44 01 00 00    	cmp    0x144(%esi),%ecx
515d07:	72 10                	jb     0x515d19
515d09:	8b 86 40 01 00 00    	mov    0x140(%esi),%eax
515d0f:	89 01                	mov    %eax,(%ecx)
515d11:	89 8e 40 01 00 00    	mov    %ecx,0x140(%esi)
515d17:	eb 21                	jmp    0x515d3a
515d19:	3b 8e 48 01 00 00    	cmp    0x148(%esi),%ecx
515d1f:	72 10                	jb     0x515d31
515d21:	8b 86 38 01 00 00    	mov    0x138(%esi),%eax
515d27:	89 01                	mov    %eax,(%ecx)
515d29:	89 8e 38 01 00 00    	mov    %ecx,0x138(%esi)
515d2f:	eb 09                	jmp    0x515d3a
515d31:	51                   	push   %ecx
515d32:	e8 59 50 fd ff       	call   0x4ead90
515d37:	83 c4 04             	add    $0x4,%esp
515d3a:	8b 55 dc             	mov    -0x24(%ebp),%edx
515d3d:	85 d2                	test   %edx,%edx
515d3f:	74 50                	je     0x515d91
515d41:	8b 42 1c             	mov    0x1c(%edx),%eax
515d44:	8b 7d b0             	mov    -0x50(%ebp),%edi
515d47:	8b 7c 38 08          	mov    0x8(%eax,%edi,1),%edi
515d4b:	85 ff                	test   %edi,%edi
515d4d:	75 07                	jne    0x515d56
515d4f:	33 f6                	xor    %esi,%esi
515d51:	89 73 04             	mov    %esi,0x4(%ebx)
515d54:	eb 55                	jmp    0x515dab
515d56:	8b cf                	mov    %edi,%ecx
515d58:	8d 51 01             	lea    0x1(%ecx),%edx
515d5b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
515d60:	8a 01                	mov    (%ecx),%al
515d62:	41                   	inc    %ecx
515d63:	84 c0                	test   %al,%al
515d65:	75 f9                	jne    0x515d60
515d67:	2b ca                	sub    %edx,%ecx
515d69:	6a 00                	push   $0x0
515d6b:	8d 59 01             	lea    0x1(%ecx),%ebx
515d6e:	53                   	push   %ebx
515d6f:	56                   	push   %esi
515d70:	e8 6b b6 00 00       	call   0x5213e0
515d75:	8b f0                	mov    %eax,%esi
515d77:	83 c4 0c             	add    $0xc,%esp
515d7a:	85 f6                	test   %esi,%esi
515d7c:	74 0b                	je     0x515d89
515d7e:	53                   	push   %ebx
515d7f:	57                   	push   %edi
515d80:	56                   	push   %esi
515d81:	e8 7a d1 0c 00       	call   0x5e2f00
515d86:	83 c4 0c             	add    $0xc,%esp
515d89:	8b 5d ac             	mov    -0x54(%ebp),%ebx
515d8c:	89 73 04             	mov    %esi,0x4(%ebx)
515d8f:	eb 1a                	jmp    0x515dab
515d91:	ff 75 08             	push   0x8(%ebp)
515d94:	ff 75 e4             	push   -0x1c(%ebp)
515d97:	ff 75 e0             	push   -0x20(%ebp)
515d9a:	68 4c b2 6b 00       	push   $0x6bb24c
515d9f:	56                   	push   %esi
515da0:	e8 9b b1 01 00       	call   0x530f40
515da5:	83 c4 14             	add    $0x14,%esp
515da8:	89 43 04             	mov    %eax,0x4(%ebx)
515dab:	8b 43 0c             	mov    0xc(%ebx),%eax
515dae:	83 e0 fe             	and    $0xfffffffe,%eax
515db1:	83 c8 02             	or     $0x2,%eax
515db4:	89 43 0c             	mov    %eax,0xc(%ebx)
515db7:	8b 5d c4             	mov    -0x3c(%ebp),%ebx
515dba:	85 db                	test   %ebx,%ebx
515dbc:	0f 84 a8 00 00 00    	je     0x515e6a
515dc2:	8b 75 f4             	mov    -0xc(%ebp),%esi
515dc5:	83 be f8 01 00 00 00 	cmpl   $0x0,0x1f8(%esi)
515dcc:	74 0f                	je     0x515ddd
515dce:	53                   	push   %ebx
515dcf:	56                   	push   %esi
515dd0:	e8 9b 36 ff ff       	call   0x509470
515dd5:	83 c4 08             	add    $0x8,%esp
515dd8:	e9 8d 00 00 00       	jmp    0x515e6a
515ddd:	3b 9e 4c 01 00 00    	cmp    0x14c(%esi),%ebx
515de3:	73 30                	jae    0x515e15
515de5:	3b 9e 44 01 00 00    	cmp    0x144(%esi),%ebx
515deb:	72 10                	jb     0x515dfd
515ded:	8b 86 40 01 00 00    	mov    0x140(%esi),%eax
515df3:	89 03                	mov    %eax,(%ebx)
515df5:	89 9e 40 01 00 00    	mov    %ebx,0x140(%esi)
515dfb:	eb 6d                	jmp    0x515e6a
515dfd:	3b 9e 48 01 00 00    	cmp    0x148(%esi),%ebx
515e03:	72 10                	jb     0x515e15
515e05:	8b 86 38 01 00 00    	mov    0x138(%esi),%eax
515e0b:	89 03                	mov    %eax,(%ebx)
515e0d:	89 9e 38 01 00 00    	mov    %ebx,0x138(%esi)
515e13:	eb 55                	jmp    0x515e6a
515e15:	83 3d 10 18 72 00 00 	cmpl   $0x0,0x721810
515e1c:	74 42                	je     0x515e60
515e1e:	a1 90 ff 72 00       	mov    0x72ff90,%eax
515e23:	85 c0                	test   %eax,%eax
515e25:	74 0a                	je     0x515e31
515e27:	50                   	push   %eax
515e28:	ff 15 60 18 72 00    	call   *0x721860
515e2e:	83 c4 04             	add    $0x4,%esp
515e31:	53                   	push   %ebx
515e32:	ff 15 3c 18 72 00    	call   *0x72183c
515e38:	29 05 20 00 73 00    	sub    %eax,0x730020
515e3e:	ff 0d 44 00 73 00    	decl   0x730044
515e44:	53                   	push   %ebx
515e45:	ff 15 34 18 72 00    	call   *0x721834
515e4b:	a1 90 ff 72 00       	mov    0x72ff90,%eax
515e50:	83 c4 08             	add    $0x8,%esp
515e53:	85 c0                	test   %eax,%eax
515e55:	74 13                	je     0x515e6a
515e57:	50                   	push   %eax
515e58:	ff 15 68 18 72 00    	call   *0x721868
515e5e:	eb 07                	jmp    0x515e67
515e60:	53                   	push   %ebx
515e61:	ff 15 34 18 72 00    	call   *0x721834
515e67:	83 c4 04             	add    $0x4,%esp
515e6a:	8b 5d a8             	mov    -0x58(%ebp),%ebx
515e6d:	8b 4d c0             	mov    -0x40(%ebp),%ecx
515e70:	8b 55 dc             	mov    -0x24(%ebp),%edx
515e73:	41                   	inc    %ecx
515e74:	89 4d c0             	mov    %ecx,-0x40(%ebp)
515e77:	0f bf 43 2a          	movswl 0x2a(%ebx),%eax
515e7b:	3b c8                	cmp    %eax,%ecx
515e7d:	0f 8c ad fa ff ff    	jl     0x515930
515e83:	8b 75 d4             	mov    -0x2c(%ebp),%esi
515e86:	8b 4d f0             	mov    -0x10(%ebp),%ecx
515e89:	46                   	inc    %esi
515e8a:	8b 45 d0             	mov    -0x30(%ebp),%eax
515e8d:	83 c0 48             	add    $0x48,%eax
515e90:	89 75 d4             	mov    %esi,-0x2c(%ebp)
515e93:	89 45 d0             	mov    %eax,-0x30(%ebp)
515e96:	3b 31                	cmp    (%ecx),%esi
515e98:	0f 8c d2 f9 ff ff    	jl     0x515870
515e9e:	8b 45 bc             	mov    -0x44(%ebp),%eax
515ea1:	8b 5d f8             	mov    -0x8(%ebp),%ebx
515ea4:	85 c0                	test   %eax,%eax
515ea6:	75 26                	jne    0x515ece
515ea8:	8b 45 ec             	mov    -0x14(%ebp),%eax
515eab:	85 c0                	test   %eax,%eax
515ead:	74 11                	je     0x515ec0
515eaf:	50                   	push   %eax
515eb0:	68 58 b2 6b 00       	push   $0x6bb258
515eb5:	53                   	push   %ebx
515eb6:	e8 a5 d3 00 00       	call   0x523260
515ebb:	83 c4 0c             	add    $0xc,%esp
515ebe:	eb 0e                	jmp    0x515ece
515ec0:	68 6c b2 6b 00       	push   $0x6bb26c
515ec5:	53                   	push   %ebx
515ec6:	e8 95 d3 00 00       	call   0x523260
515ecb:	83 c4 08             	add    $0x8,%esp
515ece:	8b 45 b8             	mov    -0x48(%ebp),%eax
515ed1:	8b 4d cc             	mov    -0x34(%ebp),%ecx
515ed4:	40                   	inc    %eax
515ed5:	89 45 b8             	mov    %eax,-0x48(%ebp)
515ed8:	3b 01                	cmp    (%ecx),%eax
515eda:	0f 8c c2 f8 ff ff    	jl     0x5157a2
515ee0:	8b 75 0c             	mov    0xc(%ebp),%esi
515ee3:	8b 5d f4             	mov    -0xc(%ebp),%ebx
515ee6:	51                   	push   %ecx
515ee7:	53                   	push   %ebx
515ee8:	e8 13 b1 fe ff       	call   0x501000
515eed:	8b 45 e8             	mov    -0x18(%ebp),%eax
515ef0:	83 c4 08             	add    $0x8,%esp
515ef3:	89 46 1c             	mov    %eax,0x1c(%esi)
515ef6:	eb 03                	jmp    0x515efb
515ef8:	8b 5d f4             	mov    -0xc(%ebp),%ebx
515efb:	8b 46 1c             	mov    0x1c(%esi),%eax
515efe:	85 c0                	test   %eax,%eax
515f00:	74 33                	je     0x515f35
515f02:	8b 00                	mov    (%eax),%eax
515f04:	3b 43 74             	cmp    0x74(%ebx),%eax
515f07:	7e 1c                	jle    0x515f25
515f09:	68 80 b2 6b 00       	push   $0x6bb280
515f0e:	ff 75 f8             	push   -0x8(%ebp)
515f11:	e8 4a d3 00 00       	call   0x523260
515f16:	83 c4 08             	add    $0x8,%esp
515f19:	b8 02 00 00 00       	mov    $0x2,%eax
515f1e:	5f                   	pop    %edi
515f1f:	5e                   	pop    %esi
515f20:	5b                   	pop    %ebx
515f21:	8b e5                	mov    %ebp,%esp
515f23:	5d                   	pop    %ebp
515f24:	c3                   	ret
515f25:	f7 45 d8 04 00 20 00 	testl  $0x200004,-0x28(%ebp)
515f2c:	74 07                	je     0x515f35
515f2e:	81 4e 04 00 00 04 00 	orl    $0x40000,0x4(%esi)
515f35:	5f                   	pop    %edi
515f36:	5e                   	pop    %esi
515f37:	33 c0                	xor    %eax,%eax
515f39:	5b                   	pop    %ebx
515f3a:	8b e5                	mov    %ebp,%esp
515f3c:	5d                   	pop    %ebp
515f3d:	c3                   	ret
515f3e:	cc                   	int3
515f3f:	cc                   	int3
515f40:	55                   	push   %ebp
515f41:	8b ec                	mov    %esp,%ebp
515f43:	83 ec 54             	sub    $0x54,%esp
515f46:	a1 d4 89 72 00       	mov    0x7289d4,%eax
515f4b:	33 c5                	xor    %ebp,%eax
515f4d:	89 45 fc             	mov    %eax,-0x4(%ebp)
515f50:	8b 55 1c             	mov    0x1c(%ebp),%edx
515f53:	8b 4d 18             	mov    0x18(%ebp),%ecx
515f56:	8b 45 14             	mov    0x14(%ebp),%eax
515f59:	89 55 d0             	mov    %edx,-0x30(%ebp)
515f5c:	0f b6 12             	movzbl (%edx),%edx
515f5f:	89 55 c0             	mov    %edx,-0x40(%ebp)
515f62:	8b 55 d0             	mov    -0x30(%ebp),%edx
515f65:	89 45 e4             	mov    %eax,-0x1c(%ebp)
515f68:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
515f6b:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
515f72:	8b 52 04             	mov    0x4(%edx),%edx
515f75:	89 55 e0             	mov    %edx,-0x20(%ebp)
515f78:	53                   	push   %ebx
515f79:	8b 5d 08             	mov    0x8(%ebp),%ebx
515f7c:	89 5d b8             	mov    %ebx,-0x48(%ebp)
515f7f:	56                   	push   %esi
515f80:	57                   	push   %edi
515f81:	8b 7d 0c             	mov    0xc(%ebp),%edi
515f84:	8b 73 08             	mov    0x8(%ebx),%esi
515f87:	89 7d d4             	mov    %edi,-0x2c(%ebp)
515f8a:	89 75 ac             	mov    %esi,-0x54(%ebp)
515f8d:	85 c9                	test   %ecx,%ecx
515f8f:	74 06                	je     0x515f97
515f91:	0f b6 49 01          	movzbl 0x1(%ecx),%ecx
515f95:	eb 02                	jmp    0x515f99
515f97:	33 c9                	xor    %ecx,%ecx
515f99:	89 4d dc             	mov    %ecx,-0x24(%ebp)
515f9c:	85 c0                	test   %eax,%eax
515f9e:	74 0c                	je     0x515fac
515fa0:	83 38 00             	cmpl   $0x0,(%eax)
515fa3:	75 1a                	jne    0x515fbf
515fa5:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
515fac:	85 c9                	test   %ecx,%ecx
515fae:	75 0f                	jne    0x515fbf
515fb0:	ff 75 20             	push   0x20(%ebp)
515fb3:	ff 77 0c             	push   0xc(%edi)
515fb6:	56                   	push   %esi
515fb7:	e8 14 42 fe ff       	call   0x4fa1d0
515fbc:	83 c4 0c             	add    $0xc,%esp
515fbf:	8b 47 1c             	mov    0x1c(%edi),%eax
515fc2:	8b 55 d0             	mov    -0x30(%ebp),%edx
515fc5:	8b 38                	mov    (%eax),%edi
515fc7:	8b 42 08             	mov    0x8(%edx),%eax
515fca:	89 7d cc             	mov    %edi,-0x34(%ebp)
515fcd:	85 c0                	test   %eax,%eax
515fcf:	75 2a                	jne    0x515ffb
515fd1:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
515fd4:	85 c9                	test   %ecx,%ecx
515fd6:	74 17                	je     0x515fef
515fd8:	f6 41 20 01          	testb  $0x1,0x20(%ecx)
515fdc:	8b 01                	mov    (%ecx),%eax
515fde:	8b 10                	mov    (%eax),%edx
515fe0:	89 55 d8             	mov    %edx,-0x28(%ebp)
515fe3:	75 04                	jne    0x515fe9
515fe5:	42                   	inc    %edx
515fe6:	89 55 d8             	mov    %edx,-0x28(%ebp)
515fe9:	01 53 2c             	add    %edx,0x2c(%ebx)
515fec:	8b 55 d0             	mov    -0x30(%ebp),%edx
515fef:	8b 43 2c             	mov    0x2c(%ebx),%eax
515ff2:	40                   	inc    %eax
515ff3:	89 42 08             	mov    %eax,0x8(%edx)
515ff6:	01 7b 2c             	add    %edi,0x2c(%ebx)
515ff9:	eb 12                	jmp    0x51600d
515ffb:	8b 4b 2c             	mov    0x2c(%ebx),%ecx
515ffe:	03 c7                	add    %edi,%eax
516000:	3b c1                	cmp    %ecx,%eax
516002:	7e 06                	jle    0x51600a
516004:	8d 04 39             	lea    (%ecx,%edi,1),%eax
516007:	89 43 2c             	mov    %eax,0x2c(%ebx)
51600a:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
51600d:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
516011:	89 7a 0c             	mov    %edi,0xc(%edx)
516014:	8b 52 08             	mov    0x8(%edx),%edx
516017:	89 55 f0             	mov    %edx,-0x10(%ebp)
51601a:	89 55 bc             	mov    %edx,-0x44(%ebp)
51601d:	7c 6c                	jl     0x51608b
51601f:	85 ff                	test   %edi,%edi
516021:	0f 8e 7e 01 00 00    	jle    0x5161a5
516027:	33 db                	xor    %ebx,%ebx
516029:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
516030:	8b 4e 6c             	mov    0x6c(%esi),%ecx
516033:	39 4e 70             	cmp    %ecx,0x70(%esi)
516036:	7f 18                	jg     0x516050
516038:	8d 04 13             	lea    (%ebx,%edx,1),%eax
51603b:	50                   	push   %eax
51603c:	53                   	push   %ebx
51603d:	ff 75 10             	push   0x10(%ebp)
516040:	6a 59                	push   $0x59
516042:	56                   	push   %esi
516043:	e8 b8 04 ff ff       	call   0x506500
516048:	8b 55 f0             	mov    -0x10(%ebp),%edx
51604b:	83 c4 14             	add    $0x14,%esp
51604e:	eb 2e                	jmp    0x51607e
516050:	8d 41 01             	lea    0x1(%ecx),%eax
516053:	89 46 6c             	mov    %eax,0x6c(%esi)
516056:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
516059:	8b 46 68             	mov    0x68(%esi),%eax
51605c:	c7 04 88 59 00 00 00 	movl   $0x59,(%eax,%ecx,4)
516063:	89 5c 88 08          	mov    %ebx,0x8(%eax,%ecx,4)
516067:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
51606e:	00
51606f:	8d 0c 88             	lea    (%eax,%ecx,4),%ecx
516072:	8b 45 10             	mov    0x10(%ebp),%eax
516075:	89 41 04             	mov    %eax,0x4(%ecx)
516078:	8d 04 13             	lea    (%ebx,%edx,1),%eax
51607b:	89 41 0c             	mov    %eax,0xc(%ecx)
51607e:	43                   	inc    %ebx
51607f:	3b df                	cmp    %edi,%ebx
516081:	7c ad                	jl     0x516030
516083:	8b 5d b8             	mov    -0x48(%ebp),%ebx
516086:	e9 1a 01 00 00       	jmp    0x5161a5
51608b:	8b 45 c0             	mov    -0x40(%ebp),%eax
51608e:	83 f8 03             	cmp    $0x3,%eax
516091:	0f 84 0e 01 00 00    	je     0x5161a5