4018a1:	52                   	push   %edx
4018a2:	56                   	push   %esi
4018a3:	ff 15 98 d1 40 00    	call   *0x40d198
4018a9:	56                   	push   %esi
4018aa:	ff 15 9c d1 40 00    	call   *0x40d19c
4018b0:	6a 03                	push   $0x3
4018b2:	6a 00                	push   $0x0
4018b4:	6a 00                	push   $0x0
4018b6:	6a 00                	push   $0x0
4018b8:	6a 00                	push   $0x0
4018ba:	6a ff                	push   $0xffffffff
4018bc:	56                   	push   %esi
4018bd:	ff 15 a0 d1 40 00    	call   *0x40d1a0
4018c3:	5f                   	pop    %edi
4018c4:	b8 01 00 00 00       	mov    $0x1,%eax
4018c9:	5e                   	pop    %esi
4018ca:	c3                   	ret
4018cb:	90                   	nop
4018cc:	90                   	nop
4018cd:	90                   	nop
4018ce:	90                   	nop
4018cf:	90                   	nop
4018d0:	8b 44 24 08          	mov    0x8(%esp),%eax
4018d4:	83 ec 50             	sub    $0x50,%esp
4018d7:	83 f8 0f             	cmp    $0xf,%eax
4018da:	53                   	push   %ebx
4018db:	55                   	push   %ebp
4018dc:	56                   	push   %esi
4018dd:	57                   	push   %edi
4018de:	0f 87 54 02 00 00    	ja     0x401b38
4018e4:	0f 84 1d 02 00 00    	je     0x401b07
4018ea:	8d 48 ff             	lea    -0x1(%eax),%ecx
4018ed:	83 f9 07             	cmp    $0x7,%ecx
4018f0:	0f 87 38 09 00 00    	ja     0x40222e
4018f6:	ff 24 8d 8c 23 40 00 	jmp    *0x40238c(,%ecx,4)
4018fd:	8b 74 24 64          	mov    0x64(%esp),%esi
401901:	56                   	push   %esi
401902:	ff 15 60 d1 40 00    	call   *0x40d160
401908:	50                   	push   %eax
401909:	a3 6c 12 41 00       	mov    %eax,0x41126c
40190e:	ff 15 1c d0 40 00    	call   *0x40d01c
401914:	8b 0d 74 12 41 00    	mov    0x411274,%ecx
40191a:	8b 15 6c 12 41 00    	mov    0x41126c,%edx
401920:	a3 78 12 41 00       	mov    %eax,0x411278
401925:	a1 70 12 41 00       	mov    0x411270,%eax
40192a:	50                   	push   %eax
40192b:	51                   	push   %ecx
40192c:	52                   	push   %edx
40192d:	ff 15 2c d0 40 00    	call   *0x40d02c
401933:	8b 3d 90 d1 40 00    	mov    0x40d190,%edi
401939:	6a 05                	push   $0x5
40193b:	a3 7c 12 41 00       	mov    %eax,0x41127c
401940:	c7 05 60 12 41 00 00 	movl   $0x0,0x411260
401947:	00 00 00
40194a:	ff d7                	call   *%edi
40194c:	6a 06                	push   $0x6
40194e:	a3 5c 12 41 00       	mov    %eax,0x41125c
401953:	ff d7                	call   *%edi
401955:	89 35 4c 12 41 00    	mov    %esi,0x41124c
40195b:	5f                   	pop    %edi
40195c:	5e                   	pop    %esi
40195d:	a3 58 12 41 00       	mov    %eax,0x411258
401962:	5d                   	pop    %ebp
401963:	b8 01 00 00 00       	mov    $0x1,%eax
401968:	5b                   	pop    %ebx
401969:	83 c4 50             	add    $0x50,%esp
40196c:	c2 10 00             	ret    $0x10
40196f:	a1 60 12 41 00       	mov    0x411260,%eax
401974:	8b 74 24 64          	mov    0x64(%esp),%esi
401978:	83 c0 05             	add    $0x5,%eax
40197b:	50                   	push   %eax
40197c:	68 2c 01 00 00       	push   $0x12c
401981:	6a 00                	push   $0x0
401983:	6a 00                	push   $0x0
401985:	6a 00                	push   $0x0
401987:	6a 00                	push   $0x0
401989:	56                   	push   %esi
40198a:	e8 a1 f9 ff ff       	call   0x401330
40198f:	8b 0d 64 13 41 00    	mov    0x411364,%ecx
401995:	6a 01                	push   $0x1
401997:	51                   	push   %ecx
401998:	56                   	push   %esi
401999:	e8 72 fb ff ff       	call   0x401510
40199e:	83 c4 28             	add    $0x28,%esp
4019a1:	33 c0                	xor    %eax,%eax
4019a3:	5f                   	pop    %edi
4019a4:	5e                   	pop    %esi
4019a5:	5d                   	pop    %ebp
4019a6:	5b                   	pop    %ebx
4019a7:	83 c4 50             	add    $0x50,%esp
4019aa:	c2 10 00             	ret    $0x10
4019ad:	8b 15 60 12 41 00    	mov    0x411260,%edx
4019b3:	8b 74 24 64          	mov    0x64(%esp),%esi
4019b7:	83 c2 05             	add    $0x5,%edx
4019ba:	52                   	push   %edx
4019bb:	68 2c 01 00 00       	push   $0x12c
4019c0:	6a 00                	push   $0x0
4019c2:	6a 00                	push   $0x0
4019c4:	6a 00                	push   $0x0
4019c6:	6a 00                	push   $0x0
4019c8:	56                   	push   %esi
4019c9:	e8 62 f9 ff ff       	call   0x401330
4019ce:	a1 64 13 41 00       	mov    0x411364,%eax
4019d3:	6a 01                	push   $0x1
4019d5:	50                   	push   %eax
4019d6:	56                   	push   %esi
4019d7:	e8 34 fb ff ff       	call   0x401510
4019dc:	83 c4 28             	add    $0x28,%esp
4019df:	33 c0                	xor    %eax,%eax
4019e1:	5f                   	pop    %edi
4019e2:	5e                   	pop    %esi
4019e3:	5d                   	pop    %ebp
4019e4:	5b                   	pop    %ebx
4019e5:	83 c4 50             	add    $0x50,%esp
4019e8:	c2 10 00             	ret    $0x10
4019eb:	8b 44 24 70          	mov    0x70(%esp),%eax
4019ef:	8b 3d 64 12 41 00    	mov    0x411264,%edi
4019f5:	8b 0d 60 12 41 00    	mov    0x411260,%ecx
4019fb:	8b 74 24 64          	mov    0x64(%esp),%esi
4019ff:	66 8b d0             	mov    %ax,%dx
401a02:	c1 e8 10             	shr    $0x10,%eax
401a05:	3b f9                	cmp    %ecx,%edi
401a07:	66 89 15 56 12 41 00 	mov    %dx,0x411256
401a0e:	66 a3 54 12 41 00    	mov    %ax,0x411254
401a14:	7d 3f                	jge    0x401a55
401a16:	25 ff ff 00 00       	and    $0xffff,%eax
401a1b:	3b f8                	cmp    %eax,%edi
401a1d:	7d 36                	jge    0x401a55
401a1f:	83 c1 05             	add    $0x5,%ecx
401a22:	51                   	push   %ecx
401a23:	68 2c 01 00 00       	push   $0x12c
401a28:	6a 00                	push   $0x0
401a2a:	6a 00                	push   $0x0
401a2c:	6a 00                	push   $0x0
401a2e:	6a 00                	push   $0x0
401a30:	56                   	push   %esi
401a31:	e8 fa f8 ff ff       	call   0x401330
401a36:	8b 0d 64 13 41 00    	mov    0x411364,%ecx
401a3c:	6a 01                	push   $0x1
401a3e:	51                   	push   %ecx
401a3f:	56                   	push   %esi
401a40:	e8 cb fa ff ff       	call   0x401510
401a45:	66 8b 15 56 12 41 00 	mov    0x411256,%dx
401a4c:	8b 3d 64 12 41 00    	mov    0x411264,%edi
401a52:	83 c4 28             	add    $0x28,%esp
401a55:	8b 0d 5c 12 41 00    	mov    0x41125c,%ecx
401a5b:	a1 68 12 41 00       	mov    0x411268,%eax
401a60:	8d 59 03             	lea    0x3(%ecx),%ebx
401a63:	3b c3                	cmp    %ebx,%eax
401a65:	7f 07                	jg     0x401a6e
401a67:	0f bf da             	movswl %dx,%ebx
401a6a:	3b d8                	cmp    %eax,%ebx
401a6c:	7f 36                	jg     0x401aa4
401a6e:	8b d8                	mov    %eax,%ebx
401a70:	2b d9                	sub    %ecx,%ebx
401a72:	8b 0d 74 12 41 00    	mov    0x411274,%ecx
401a78:	81 c3 2c 01 00 00    	add    $0x12c,%ebx
401a7e:	3b d9                	cmp    %ecx,%ebx
401a80:	7c 07                	jl     0x401a89
401a82:	0f bf ca             	movswl %dx,%ecx
401a85:	3b c8                	cmp    %eax,%ecx
401a87:	7c 1b                	jl     0x401aa4
401a89:	8b 0d 70 12 41 00    	mov    0x411270,%ecx
401a8f:	8d 87 b4 00 00 00    	lea    0xb4(%edi),%eax
401a95:	3b c1                	cmp    %ecx,%eax
401a97:	7c 1b                	jl     0x401ab4
401a99:	0f bf 0d 54 12 41 00 	movswl 0x411254,%ecx
401aa0:	3b cf                	cmp    %edi,%ecx
401aa2:	7d 10                	jge    0x401ab4
401aa4:	56                   	push   %esi
401aa5:	e8 96 fb ff ff       	call   0x401640
401aaa:	66 8b 15 56 12 41 00 	mov    0x411256,%dx
401ab1:	83 c4 04             	add    $0x4,%esp
401ab4:	0f bf 05 54 12 41 00 	movswl 0x411254,%eax
401abb:	0f bf d2             	movswl %dx,%edx
401abe:	5f                   	pop    %edi
401abf:	5e                   	pop    %esi
401ac0:	a3 64 12 41 00       	mov    %eax,0x411264
401ac5:	5d                   	pop    %ebp
401ac6:	89 15 68 12 41 00    	mov    %edx,0x411268
401acc:	33 c0                	xor    %eax,%eax
401ace:	5b                   	pop    %ebx
401acf:	83 c4 50             	add    $0x50,%esp
401ad2:	c2 10 00             	ret    $0x10
401ad5:	8b 0d 6c 12 41 00    	mov    0x41126c,%ecx
401adb:	8b 54 24 64          	mov    0x64(%esp),%edx
401adf:	51                   	push   %ecx
401ae0:	52                   	push   %edx
401ae1:	ff 15 64 d1 40 00    	call   *0x40d164
401ae7:	a1 78 12 41 00       	mov    0x411278,%eax
401aec:	50                   	push   %eax
401aed:	ff 15 28 d0 40 00    	call   *0x40d028
401af3:	6a 00                	push   $0x0
401af5:	ff 15 68 d1 40 00    	call   *0x40d168
401afb:	5f                   	pop    %edi
401afc:	5e                   	pop    %esi
401afd:	5d                   	pop    %ebp
401afe:	33 c0                	xor    %eax,%eax
401b00:	5b                   	pop    %ebx
401b01:	83 c4 50             	add    $0x50,%esp
401b04:	c2 10 00             	ret    $0x10
401b07:	8b 74 24 64          	mov    0x64(%esp),%esi
401b0b:	8d 4c 24 20          	lea    0x20(%esp),%ecx
401b0f:	51                   	push   %ecx
401b10:	56                   	push   %esi
401b11:	ff 15 6c d1 40 00    	call   *0x40d16c
401b17:	56                   	push   %esi
401b18:	e8 23 fb ff ff       	call   0x401640
401b1d:	83 c4 04             	add    $0x4,%esp
401b20:	8d 54 24 20          	lea    0x20(%esp),%edx
401b24:	52                   	push   %edx
401b25:	56                   	push   %esi
401b26:	ff 15 70 d1 40 00    	call   *0x40d170
401b2c:	5f                   	pop    %edi
401b2d:	5e                   	pop    %esi
401b2e:	5d                   	pop    %ebp
401b2f:	33 c0                	xor    %eax,%eax
401b31:	5b                   	pop    %ebx
401b32:	83 c4 50             	add    $0x50,%esp
401b35:	c2 10 00             	ret    $0x10
401b38:	3d 01 02 00 00       	cmp    $0x201,%eax
401b3d:	0f 87 dd 06 00 00    	ja     0x402220
401b43:	0f 84 d4 04 00 00    	je     0x40201d
401b49:	3d 11 01 00 00       	cmp    $0x111,%eax
401b4e:	0f 84 26 03 00 00    	je     0x401e7a
401b54:	3d 00 02 00 00       	cmp    $0x200,%eax
401b59:	0f 85 cf 06 00 00    	jne    0x40222e
401b5f:	8b 4c 24 70          	mov    0x70(%esp),%ecx
401b63:	8b 54 24 6c          	mov    0x6c(%esp),%edx
401b67:	0f bf 2d 52 12 41 00 	movswl 0x411252,%ebp
401b6e:	0f bf 35 50 12 41 00 	movswl 0x411250,%esi
401b75:	8b 1d 60 12 41 00    	mov    0x411260,%ebx
401b7b:	8b c1                	mov    %ecx,%eax
401b7d:	f7 d2                	not    %edx
401b7f:	c1 e8 10             	shr    $0x10,%eax
401b82:	83 e2 01             	and    $0x1,%edx
401b85:	83 fd 0c             	cmp    $0xc,%ebp
401b88:	66 89 0d 56 12 41 00 	mov    %cx,0x411256
401b8f:	66 a3 54 12 41 00    	mov    %ax,0x411254
401b95:	89 15 a0 00 41 00    	mov    %edx,0x4100a0
401b9b:	0f 8c cf 00 00 00    	jl     0x401c70
401ba1:	81 fd 1a 01 00 00    	cmp    $0x11a,%ebp
401ba7:	0f 8f c3 00 00 00    	jg     0x401c70
401bad:	bf 7a 00 00 00       	mov    $0x7a,%edi
401bb2:	2b fb                	sub    %ebx,%edi
401bb4:	3b f7                	cmp    %edi,%esi
401bb6:	0f 8c b4 00 00 00    	jl     0x401c70
401bbc:	bf 8c 00 00 00       	mov    $0x8c,%edi
401bc1:	2b fb                	sub    %ebx,%edi
401bc3:	3b f7                	cmp    %edi,%esi
401bc5:	0f 8f a5 00 00 00    	jg     0x401c70
401bcb:	85 d2                	test   %edx,%edx
401bcd:	0f 85 9d 00 00 00    	jne    0x401c70
401bd3:	66 83 f9 0c          	cmp    $0xc,%cx
401bd7:	7d 3c                	jge    0x401c15
401bd9:	a1 64 13 41 00       	mov    0x411364,%eax
401bde:	85 c0                	test   %eax,%eax
401be0:	0f 8e 99 07 00 00    	jle    0x40237f
401be6:	8b 74 24 64          	mov    0x64(%esp),%esi
401bea:	52                   	push   %edx
401beb:	50                   	push   %eax
401bec:	56                   	push   %esi
401bed:	e8 1e f9 ff ff       	call   0x401510
401bf2:	6a 01                	push   $0x1
401bf4:	6a 00                	push   $0x0
401bf6:	56                   	push   %esi
401bf7:	c7 05 64 13 41 00 00 	movl   $0x0,0x411364
401bfe:	00 00 00
401c01:	e8 0a f9 ff ff       	call   0x401510
401c06:	83 c4 18             	add    $0x18,%esp
401c09:	33 c0                	xor    %eax,%eax
401c0b:	5f                   	pop    %edi
401c0c:	5e                   	pop    %esi
401c0d:	5d                   	pop    %ebp
401c0e:	5b                   	pop    %ebx
401c0f:	83 c4 50             	add    $0x50,%esp
401c12:	c2 10 00             	ret    $0x10
401c15:	66 81 f9 1a 01       	cmp    $0x11a,%cx
401c1a:	7e 43                	jle    0x401c5f
401c1c:	a1 64 13 41 00       	mov    0x411364,%eax
401c21:	3d 0e 01 00 00       	cmp    $0x10e,%eax
401c26:	0f 8d 53 07 00 00    	jge    0x40237f
401c2c:	8b 74 24 64          	mov    0x64(%esp),%esi
401c30:	6a 00                	push   $0x0
401c32:	50                   	push   %eax
401c33:	56                   	push   %esi
401c34:	e8 d7 f8 ff ff       	call   0x401510
401c39:	6a 01                	push   $0x1
401c3b:	68 0e 01 00 00       	push   $0x10e
401c40:	56                   	push   %esi
401c41:	c7 05 64 13 41 00 0e 	movl   $0x10e,0x411364
401c48:	01 00 00
401c4b:	e8 c0 f8 ff ff       	call   0x401510
401c50:	83 c4 18             	add    $0x18,%esp
401c53:	33 c0                	xor    %eax,%eax
401c55:	5f                   	pop    %edi
401c56:	5e                   	pop    %esi
401c57:	5d                   	pop    %ebp
401c58:	5b                   	pop    %ebx
401c59:	83 c4 50             	add    $0x50,%esp
401c5c:	c2 10 00             	ret    $0x10
401c5f:	a1 64 13 41 00       	mov    0x411364,%eax
401c64:	8b 74 24 64          	mov    0x64(%esp),%esi
401c68:	6a 00                	push   $0x0
401c6a:	50                   	push   %eax
401c6b:	e9 6d 05 00 00       	jmp    0x4021dd
401c70:	8b 35 5c 13 41 00    	mov    0x41135c,%esi
401c76:	85 f6                	test   %esi,%esi
401c78:	74 51                	je     0x401ccb
401c7a:	0f bf f1             	movswl %cx,%esi
401c7d:	81 fe b2 00 00 00    	cmp    $0xb2,%esi
401c83:	0f bf f8             	movswl %ax,%edi
401c86:	7c 1e                	jl     0x401ca6
401c88:	81 fe 11 01 00 00    	cmp    $0x111,%esi
401c8e:	7f 16                	jg     0x401ca6
401c90:	be 2d 00 00 00       	mov    $0x2d,%esi
401c95:	2b f3                	sub    %ebx,%esi
401c97:	3b fe                	cmp    %esi,%edi
401c99:	7e 0b                	jle    0x401ca6
401c9b:	be 47 00 00 00       	mov    $0x47,%esi
401ca0:	2b f3                	sub    %ebx,%esi
401ca2:	3b fe                	cmp    %esi,%edi
401ca4:	7c 25                	jl     0x401ccb
401ca6:	8b 4c 24 64          	mov    0x64(%esp),%ecx
401caa:	6a 00                	push   $0x0
401cac:	51                   	push   %ecx
401cad:	c7 05 5c 13 41 00 00 	movl   $0x0,0x41135c
401cb4:	00 00 00
401cb7:	e8 14 f8 ff ff       	call   0x4014d0
401cbc:	83 c4 08             	add    $0x8,%esp
401cbf:	33 c0                	xor    %eax,%eax
401cc1:	5f                   	pop    %edi
401cc2:	5e                   	pop    %esi
401cc3:	5d                   	pop    %ebp
401cc4:	5b                   	pop    %ebx
401cc5:	83 c4 50             	add    $0x50,%esp
401cc8:	c2 10 00             	ret    $0x10
401ccb:	8b 35 60 13 41 00    	mov    0x411360,%esi
401cd1:	85 f6                	test   %esi,%esi
401cd3:	74 51                	je     0x401d26
401cd5:	0f bf f1             	movswl %cx,%esi
401cd8:	81 fe b2 00 00 00    	cmp    $0xb2,%esi
401cde:	0f bf f8             	movswl %ax,%edi
401ce1:	7c 1e                	jl     0x401d01
401ce3:	81 fe 11 01 00 00    	cmp    $0x111,%esi
401ce9:	7f 16                	jg     0x401d01
401ceb:	be 51 00 00 00       	mov    $0x51,%esi
401cf0:	2b f3                	sub    %ebx,%esi
401cf2:	3b fe                	cmp    %esi,%edi
401cf4:	7e 0b                	jle    0x401d01