50373a:	8b 74 24 08          	mov    0x8(%esp),%esi
50373e:	8b 56 18             	mov    0x18(%esi),%edx
503741:	85 d2                	test   %edx,%edx
503743:	74 74                	je     0x5037b9
503745:	8b 46 0c             	mov    0xc(%esi),%eax
503748:	8b 08                	mov    (%eax),%ecx
50374a:	81 f9 0a 04 00 00    	cmp    $0x40a,%ecx
503750:	74 18                	je     0x50376a
503752:	81 f9 3f 04 00 00    	cmp    $0x43f,%ecx
503758:	74 10                	je     0x50376a
50375a:	33 c0                	xor    %eax,%eax
50375c:	81 f9 0b 04 00 00    	cmp    $0x40b,%ecx
503762:	0f 95 c0             	setne  %al
503765:	83 c0 38             	add    $0x38,%eax
503768:	eb 05                	jmp    0x50376f
50376a:	b8 20 00 00 00       	mov    $0x20,%eax
50376f:	68 49 01 00 00       	push   $0x149
503774:	68 2c a6 62 00       	push   $0x62a62c
503779:	50                   	push   %eax
50377a:	52                   	push   %edx
50377b:	e8 f0 e8 fd ff       	call   0x4e2070
503780:	8b 4c 24 24          	mov    0x24(%esp),%ecx
503784:	83 c4 10             	add    $0x10,%esp
503787:	89 01                	mov    %eax,(%ecx)
503789:	85 c0                	test   %eax,%eax
50378b:	74 2c                	je     0x5037b9
50378d:	8b 46 0c             	mov    0xc(%esi),%eax
503790:	8b 08                	mov    (%eax),%ecx
503792:	81 f9 0a 04 00 00    	cmp    $0x40a,%ecx
503798:	74 18                	je     0x5037b2
50379a:	81 f9 3f 04 00 00    	cmp    $0x43f,%ecx
5037a0:	74 10                	je     0x5037b2
5037a2:	33 c0                	xor    %eax,%eax
5037a4:	81 f9 0b 04 00 00    	cmp    $0x40b,%ecx
5037aa:	5e                   	pop    %esi
5037ab:	0f 95 c0             	setne  %al
5037ae:	83 c0 38             	add    $0x38,%eax
5037b1:	c3                   	ret
5037b2:	b8 20 00 00 00       	mov    $0x20,%eax
5037b7:	5e                   	pop    %esi
5037b8:	c3                   	ret
5037b9:	33 c0                	xor    %eax,%eax
5037bb:	5e                   	pop    %esi
5037bc:	c3                   	ret
5037bd:	83 7c 24 14 00       	cmpl   $0x0,0x14(%esp)
5037c2:	55                   	push   %ebp
5037c3:	8b 6c 24 0c          	mov    0xc(%esp),%ebp
5037c7:	57                   	push   %edi
5037c8:	8b 45 0c             	mov    0xc(%ebp),%eax
5037cb:	8b 30                	mov    (%eax),%esi
5037cd:	74 6f                	je     0x50383e
5037cf:	81 fe 0a 04 00 00    	cmp    $0x40a,%esi
5037d5:	74 18                	je     0x5037ef
5037d7:	81 fe 3f 04 00 00    	cmp    $0x43f,%esi
5037dd:	74 10                	je     0x5037ef
5037df:	33 c0                	xor    %eax,%eax
5037e1:	81 fe 0b 04 00 00    	cmp    $0x40b,%esi
5037e7:	0f 95 c0             	setne  %al
5037ea:	83 c0 38             	add    $0x38,%eax
5037ed:	eb 05                	jmp    0x5037f4
5037ef:	b8 20 00 00 00       	mov    $0x20,%eax
5037f4:	39 44 24 18          	cmp    %eax,0x18(%esp)
5037f8:	75 44                	jne    0x50383e
5037fa:	6a 46                	push   $0x46
5037fc:	68 2c a6 62 00       	push   $0x62a62c
503801:	6a 40                	push   $0x40
503803:	e8 38 d2 fd ff       	call   0x4e0a40
503808:	8b f8                	mov    %eax,%edi
50380a:	83 c4 0c             	add    $0xc,%esp
50380d:	85 ff                	test   %edi,%edi
50380f:	75 0b                	jne    0x50381c
503811:	6a 48                	push   $0x48
503813:	68 2c a6 62 00       	push   $0x62a62c
503818:	6a 41                	push   $0x41
50381a:	eb 2b                	jmp    0x503847
50381c:	ff 74 24 18          	push   0x18(%esp)
503820:	ff 74 24 20          	push   0x20(%esp)
503824:	57                   	push   %edi
503825:	e8 a6 f5 0c 00       	call   0x5d2dd0
50382a:	57                   	push   %edi
50382b:	56                   	push   %esi
50382c:	55                   	push   %ebp
50382d:	e8 ae d2 fe ff       	call   0x4f0ae0
503832:	83 c4 18             	add    $0x18,%esp
503835:	b8 01 00 00 00       	mov    $0x1,%eax
50383a:	5f                   	pop    %edi
50383b:	5d                   	pop    %ebp
50383c:	5e                   	pop    %esi
50383d:	c3                   	ret
50383e:	6a 41                	push   $0x41
503840:	68 2c a6 62 00       	push   $0x62a62c
503845:	6a 66                	push   $0x66
503847:	68 0a 01 00 00       	push   $0x10a
50384c:	6a 10                	push   $0x10
50384e:	e8 2d 57 fd ff       	call   0x4d8f80
503853:	83 c4 14             	add    $0x14,%esp
503856:	33 c0                	xor    %eax,%eax
503858:	5f                   	pop    %edi
503859:	5d                   	pop    %ebp
50385a:	5e                   	pop    %esi
50385b:	c3                   	ret
50385c:	cc                   	int3
50385d:	cc                   	int3
50385e:	cc                   	int3
50385f:	cc                   	int3
503860:	83 7c 24 08 03       	cmpl   $0x3,0x8(%esp)
503865:	74 06                	je     0x50386d
503867:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
50386c:	c3                   	ret
50386d:	8b 44 24 10          	mov    0x10(%esp),%eax
503871:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
503877:	b8 02 00 00 00       	mov    $0x2,%eax
50387c:	c3                   	ret
50387d:	cc                   	int3
50387e:	cc                   	int3
50387f:	cc                   	int3
503880:	8b 4c 24 04          	mov    0x4(%esp),%ecx
503884:	6a 01                	push   $0x1
503886:	ff 74 24 10          	push   0x10(%esp)
50388a:	ff 74 24 10          	push   0x10(%esp)
50388e:	8b 41 0c             	mov    0xc(%ecx),%eax
503891:	6a 00                	push   $0x0
503893:	ff 30                	push   (%eax)
503895:	51                   	push   %ecx
503896:	e8 b5 06 00 00       	call   0x503f50
50389b:	83 c4 18             	add    $0x18,%esp
50389e:	c3                   	ret
50389f:	cc                   	int3
5038a0:	83 7c 24 08 00       	cmpl   $0x0,0x8(%esp)
5038a5:	55                   	push   %ebp
5038a6:	8b 6c 24 08          	mov    0x8(%esp),%ebp
5038aa:	56                   	push   %esi
5038ab:	8b 45 0c             	mov    0xc(%ebp),%eax
5038ae:	8b 30                	mov    (%eax),%esi
5038b0:	0f 84 83 00 00 00    	je     0x503939
5038b6:	81 fe 0a 04 00 00    	cmp    $0x40a,%esi
5038bc:	74 18                	je     0x5038d6
5038be:	81 fe 3f 04 00 00    	cmp    $0x43f,%esi
5038c4:	74 10                	je     0x5038d6
5038c6:	33 c0                	xor    %eax,%eax
5038c8:	81 fe 0b 04 00 00    	cmp    $0x40b,%esi
5038ce:	0f 95 c0             	setne  %al
5038d1:	83 c0 38             	add    $0x38,%eax
5038d4:	eb 05                	jmp    0x5038db
5038d6:	b8 20 00 00 00       	mov    $0x20,%eax
5038db:	39 44 24 14          	cmp    %eax,0x14(%esp)
5038df:	75 58                	jne    0x503939
5038e1:	57                   	push   %edi
5038e2:	6a 46                	push   $0x46
5038e4:	68 2c a6 62 00       	push   $0x62a62c
5038e9:	6a 40                	push   $0x40
5038eb:	e8 50 d1 fd ff       	call   0x4e0a40
5038f0:	8b f8                	mov    %eax,%edi
5038f2:	83 c4 0c             	add    $0xc,%esp
5038f5:	85 ff                	test   %edi,%edi
5038f7:	75 1e                	jne    0x503917
5038f9:	6a 48                	push   $0x48
5038fb:	68 2c a6 62 00       	push   $0x62a62c
503900:	6a 41                	push   $0x41
503902:	68 0a 01 00 00       	push   $0x10a
503907:	6a 10                	push   $0x10
503909:	e8 72 56 fd ff       	call   0x4d8f80
50390e:	83 c4 14             	add    $0x14,%esp
503911:	5f                   	pop    %edi
503912:	5e                   	pop    %esi
503913:	33 c0                	xor    %eax,%eax
503915:	5d                   	pop    %ebp
503916:	c3                   	ret
503917:	ff 74 24 18          	push   0x18(%esp)
50391b:	ff 74 24 18          	push   0x18(%esp)
50391f:	57                   	push   %edi
503920:	e8 ab f4 0c 00       	call   0x5d2dd0
503925:	57                   	push   %edi
503926:	56                   	push   %esi
503927:	55                   	push   %ebp
503928:	e8 b3 d1 fe ff       	call   0x4f0ae0
50392d:	83 c4 18             	add    $0x18,%esp
503930:	5f                   	pop    %edi
503931:	5e                   	pop    %esi
503932:	b8 01 00 00 00       	mov    $0x1,%eax
503937:	5d                   	pop    %ebp
503938:	c3                   	ret
503939:	6a 41                	push   $0x41
50393b:	68 2c a6 62 00       	push   $0x62a62c
503940:	6a 66                	push   $0x66
503942:	68 0a 01 00 00       	push   $0x10a
503947:	6a 10                	push   $0x10
503949:	e8 32 56 fd ff       	call   0x4d8f80
50394e:	83 c4 14             	add    $0x14,%esp
503951:	5e                   	pop    %esi
503952:	33 c0                	xor    %eax,%eax
503954:	5d                   	pop    %ebp
503955:	c3                   	ret
503956:	cc                   	int3
503957:	cc                   	int3
503958:	cc                   	int3
503959:	cc                   	int3
50395a:	cc                   	int3
50395b:	cc                   	int3
50395c:	cc                   	int3
50395d:	cc                   	int3
50395e:	cc                   	int3
50395f:	cc                   	int3
503960:	83 7c 24 08 00       	cmpl   $0x0,0x8(%esp)
503965:	8b 44 24 04          	mov    0x4(%esp),%eax
503969:	8b 50 18             	mov    0x18(%eax),%edx
50396c:	75 3b                	jne    0x5039a9
50396e:	8b 40 0c             	mov    0xc(%eax),%eax
503971:	8b 00                	mov    (%eax),%eax
503973:	3d 0a 04 00 00       	cmp    $0x40a,%eax
503978:	74 20                	je     0x50399a
50397a:	3d 3f 04 00 00       	cmp    $0x43f,%eax
50397f:	74 19                	je     0x50399a
503981:	33 c9                	xor    %ecx,%ecx
503983:	3d 0b 04 00 00       	cmp    $0x40b,%eax
503988:	8b 44 24 0c          	mov    0xc(%esp),%eax
50398c:	0f 95 c1             	setne  %cl
50398f:	83 c1 38             	add    $0x38,%ecx
503992:	89 08                	mov    %ecx,(%eax)
503994:	b8 01 00 00 00       	mov    $0x1,%eax
503999:	c3                   	ret
50399a:	8b 44 24 0c          	mov    0xc(%esp),%eax
50399e:	b9 20 00 00 00       	mov    $0x20,%ecx
5039a3:	89 08                	mov    %ecx,(%eax)
5039a5:	8d 41 e1             	lea    -0x1f(%ecx),%eax
5039a8:	c3                   	ret
5039a9:	57                   	push   %edi
5039aa:	85 d2                	test   %edx,%edx
5039ac:	74 70                	je     0x503a1e
5039ae:	83 7a 3c 00          	cmpl   $0x0,0x3c(%edx)
5039b2:	74 6a                	je     0x503a1e
5039b4:	8b 40 0c             	mov    0xc(%eax),%eax
5039b7:	8b 00                	mov    (%eax),%eax
5039b9:	3d 0a 04 00 00       	cmp    $0x40a,%eax
5039be:	74 16                	je     0x5039d6
5039c0:	3d 3f 04 00 00       	cmp    $0x43f,%eax
5039c5:	74 0f                	je     0x5039d6
5039c7:	33 c9                	xor    %ecx,%ecx
5039c9:	3d 0b 04 00 00       	cmp    $0x40b,%eax
5039ce:	0f 95 c1             	setne  %cl
5039d1:	83 c1 38             	add    $0x38,%ecx
5039d4:	eb 05                	jmp    0x5039db
5039d6:	b9 20 00 00 00       	mov    $0x20,%ecx
5039db:	8b 7c 24 10          	mov    0x10(%esp),%edi
5039df:	39 0f                	cmp    %ecx,(%edi)
5039e1:	72 3b                	jb     0x503a1e
5039e3:	3d 0a 04 00 00       	cmp    $0x40a,%eax
5039e8:	74 16                	je     0x503a00
5039ea:	3d 3f 04 00 00       	cmp    $0x43f,%eax
5039ef:	74 0f                	je     0x503a00
5039f1:	33 c9                	xor    %ecx,%ecx
5039f3:	3d 0b 04 00 00       	cmp    $0x40b,%eax
5039f8:	0f 95 c1             	setne  %cl
5039fb:	83 c1 38             	add    $0x38,%ecx
5039fe:	eb 05                	jmp    0x503a05
503a00:	b9 20 00 00 00       	mov    $0x20,%ecx
503a05:	51                   	push   %ecx
503a06:	89 0f                	mov    %ecx,(%edi)
503a08:	ff 72 3c             	push   0x3c(%edx)
503a0b:	ff 74 24 14          	push   0x14(%esp)
503a0f:	e8 bc f3 0c 00       	call   0x5d2dd0
503a14:	83 c4 0c             	add    $0xc,%esp
503a17:	b8 01 00 00 00       	mov    $0x1,%eax
503a1c:	5f                   	pop    %edi
503a1d:	c3                   	ret
503a1e:	33 c0                	xor    %eax,%eax
503a20:	5f                   	pop    %edi
503a21:	c3                   	ret
503a22:	cc                   	int3
503a23:	cc                   	int3
503a24:	cc                   	int3
503a25:	cc                   	int3
503a26:	cc                   	int3
503a27:	cc                   	int3
503a28:	cc                   	int3
503a29:	cc                   	int3
503a2a:	cc                   	int3
503a2b:	cc                   	int3
503a2c:	cc                   	int3
503a2d:	cc                   	int3
503a2e:	cc                   	int3
503a2f:	cc                   	int3
503a30:	83 7c 24 08 00       	cmpl   $0x0,0x8(%esp)
503a35:	8b 44 24 04          	mov    0x4(%esp),%eax
503a39:	8b 50 18             	mov    0x18(%eax),%edx
503a3c:	75 3b                	jne    0x503a79
503a3e:	8b 40 0c             	mov    0xc(%eax),%eax
503a41:	8b 00                	mov    (%eax),%eax
503a43:	3d 0a 04 00 00       	cmp    $0x40a,%eax
503a48:	74 20                	je     0x503a6a
503a4a:	3d 3f 04 00 00       	cmp    $0x43f,%eax
503a4f:	74 19                	je     0x503a6a
503a51:	33 c9                	xor    %ecx,%ecx
503a53:	3d 0b 04 00 00       	cmp    $0x40b,%eax
503a58:	8b 44 24 0c          	mov    0xc(%esp),%eax
503a5c:	0f 95 c1             	setne  %cl
503a5f:	83 c1 38             	add    $0x38,%ecx
503a62:	89 08                	mov    %ecx,(%eax)
503a64:	b8 01 00 00 00       	mov    $0x1,%eax
503a69:	c3                   	ret
503a6a:	8b 44 24 0c          	mov    0xc(%esp),%eax
503a6e:	b9 20 00 00 00       	mov    $0x20,%ecx
503a73:	89 08                	mov    %ecx,(%eax)
503a75:	8d 41 e1             	lea    -0x1f(%ecx),%eax
503a78:	c3                   	ret
503a79:	57                   	push   %edi
503a7a:	85 d2                	test   %edx,%edx
503a7c:	74 68                	je     0x503ae6
503a7e:	8b 40 0c             	mov    0xc(%eax),%eax
503a81:	8b 00                	mov    (%eax),%eax
503a83:	3d 0a 04 00 00       	cmp    $0x40a,%eax
503a88:	74 16                	je     0x503aa0
503a8a:	3d 3f 04 00 00       	cmp    $0x43f,%eax
503a8f:	74 0f                	je     0x503aa0
503a91:	33 c9                	xor    %ecx,%ecx
503a93:	3d 0b 04 00 00       	cmp    $0x40b,%eax
503a98:	0f 95 c1             	setne  %cl
503a9b:	83 c1 38             	add    $0x38,%ecx
503a9e:	eb 05                	jmp    0x503aa5
503aa0:	b9 20 00 00 00       	mov    $0x20,%ecx
503aa5:	8b 7c 24 10          	mov    0x10(%esp),%edi
503aa9:	39 0f                	cmp    %ecx,(%edi)
503aab:	72 39                	jb     0x503ae6
503aad:	3d 0a 04 00 00       	cmp    $0x40a,%eax
503ab2:	74 16                	je     0x503aca
503ab4:	3d 3f 04 00 00       	cmp    $0x43f,%eax
503ab9:	74 0f                	je     0x503aca
503abb:	33 c9                	xor    %ecx,%ecx
503abd:	3d 0b 04 00 00       	cmp    $0x40b,%eax
503ac2:	0f 95 c1             	setne  %cl
503ac5:	83 c1 38             	add    $0x38,%ecx
503ac8:	eb 05                	jmp    0x503acf
503aca:	b9 20 00 00 00       	mov    $0x20,%ecx
503acf:	51                   	push   %ecx
503ad0:	52                   	push   %edx
503ad1:	ff 74 24 14          	push   0x14(%esp)
503ad5:	89 0f                	mov    %ecx,(%edi)
503ad7:	e8 f4 f2 0c 00       	call   0x5d2dd0
503adc:	83 c4 0c             	add    $0xc,%esp
503adf:	b8 01 00 00 00       	mov    $0x1,%eax
503ae4:	5f                   	pop    %edi
503ae5:	c3                   	ret
503ae6:	33 c0                	xor    %eax,%eax
503ae8:	5f                   	pop    %edi
503ae9:	c3                   	ret
503aea:	cc                   	int3
503aeb:	cc                   	int3
503aec:	cc                   	int3
503aed:	cc                   	int3
503aee:	cc                   	int3