4237c5:	83 7d a0 00          	cmpl   $0x0,-0x60(%ebp)
4237c9:	76 2c                	jbe    0x4237f7
4237cb:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4237ce:	8d 55 84             	lea    -0x7c(%ebp),%edx
4237d1:	6a 01                	push   $0x1
4237d3:	57                   	push   %edi
4237d4:	ff 75 28             	push   0x28(%ebp)
4237d7:	ff 75 24             	push   0x24(%ebp)
4237da:	e8 2a 04 00 00       	call   0x423c09
4237df:	83 c4 10             	add    $0x10,%esp
4237e2:	47                   	inc    %edi
4237e3:	4e                   	dec    %esi
4237e4:	89 b5 6c ff ff ff    	mov    %esi,-0x94(%ebp)
4237ea:	8b 08                	mov    (%eax),%ecx
4237ec:	89 4d 24             	mov    %ecx,0x24(%ebp)
4237ef:	8b 40 04             	mov    0x4(%eax),%eax
4237f2:	89 45 28             	mov    %eax,0x28(%ebp)
4237f5:	eb 06                	jmp    0x4237fd
4237f7:	8b 45 28             	mov    0x28(%ebp),%eax
4237fa:	8b 4d 24             	mov    0x24(%ebp),%ecx
4237fd:	53                   	push   %ebx
4237fe:	ff b5 70 ff ff ff    	push   -0x90(%ebp)
423804:	50                   	push   %eax
423805:	51                   	push   %ecx
423806:	eb 9d                	jmp    0x4237a5
423808:	8b 45 28             	mov    0x28(%ebp),%eax
42380b:	89 45 a0             	mov    %eax,-0x60(%ebp)
42380e:	8b 45 24             	mov    0x24(%ebp),%eax
423811:	89 45 b0             	mov    %eax,-0x50(%ebp)
423814:	0f be 45 a4          	movsbl -0x5c(%ebp),%eax
423818:	56                   	push   %esi
423819:	50                   	push   %eax
42381a:	57                   	push   %edi
42381b:	e8 97 cd 06 00       	call   0x4905b7
423820:	83 c4 0c             	add    $0xc,%esp
423823:	85 c0                	test   %eax,%eax
423825:	0f 84 b2 00 00 00    	je     0x4238dd
42382b:	ff 75 a0             	push   -0x60(%ebp)
42382e:	8b 4d 98             	mov    -0x68(%ebp),%ecx
423831:	8d 55 9c             	lea    -0x64(%ebp),%edx
423834:	ff 75 b0             	push   -0x50(%ebp)
423837:	2b c7                	sub    %edi,%eax
423839:	ff 75 a8             	push   -0x58(%ebp)
42383c:	40                   	inc    %eax
42383d:	89 45 88             	mov    %eax,-0x78(%ebp)
423840:	48                   	dec    %eax
423841:	50                   	push   %eax
423842:	57                   	push   %edi
423843:	e8 34 03 00 00       	call   0x423b7c
423848:	83 c4 14             	add    $0x14,%esp
42384b:	8d 55 9c             	lea    -0x64(%ebp),%edx
42384e:	8b 08                	mov    (%eax),%ecx
423850:	ff 75 ac             	push   -0x54(%ebp)
423853:	89 4d 24             	mov    %ecx,0x24(%ebp)
423856:	ff 75 80             	push   -0x80(%ebp)
423859:	8b 40 04             	mov    0x4(%eax),%eax
42385c:	50                   	push   %eax
42385d:	51                   	push   %ecx
42385e:	89 45 28             	mov    %eax,0x28(%ebp)
423861:	e8 04 fa ff ff       	call   0x42326a
423866:	8b c8                	mov    %eax,%ecx
423868:	83 c4 10             	add    $0x10,%esp
42386b:	8b 01                	mov    (%ecx),%eax
42386d:	89 45 24             	mov    %eax,0x24(%ebp)
423870:	8b 41 04             	mov    0x4(%ecx),%eax
423873:	89 45 28             	mov    %eax,0x28(%ebp)
423876:	8b 45 90             	mov    -0x70(%ebp),%eax
423879:	8b 00                	mov    (%eax),%eax
42387b:	8b 70 04             	mov    0x4(%eax),%esi
42387e:	8b ce                	mov    %esi,%ecx
423880:	ff 15 2c 81 4a 00    	call   *0x4a812c
423886:	8b 4d 90             	mov    -0x70(%ebp),%ecx
423889:	ff d6                	call   *%esi
42388b:	0f b7 c8             	movzwl %ax,%ecx
42388e:	8b 45 24             	mov    0x24(%ebp),%eax
423891:	89 45 8c             	mov    %eax,-0x74(%ebp)
423894:	8b 45 28             	mov    0x28(%ebp),%eax
423897:	51                   	push   %ecx
423898:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
42389b:	89 45 90             	mov    %eax,-0x70(%ebp)
42389e:	e8 b1 03 00 00       	call   0x423c54
4238a3:	ff b5 64 ff ff ff    	push   -0x9c(%ebp)
4238a9:	8d 95 60 ff ff ff    	lea    -0xa0(%ebp),%edx
4238af:	ff 75 80             	push   -0x80(%ebp)
4238b2:	ff 75 90             	push   -0x70(%ebp)
4238b5:	ff 75 8c             	push   -0x74(%ebp)
4238b8:	e8 ad f9 ff ff       	call   0x42326a
4238bd:	8b b5 6c ff ff ff    	mov    -0x94(%ebp),%esi
4238c3:	83 c4 10             	add    $0x10,%esp
4238c6:	03 7d 88             	add    -0x78(%ebp),%edi
4238c9:	2b 75 88             	sub    -0x78(%ebp),%esi
4238cc:	8b 08                	mov    (%eax),%ecx
4238ce:	89 4d 24             	mov    %ecx,0x24(%ebp)
4238d1:	8b 40 04             	mov    0x4(%eax),%eax
4238d4:	89 4d b0             	mov    %ecx,-0x50(%ebp)
4238d7:	89 45 a0             	mov    %eax,-0x60(%ebp)
4238da:	89 45 28             	mov    %eax,0x28(%ebp)
4238dd:	56                   	push   %esi
4238de:	6a 65                	push   $0x65
4238e0:	57                   	push   %edi
4238e1:	e8 d1 cc 06 00       	call   0x4905b7
4238e6:	83 c4 0c             	add    $0xc,%esp
4238e9:	85 c0                	test   %eax,%eax
4238eb:	0f 84 98 00 00 00    	je     0x423989
4238f1:	ff 75 a0             	push   -0x60(%ebp)
4238f4:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4238f7:	8d 95 68 ff ff ff    	lea    -0x98(%ebp),%edx
4238fd:	ff 75 b0             	push   -0x50(%ebp)
423900:	2b c7                	sub    %edi,%eax
423902:	ff 75 a8             	push   -0x58(%ebp)
423905:	40                   	inc    %eax
423906:	89 45 88             	mov    %eax,-0x78(%ebp)
423909:	48                   	dec    %eax
42390a:	50                   	push   %eax
42390b:	57                   	push   %edi
42390c:	e8 6b 02 00 00       	call   0x423b7c
423911:	83 c4 14             	add    $0x14,%esp
423914:	8d 95 78 ff ff ff    	lea    -0x88(%ebp),%edx
42391a:	8b 08                	mov    (%eax),%ecx
42391c:	ff b5 7c ff ff ff    	push   -0x84(%ebp)
423922:	89 4d 24             	mov    %ecx,0x24(%ebp)
423925:	ff 75 80             	push   -0x80(%ebp)
423928:	8b 40 04             	mov    0x4(%eax),%eax
42392b:	50                   	push   %eax
42392c:	51                   	push   %ecx
42392d:	89 45 28             	mov    %eax,0x28(%ebp)
423930:	e8 35 f9 ff ff       	call   0x42326a
423935:	83 c4 10             	add    $0x10,%esp
423938:	8b 08                	mov    (%eax),%ecx
42393a:	89 4d 24             	mov    %ecx,0x24(%ebp)
42393d:	8b 50 04             	mov    0x4(%eax),%edx
423940:	8b 85 74 ff ff ff    	mov    -0x8c(%ebp),%eax
423946:	83 a5 7c ff ff ff 00 	andl   $0x0,-0x84(%ebp)
42394d:	89 55 28             	mov    %edx,0x28(%ebp)
423950:	f6 40 10 04          	testb  $0x4,0x10(%eax)
423954:	b8 2c fc 40 00       	mov    $0x40fc2c,%eax
423959:	75 05                	jne    0x423960
42395b:	b8 30 fc 40 00       	mov    $0x40fc30,%eax
423960:	6a 01                	push   $0x1
423962:	50                   	push   %eax
423963:	52                   	push   %edx
423964:	51                   	push   %ecx
423965:	8b 4d 98             	mov    -0x68(%ebp),%ecx
423968:	8d 95 68 ff ff ff    	lea    -0x98(%ebp),%edx
42396e:	e8 96 02 00 00       	call   0x423c09
423973:	03 7d 88             	add    -0x78(%ebp),%edi
423976:	83 c4 10             	add    $0x10,%esp
423979:	2b 75 88             	sub    -0x78(%ebp),%esi
42397c:	8b 08                	mov    (%eax),%ecx
42397e:	89 4d 24             	mov    %ecx,0x24(%ebp)
423981:	8b 40 04             	mov    0x4(%eax),%eax
423984:	89 45 28             	mov    %eax,0x28(%ebp)
423987:	eb 06                	jmp    0x42398f
423989:	8b 4d b0             	mov    -0x50(%ebp),%ecx
42398c:	8b 45 a0             	mov    -0x60(%ebp),%eax
42398f:	50                   	push   %eax
423990:	51                   	push   %ecx
423991:	ff 75 a8             	push   -0x58(%ebp)
423994:	8b 4d 98             	mov    -0x68(%ebp),%ecx
423997:	8d 55 84             	lea    -0x7c(%ebp),%edx
42399a:	56                   	push   %esi
42399b:	57                   	push   %edi
42399c:	e8 db 01 00 00       	call   0x423b7c
4239a1:	83 c4 14             	add    $0x14,%esp
4239a4:	8d 55 84             	lea    -0x7c(%ebp),%edx
4239a7:	8b 08                	mov    (%eax),%ecx
4239a9:	ff b5 7c ff ff ff    	push   -0x84(%ebp)
4239af:	89 4d 24             	mov    %ecx,0x24(%ebp)
4239b2:	ff 75 80             	push   -0x80(%ebp)
4239b5:	8b 40 04             	mov    0x4(%eax),%eax
4239b8:	50                   	push   %eax
4239b9:	51                   	push   %ecx
4239ba:	89 45 28             	mov    %eax,0x28(%ebp)
4239bd:	e8 a8 f8 ff ff       	call   0x42326a
4239c2:	8b 95 74 ff ff ff    	mov    -0x8c(%ebp),%edx
4239c8:	53                   	push   %ebx
4239c9:	ff b5 70 ff ff ff    	push   -0x90(%ebp)
4239cf:	8b 08                	mov    (%eax),%ecx
4239d1:	89 4d 24             	mov    %ecx,0x24(%ebp)
4239d4:	8b 40 04             	mov    0x4(%eax),%eax
4239d7:	83 62 18 00          	andl   $0x0,0x18(%edx)
4239db:	8b 95 5c ff ff ff    	mov    -0xa4(%ebp),%edx
4239e1:	50                   	push   %eax
4239e2:	51                   	push   %ecx
4239e3:	89 45 28             	mov    %eax,0x28(%ebp)
4239e6:	e8 7f f8 ff ff       	call   0x42326a
4239eb:	83 c4 20             	add    $0x20,%esp
4239ee:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4239f1:	6a 00                	push   $0x0
4239f3:	6a 01                	push   $0x1
4239f5:	e8 bf 88 ff ff       	call   0x41c2b9
4239fa:	6a 00                	push   $0x0
4239fc:	6a 01                	push   $0x1
4239fe:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
423a01:	e8 b3 88 ff ff       	call   0x41c2b9
423a06:	8b 85 5c ff ff ff    	mov    -0xa4(%ebp),%eax
423a0c:	e8 a4 ca 06 00       	call   0x4904b5
423a11:	c3                   	ret
423a12:	8b ff                	mov    %edi,%edi
423a14:	55                   	push   %ebp
423a15:	8b ec                	mov    %esp,%ebp
423a17:	8b 4d 0c             	mov    0xc(%ebp),%ecx
423a1a:	56                   	push   %esi
423a1b:	8b f2                	mov    %edx,%esi
423a1d:	c6 06 25             	movb   $0x25,(%esi)
423a20:	8d 46 01             	lea    0x1(%esi),%eax
423a23:	f6 c1 20             	test   $0x20,%cl
423a26:	74 04                	je     0x423a2c
423a28:	c6 00 2b             	movb   $0x2b,(%eax)
423a2b:	40                   	inc    %eax
423a2c:	f6 c1 10             	test   $0x10,%cl
423a2f:	74 04                	je     0x423a35
423a31:	c6 00 23             	movb   $0x23,(%eax)
423a34:	40                   	inc    %eax
423a35:	8a 55 08             	mov    0x8(%ebp),%dl
423a38:	66 c7 00 2e 2a       	movw   $0x2a2e,(%eax)
423a3d:	83 c0 02             	add    $0x2,%eax
423a40:	84 d2                	test   %dl,%dl
423a42:	74 03                	je     0x423a47
423a44:	88 10                	mov    %dl,(%eax)
423a46:	40                   	inc    %eax
423a47:	81 e1 00 30 00 00    	and    $0x3000,%ecx
423a4d:	81 f9 00 20 00 00    	cmp    $0x2000,%ecx
423a53:	75 04                	jne    0x423a59
423a55:	b1 66                	mov    $0x66,%cl
423a57:	eb 10                	jmp    0x423a69
423a59:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
423a5f:	0f 95 c1             	setne  %cl
423a62:	8d 0c 4d 65 00 00 00 	lea    0x65(,%ecx,2),%ecx
423a69:	88 08                	mov    %cl,(%eax)
423a6b:	c6 40 01 00          	movb   $0x0,0x1(%eax)
423a6f:	8b c6                	mov    %esi,%eax
423a71:	5e                   	pop    %esi
423a72:	5d                   	pop    %ebp
423a73:	c3                   	ret
423a74:	cc                   	int3
423a75:	cc                   	int3
423a76:	cc                   	int3
423a77:	cc                   	int3
423a78:	cc                   	int3
423a79:	cc                   	int3
423a7a:	cc                   	int3
423a7b:	cc                   	int3
423a7c:	cc                   	int3
423a7d:	cc                   	int3
423a7e:	cc                   	int3
423a7f:	cc                   	int3
423a80:	8b ff                	mov    %edi,%edi
423a82:	55                   	push   %ebp
423a83:	8b ec                	mov    %esp,%ebp
423a85:	ff 71 14             	push   0x14(%ecx)
423a88:	8b 4d 08             	mov    0x8(%ebp),%ecx
423a8b:	e8 4b 65 ff ff       	call   0x419fdb
423a90:	8b 45 08             	mov    0x8(%ebp),%eax
423a93:	5d                   	pop    %ebp
423a94:	c2 04 00             	ret    $0x4
423a97:	cc                   	int3
423a98:	cc                   	int3
423a99:	cc                   	int3
423a9a:	cc                   	int3
423a9b:	cc                   	int3
423a9c:	cc                   	int3
423a9d:	cc                   	int3
423a9e:	cc                   	int3
423a9f:	cc                   	int3
423aa0:	8b ff                	mov    %edi,%edi
423aa2:	55                   	push   %ebp
423aa3:	8b ec                	mov    %esp,%ebp
423aa5:	ff 71 10             	push   0x10(%ecx)
423aa8:	8b 4d 08             	mov    0x8(%ebp),%ecx
423aab:	e8 2b 65 ff ff       	call   0x419fdb
423ab0:	8b 45 08             	mov    0x8(%ebp),%eax
423ab3:	5d                   	pop    %ebp
423ab4:	c2 04 00             	ret    $0x4
423ab7:	cc                   	int3
423ab8:	cc                   	int3
423ab9:	cc                   	int3
423aba:	cc                   	int3
423abb:	cc                   	int3
423abc:	cc                   	int3
423abd:	cc                   	int3
423abe:	cc                   	int3
423abf:	cc                   	int3
423ac0:	8b ff                	mov    %edi,%edi
423ac2:	55                   	push   %ebp
423ac3:	8b ec                	mov    %esp,%ebp
423ac5:	ff 71 08             	push   0x8(%ecx)
423ac8:	8b 4d 08             	mov    0x8(%ebp),%ecx
423acb:	e8 bc 83 ff ff       	call   0x41be8c
423ad0:	8b 45 08             	mov    0x8(%ebp),%eax
423ad3:	5d                   	pop    %ebp
423ad4:	c2 04 00             	ret    $0x4
423ad7:	cc                   	int3
423ad8:	cc                   	int3
423ad9:	cc                   	int3
423ada:	cc                   	int3
423adb:	cc                   	int3
423adc:	cc                   	int3
423add:	cc                   	int3
423ade:	cc                   	int3
423adf:	cc                   	int3
423ae0:	66 8b 41 0e          	mov    0xe(%ecx),%ax
423ae4:	c3                   	ret
423ae5:	cc                   	int3
423ae6:	cc                   	int3
423ae7:	cc                   	int3
423ae8:	cc                   	int3
423ae9:	cc                   	int3
423aea:	cc                   	int3
423aeb:	cc                   	int3
423aec:	cc                   	int3
423aed:	cc                   	int3
423aee:	cc                   	int3
423aef:	cc                   	int3
423af0:	66 8b 41 0c          	mov    0xc(%ecx),%ax
423af4:	c3                   	ret
423af5:	8b ff                	mov    %edi,%edi
423af7:	56                   	push   %esi
423af8:	8b f1                	mov    %ecx,%esi
423afa:	ff 76 08             	push   0x8(%esi)
423afd:	c7 06 a0 14 40 00    	movl   $0x4014a0,(%esi)
423b03:	e8 44 9f 06 00       	call   0x48da4c
423b08:	ff 76 10             	push   0x10(%esi)
423b0b:	e8 3c 9f 06 00       	call   0x48da4c
423b10:	ff 76 14             	push   0x14(%esi)
423b13:	e8 34 9f 06 00       	call   0x48da4c
423b18:	83 c4 0c             	add    $0xc,%esp
423b1b:	c7 06 7c 11 40 00    	movl   $0x40117c,(%esi)
423b21:	5e                   	pop    %esi
423b22:	c3                   	ret
423b23:	cc                   	int3
423b24:	cc                   	int3
423b25:	cc                   	int3
423b26:	cc                   	int3
423b27:	cc                   	int3
423b28:	cc                   	int3
423b29:	cc                   	int3
423b2a:	cc                   	int3
423b2b:	cc                   	int3
423b2c:	cc                   	int3
423b2d:	cc                   	int3
423b2e:	cc                   	int3
423b2f:	cc                   	int3
423b30:	8b ff                	mov    %edi,%edi
423b32:	55                   	push   %ebp
423b33:	8b ec                	mov    %esp,%ebp
423b35:	56                   	push   %esi
423b36:	8b f1                	mov    %ecx,%esi
423b38:	e8 b8 ff ff ff       	call   0x423af5
423b3d:	f6 45 08 01          	testb  $0x1,0x8(%ebp)