57a901:	55                   	push   %ebp
57a902:	e8 79 9d f3 ff       	call   0x4b4680
57a907:	83 c4 08             	add    $0x8,%esp
57a90a:	85 c0                	test   %eax,%eax
57a90c:	0f 84 c5 00 00 00    	je     0x57a9d7
57a912:	ff 74 24 10          	push   0x10(%esp)
57a916:	55                   	push   %ebp
57a917:	57                   	push   %edi
57a918:	ff 74 24 6c          	push   0x6c(%esp)
57a91c:	6a 00                	push   $0x0
57a91e:	e8 7d 5a ff ff       	call   0x5703a0
57a923:	83 c4 14             	add    $0x14,%esp
57a926:	85 c0                	test   %eax,%eax
57a928:	0f 84 a9 00 00 00    	je     0x57a9d7
57a92e:	e8 6d 8c f3 ff       	call   0x4b35a0
57a933:	50                   	push   %eax
57a934:	ff 74 24 64          	push   0x64(%esp)
57a938:	55                   	push   %ebp
57a939:	e8 22 d8 f5 ff       	call   0x4d8160
57a93e:	83 c4 0c             	add    $0xc,%esp
57a941:	85 c0                	test   %eax,%eax
57a943:	0f 84 8e 00 00 00    	je     0x57a9d7
57a949:	55                   	push   %ebp
57a94a:	57                   	push   %edi
57a94b:	8b 7c 24 28          	mov    0x28(%esp),%edi
57a94f:	57                   	push   %edi
57a950:	e8 0b d8 f5 ff       	call   0x4d8160
57a955:	83 c4 0c             	add    $0xc,%esp
57a958:	85 c0                	test   %eax,%eax
57a95a:	74 7b                	je     0x57a9d7
57a95c:	ff 74 24 14          	push   0x14(%esp)
57a960:	57                   	push   %edi
57a961:	e8 5a 84 f3 ff       	call   0x4b2dc0
57a966:	83 c4 08             	add    $0x8,%esp
57a969:	85 c0                	test   %eax,%eax
57a96b:	78 23                	js     0x57a990
57a96d:	8b 7c 24 24          	mov    0x24(%esp),%edi
57a971:	57                   	push   %edi
57a972:	6a 01                	push   $0x1
57a974:	ff 74 24 18          	push   0x18(%esp)
57a978:	6a 32                	push   $0x32
57a97a:	ff 74 24 30          	push   0x30(%esp)
57a97e:	e8 5d 18 01 00       	call   0x58c1e0
57a983:	83 c4 14             	add    $0x14,%esp
57a986:	85 c0                	test   %eax,%eax
57a988:	0f 8f bb 00 00 00    	jg     0x57aa49
57a98e:	75 47                	jne    0x57a9d7
57a990:	8b 7c 24 4c          	mov    0x4c(%esp),%edi
57a994:	8b 84 24 e0 00 00 00 	mov    0xe0(%esp),%eax
57a99b:	47                   	inc    %edi
57a99c:	c1 e0 02             	shl    $0x2,%eax
57a99f:	89 7c 24 4c          	mov    %edi,0x4c(%esp)
57a9a3:	3b f8                	cmp    %eax,%edi
57a9a5:	0f 8c 2d fe ff ff    	jl     0x57a7d8
57a9ab:	8b 74 24 3c          	mov    0x3c(%esp),%esi
57a9af:	85 f6                	test   %esi,%esi
57a9b1:	0f 84 c9 fc ff ff    	je     0x57a680
57a9b7:	68 69 02 00 00       	push   $0x269
57a9bc:	68 80 da 6b 00       	push   $0x6bda80
57a9c1:	6a 70                	push   $0x70
57a9c3:	6a 7e                	push   $0x7e
57a9c5:	6a 0a                	push   $0xa
57a9c7:	c7 44 24 4c 00 00 00 	movl   $0x0,0x4c(%esp)
57a9ce:	00
57a9cf:	e8 cc 6a f2 ff       	call   0x4a14a0
57a9d4:	83 c4 14             	add    $0x14,%esp
57a9d7:	85 db                	test   %ebx,%ebx
57a9d9:	74 09                	je     0x57a9e4
57a9db:	53                   	push   %ebx
57a9dc:	e8 4f 57 f2 ff       	call   0x4a0130
57a9e1:	83 c4 04             	add    $0x4,%esp
57a9e4:	8b 44 24 34          	mov    0x34(%esp),%eax
57a9e8:	39 44 24 58          	cmp    %eax,0x58(%esp)
57a9ec:	74 09                	je     0x57a9f7
57a9ee:	50                   	push   %eax
57a9ef:	e8 3c 57 f2 ff       	call   0x4a0130
57a9f4:	83 c4 04             	add    $0x4,%esp
57a9f7:	8b 5c 24 10          	mov    0x10(%esp),%ebx
57a9fb:	85 db                	test   %ebx,%ebx
57a9fd:	74 0f                	je     0x57aa0e
57a9ff:	53                   	push   %ebx
57aa00:	e8 4b d3 f5 ff       	call   0x4d7d50
57aa05:	53                   	push   %ebx
57aa06:	e8 85 d3 f5 ff       	call   0x4d7d90
57aa0b:	83 c4 08             	add    $0x8,%esp
57aa0e:	8b 44 24 40          	mov    0x40(%esp),%eax
57aa12:	5f                   	pop    %edi
57aa13:	5e                   	pop    %esi
57aa14:	5d                   	pop    %ebp
57aa15:	5b                   	pop    %ebx
57aa16:	85 c0                	test   %eax,%eax
57aa18:	74 09                	je     0x57aa23
57aa1a:	50                   	push   %eax
57aa1b:	e8 20 5f ff ff       	call   0x570940
57aa20:	83 c4 04             	add    $0x4,%esp
57aa23:	8d 44 24 6c          	lea    0x6c(%esp),%eax
57aa27:	50                   	push   %eax
57aa28:	e8 33 6a f3 ff       	call   0x4b1460
57aa2d:	8b 8c 24 c8 00 00 00 	mov    0xc8(%esp),%ecx
57aa34:	83 c4 04             	add    $0x4,%esp
57aa37:	8b 44 24 28          	mov    0x28(%esp),%eax
57aa3b:	33 cc                	xor    %esp,%ecx
57aa3d:	e8 98 6a 06 00       	call   0x5e14da
57aa42:	81 c4 c8 00 00 00    	add    $0xc8,%esp
57aa48:	c3                   	ret
57aa49:	6a 01                	push   $0x1
57aa4b:	6a 02                	push   $0x2
57aa4d:	57                   	push   %edi
57aa4e:	e8 bd 14 01 00       	call   0x58bf10
57aa53:	83 c4 0c             	add    $0xc,%esp
57aa56:	85 c0                	test   %eax,%eax
57aa58:	0f 84 79 ff ff ff    	je     0x57a9d7
57aa5e:	8b 7c 24 4c          	mov    0x4c(%esp),%edi
57aa62:	8b 74 24 2c          	mov    0x2c(%esp),%esi
57aa66:	e8 35 8b f3 ff       	call   0x4b35a0
57aa6b:	50                   	push   %eax
57aa6c:	ff 74 24 24          	push   0x24(%esp)
57aa70:	ff 74 24 1c          	push   0x1c(%esp)
57aa74:	e8 e7 d6 f5 ff       	call   0x4d8160
57aa79:	83 c4 0c             	add    $0xc,%esp
57aa7c:	85 c0                	test   %eax,%eax
57aa7e:	0f 84 53 ff ff ff    	je     0x57a9d7
57aa84:	ff 74 24 10          	push   0x10(%esp)
57aa88:	ff 74 24 2c          	push   0x2c(%esp)
57aa8c:	ff 74 24 1c          	push   0x1c(%esp)
57aa90:	6a 00                	push   $0x0
57aa92:	55                   	push   %ebp
57aa93:	e8 08 59 ff ff       	call   0x5703a0
57aa98:	83 c4 14             	add    $0x14,%esp
57aa9b:	85 c0                	test   %eax,%eax
57aa9d:	0f 84 34 ff ff ff    	je     0x57a9d7
57aaa3:	83 bc 24 f4 00 00 00 	cmpl   $0x0,0xf4(%esp)
57aaaa:	00
57aaab:	7d 18                	jge    0x57aac5
57aaad:	6a 02                	push   $0x2
57aaaf:	ff 74 24 18          	push   0x18(%esp)
57aab3:	e8 38 8a f3 ff       	call   0x4b34f0
57aab8:	83 c4 08             	add    $0x8,%esp
57aabb:	85 c0                	test   %eax,%eax
57aabd:	0f 84 14 ff ff ff    	je     0x57a9d7
57aac3:	eb 09                	jmp    0x57aace
57aac5:	b8 01 00 00 00       	mov    $0x1,%eax
57aaca:	89 44 24 30          	mov    %eax,0x30(%esp)
57aace:	ff 74 24 10          	push   0x10(%esp)
57aad2:	ff 74 24 24          	push   0x24(%esp)
57aad6:	ff 74 24 48          	push   0x48(%esp)
57aada:	e8 01 5f ff ff       	call   0x5709e0
57aadf:	83 c4 0c             	add    $0xc,%esp
57aae2:	85 c0                	test   %eax,%eax
57aae4:	0f 84 ed fe ff ff    	je     0x57a9d7
57aaea:	8b 84 24 f4 00 00 00 	mov    0xf4(%esp),%eax
57aaf1:	8b 4c 24 30          	mov    0x30(%esp),%ecx
57aaf5:	85 c0                	test   %eax,%eax
57aaf7:	0f 88 d8 00 00 00    	js     0x57abd5
57aafd:	88 84 24 94 00 00 00 	mov    %al,0x94(%esp)
57ab04:	8b c1                	mov    %ecx,%eax
57ab06:	c1 e8 08             	shr    $0x8,%eax
57ab09:	6a 00                	push   $0x0
57ab0b:	ff 74 24 20          	push   0x20(%esp)
57ab0f:	88 84 24 9d 00 00 00 	mov    %al,0x9d(%esp)
57ab16:	8d 84 24 84 00 00 00 	lea    0x84(%esp),%eax
57ab1d:	50                   	push   %eax
57ab1e:	88 8c 24 a2 00 00 00 	mov    %cl,0xa2(%esp)
57ab25:	e8 76 67 f3 ff       	call   0x4b12a0
57ab2a:	83 c4 0c             	add    $0xc,%esp
57ab2d:	85 c0                	test   %eax,%eax
57ab2f:	0f 84 a2 fe ff ff    	je     0x57a9d7
57ab35:	ff 74 24 18          	push   0x18(%esp)
57ab39:	8d 84 24 80 00 00 00 	lea    0x80(%esp),%eax
57ab40:	ff 74 24 38          	push   0x38(%esp)
57ab44:	50                   	push   %eax
57ab45:	e8 06 69 f3 ff       	call   0x4b1450
57ab4a:	83 c4 0c             	add    $0xc,%esp
57ab4d:	85 c0                	test   %eax,%eax
57ab4f:	0f 84 82 fe ff ff    	je     0x57a9d7
57ab55:	6a 04                	push   $0x4
57ab57:	8d 84 24 80 00 00 00 	lea    0x80(%esp),%eax
57ab5e:	68 7c da 6b 00       	push   $0x6bda7c
57ab63:	50                   	push   %eax
57ab64:	e8 e7 68 f3 ff       	call   0x4b1450
57ab69:	83 c4 0c             	add    $0xc,%esp
57ab6c:	85 c0                	test   %eax,%eax
57ab6e:	0f 84 63 fe ff ff    	je     0x57a9d7
57ab74:	6a 03                	push   $0x3
57ab76:	8d 84 24 98 00 00 00 	lea    0x98(%esp),%eax
57ab7d:	50                   	push   %eax
57ab7e:	8d 84 24 84 00 00 00 	lea    0x84(%esp),%eax
57ab85:	50                   	push   %eax
57ab86:	e8 c5 68 f3 ff       	call   0x4b1450
57ab8b:	83 c4 0c             	add    $0xc,%esp
57ab8e:	85 c0                	test   %eax,%eax
57ab90:	0f 84 41 fe ff ff    	je     0x57a9d7
57ab96:	6a 00                	push   $0x0
57ab98:	8d 84 24 98 00 00 00 	lea    0x98(%esp),%eax
57ab9f:	50                   	push   %eax
57aba0:	8d 84 24 84 00 00 00 	lea    0x84(%esp),%eax
57aba7:	50                   	push   %eax
57aba8:	e8 73 66 f3 ff       	call   0x4b1220
57abad:	83 c4 0c             	add    $0xc,%esp
57abb0:	85 c0                	test   %eax,%eax
57abb2:	0f 84 1f fe ff ff    	je     0x57a9d7
57abb8:	ff 74 24 14          	push   0x14(%esp)
57abbc:	8d 84 24 98 00 00 00 	lea    0x98(%esp),%eax
57abc3:	56                   	push   %esi
57abc4:	50                   	push   %eax
57abc5:	e8 46 80 f3 ff       	call   0x4b2c10
57abca:	83 c4 0c             	add    $0xc,%esp
57abcd:	85 c0                	test   %eax,%eax
57abcf:	0f 84 02 fe ff ff    	je     0x57a9d7
57abd5:	ff 74 24 40          	push   0x40(%esp)
57abd9:	ff 74 24 14          	push   0x14(%esp)
57abdd:	ff 74 24 28          	push   0x28(%esp)
57abe1:	55                   	push   %ebp
57abe2:	ff 74 24 24          	push   0x24(%esp)
57abe6:	ff 74 24 68          	push   0x68(%esp)
57abea:	e8 21 42 ff ff       	call   0x56ee10
57abef:	83 c4 18             	add    $0x18,%esp
57abf2:	85 c0                	test   %eax,%eax
57abf4:	0f 84 dd fd ff ff    	je     0x57a9d7
57abfa:	8b 4c 24 54          	mov    0x54(%esp),%ecx
57abfe:	83 79 04 01          	cmpl   $0x1,0x4(%ecx)
57ac02:	75 59                	jne    0x57ac5d
57ac04:	8b 01                	mov    (%ecx),%eax
57ac06:	83 38 01             	cmpl   $0x1,(%eax)
57ac09:	75 52                	jne    0x57ac5d
57ac0b:	83 79 0c 00          	cmpl   $0x0,0xc(%ecx)
57ac0f:	75 4c                	jne    0x57ac5d
57ac11:	8b 84 24 f4 00 00 00 	mov    0xf4(%esp),%eax
57ac18:	85 c0                	test   %eax,%eax
57ac1a:	79 23                	jns    0x57ac3f
57ac1c:	e8 7f 89 f3 ff       	call   0x4b35a0
57ac21:	50                   	push   %eax
57ac22:	8b 44 24 18          	mov    0x18(%esp),%eax
57ac26:	50                   	push   %eax
57ac27:	50                   	push   %eax
57ac28:	e8 a3 d4 f5 ff       	call   0x4d80d0
57ac2d:	83 c4 0c             	add    $0xc,%esp
57ac30:	85 c0                	test   %eax,%eax
57ac32:	0f 84 9f fd ff ff    	je     0x57a9d7
57ac38:	8b 84 24 f4 00 00 00 	mov    0xf4(%esp),%eax
57ac3f:	8b 4c 24 30          	mov    0x30(%esp),%ecx
57ac43:	41                   	inc    %ecx
57ac44:	89 4c 24 30          	mov    %ecx,0x30(%esp)
57ac48:	85 c0                	test   %eax,%eax
57ac4a:	78 89                	js     0x57abd5
57ac4c:	81 f9 ff ff 00 00    	cmp    $0xffff,%ecx
57ac52:	0f 86 9d fe ff ff    	jbe    0x57aaf5
57ac58:	e9 7a fd ff ff       	jmp    0x57a9d7
57ac5d:	6a 01                	push   $0x1
57ac5f:	6a 03                	push   $0x3
57ac61:	ff 74 24 2c          	push   0x2c(%esp)
57ac65:	e8 a6 12 01 00       	call   0x58bf10
57ac6a:	83 c4 0c             	add    $0xc,%esp
57ac6d:	85 c0                	test   %eax,%eax
57ac6f:	0f 84 62 fd ff ff    	je     0x57a9d7
57ac75:	c7 44 24 38 01 00 00 	movl   $0x1,0x38(%esp)
57ac7c:	00
57ac7d:	0f 1f 00             	nopl   (%eax)
57ac80:	8b 74 24 50          	mov    0x50(%esp),%esi
57ac84:	8b 6c 24 20          	mov    0x20(%esp),%ebp
57ac88:	8b 46 0c             	mov    0xc(%esi),%eax
57ac8b:	3b e8                	cmp    %eax,%ebp
57ac8d:	74 19                	je     0x57aca8
57ac8f:	85 c0                	test   %eax,%eax
57ac91:	74 09                	je     0x57ac9c
57ac93:	50                   	push   %eax
57ac94:	e8 47 85 f3 ff       	call   0x4b31e0
57ac99:	83 c4 04             	add    $0x4,%esp
57ac9c:	55                   	push   %ebp
57ac9d:	e8 fe 84 f3 ff       	call   0x4b31a0
57aca2:	83 c4 04             	add    $0x4,%esp
57aca5:	89 46 0c             	mov    %eax,0xc(%esi)
57aca8:	8b 46 10             	mov    0x10(%esi),%eax
57acab:	8b 6c 24 28          	mov    0x28(%esp),%ebp
57acaf:	3b e8                	cmp    %eax,%ebp
57acb1:	74 19                	je     0x57accc
57acb3:	85 c0                	test   %eax,%eax
57acb5:	74 09                	je     0x57acc0
57acb7:	50                   	push   %eax
57acb8:	e8 23 85 f3 ff       	call   0x4b31e0
57acbd:	83 c4 04             	add    $0x4,%esp
57acc0:	55                   	push   %ebp
57acc1:	e8 da 84 f3 ff       	call   0x4b31a0
57acc6:	83 c4 04             	add    $0x4,%esp
57acc9:	89 46 10             	mov    %eax,0x10(%esi)
57accc:	8b 46 14             	mov    0x14(%esi),%eax
57accf:	85 c0                	test   %eax,%eax
57acd1:	74 09                	je     0x57acdc
57acd3:	50                   	push   %eax
57acd4:	e8 07 85 f3 ff       	call   0x4b31e0
57acd9:	83 c4 04             	add    $0x4,%esp
57acdc:	ff 74 24 54          	push   0x54(%esp)
57ace0:	e8 bb 84 f3 ff       	call   0x4b31a0
57ace5:	83 c4 04             	add    $0x4,%esp
57ace8:	89 46 14             	mov    %eax,0x14(%esi)
57aceb:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
57acef:	74 2b                	je     0x57ad1c
57acf1:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
57acf5:	74 25                	je     0x57ad1c
57acf7:	85 c0                	test   %eax,%eax
57acf9:	74 21                	je     0x57ad1c
57acfb:	8b 44 24 74          	mov    0x74(%esp),%eax
57acff:	85 c0                	test   %eax,%eax
57ad01:	74 02                	je     0x57ad05
57ad03:	89 38                	mov    %edi,(%eax)
57ad05:	8b 4c 24 78          	mov    0x78(%esp),%ecx
57ad09:	85 c9                	test   %ecx,%ecx
57ad0b:	0f 84 c6 fc ff ff    	je     0x57a9d7
57ad11:	8b 44 24 30          	mov    0x30(%esp),%eax
57ad15:	89 01                	mov    %eax,(%ecx)
57ad17:	e9 bb fc ff ff       	jmp    0x57a9d7
57ad1c:	c7 44 24 38 ff ff ff 	movl   $0xffffffff,0x38(%esp)
57ad23:	ff
57ad24:	e9 ae fc ff ff       	jmp    0x57a9d7
57ad29:	cc                   	int3
57ad2a:	cc                   	int3
57ad2b:	cc                   	int3
57ad2c:	cc                   	int3
57ad2d:	cc                   	int3
57ad2e:	cc                   	int3
57ad2f:	cc                   	int3
57ad30:	83 7c 24 04 00       	cmpl   $0x0,0x4(%esp)
57ad35:	75 48                	jne    0x57ad7f
57ad37:	6a 49                	push   $0x49
57ad39:	68 00 dd 6b 00       	push   $0x6bdd00
57ad3e:	6a 08                	push   $0x8
57ad40:	e8 6b 54 f2 ff       	call   0x4a01b0
57ad45:	8b c8                	mov    %eax,%ecx
57ad47:	83 c4 0c             	add    $0xc,%esp
57ad4a:	85 c9                	test   %ecx,%ecx
57ad4c:	75 18                	jne    0x57ad66
57ad4e:	6a 4b                	push   $0x4b
57ad50:	68 00 dd 6b 00       	push   $0x6bdd00
57ad55:	6a 41                	push   $0x41
57ad57:	6a 72                	push   $0x72
57ad59:	6a 0a                	push   $0xa
57ad5b:	e8 40 67 f2 ff       	call   0x4a14a0
57ad60:	83 c4 14             	add    $0x14,%esp
57ad63:	33 c0                	xor    %eax,%eax
57ad65:	c3                   	ret
57ad66:	8b 44 24 08          	mov    0x8(%esp),%eax
57ad6a:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
57ad70:	c7 41 04 00 00 00 00 	movl   $0x0,0x4(%ecx)
57ad77:	89 08                	mov    %ecx,(%eax)
57ad79:	b8 02 00 00 00       	mov    $0x2,%eax
57ad7e:	c3                   	ret
57ad7f:	b8 01 00 00 00       	mov    $0x1,%eax
57ad84:	c3                   	ret
57ad85:	cc                   	int3
57ad86:	cc                   	int3